与桌面浏览器不同,移动 Safari 在 iPhone 和 iPad 中呈现 html 时会为音频标签添加空白。为什么是这样?有没有办法在没有不必要的样式设置的情况下避免这种行为?
我的目标是让网站访问者播放一段简短的音频摘录。介绍性文字和播放/暂停按钮必须显示在一行上,元素之间有一个间距。该代码在桌面浏览器中运行良好,但 Mobile Safari(在 iPhone 4S 和 iPad 3 上测试)在音频标签出现在 html 文件中的位置添加了空白(相当于约 30 个字符)。
我隔离了问题,并找到了解决方法。以下是对情况的描述,以及三个带您完成进度的测试页面。最后一个测试文件给出了解决方法。在桌面浏览器和 iPhone/iPad 中查看每个文件以查看行为(和源代码)。
介绍性文本和按钮之间出现空格 - audiotest3
将音频标签移动到文本和按钮之前,这会形成一个新行 - audiotest4
设置包含负上边距的文本和按钮的容器 - audiotest5
答案:将音频样式更改为高度:0 和宽度:0 - audiotest6
这是一个已知的错误,还是我应该使用不同的标记?
它是不同的标记。请参阅上面的答案。