更新:这个问题不再有效。请参阅下面的评论。
- YouTube 嵌入现在是使用 iframe 完成的。
- HTML5 引入了 seamless属性,这不仅会影响呈现,而且会与主机页面的集成更加紧密。 (它不应不作为单独的文档向屏幕阅读器公布。)
- HTML5 引入了 sandbox限制 iframe 从而提高安全性的属性。
在浏览器完全支持这两个属性的世界中,嵌入 YouTube 视频时,它们对页面有好处还是以任何方式产生不利影响? (是的,问题的后半部分主要是关于无缝。)
我正在考虑推荐我的学生始终对 YouTube 视频使用这 2 个属性,并在浏览器支持可用时自动受益。
最佳答案
我将重点讨论 sandbox
属性。
要在沙盒中播放 YouTube 视频,您需要执行以下操作:
- 添加
sandbox="allow-scripts allow-same-origin"
- 将
?html5=1
添加到视频网址
#1 的一个问题是 Flash 不会被加载;是否需要 Flash 取决于一些因素,例如最终用户的浏览器、他们的 YouTube 设置,或者视频根本无法作为 HTML5 视频使用(#2 使情况变得更糟)。
#1 的另一个(更严重的)问题是 allow-scripts
和 allow-same-origin
的组合有效地消除了您本来可以享受的任何安全优势.
结论
忘记为 YouTube 视频嵌入使用 sandbox
属性。
进一步阅读
关于html - 对 YouTube iframe 使用无缝和/或沙盒属性有什么意义吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10324159/