【问题标题】:Embedded YouTube code does not validate嵌入的 YouTube 代码无法验证
【发布时间】:2010-09-20 19:57:55
【问题描述】:

虽然验证我对某些人来说不是什么大问题,但我个人希望尽可能验证我的页面,因为我觉得无论编译器/浏览器/阅读您的代码的人是否理解正确编码都是一个好习惯。

无论如何,我正在为请求将他们的 YouTube 视频嵌入页面的客户构建网站。很简单,我从 YouTube 获取代码并将其扔到页面中。它当然可以工作,但该页面现在无法在 XHTML 1.0 Strict 下验证,这仅仅是因为 YouTube 生成的代码。

不验证的部分是嵌入部分,在 Chrome 中没有此行时它可以正常工作,但在 Firefox/IE 中会中断。如果只是 IE,我只是耸耸肩,因为 IE 像往常一样糟糕,但作为 Firefox 也在这样做,我想知道如何处理这种情况。我可以根据浏览器动态输入内容,因此进行验证,但这似乎很草率。

我是不是在打一场失败的战斗,应该忽略这个页面因为这个 sn-p 而无法验证的事实?

不是实际视频,只是示例代码

<object width="480" height="385">
<param name="movie" value="http://www.youtube.com/v/oHg5SJYRHA0?fs=1&amp;hl=en_US"></param><param name="allowFullScreen" value="true"></param>
<param name="allowscriptaccess" value="always"></param>
<embed src="http://www.youtube.com/v/oHg5SJYRHA0?fs=1&amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed>
</object>

【问题讨论】:

  • 我喜欢你选择的视频 :)

标签: html validation youtube


【解决方案1】:
<object type="application/x-shockwave-flash"
    data="http://www.youtube.com/v/oHg5SJYRHA0?fs=1&amp;hl=en_US"
    width="480" height="385">
  <param name="movie"
      value="http://www.youtube.com/v/oHg5SJYRHA0?fs=1&amp;hl=en_US"/>
  <param name="allowFullScreen" value="true"/>
  <param name="allowscriptaccess" value="always"/>
</object>

这应该适用于 IE、Firefox、Opera、Safari 和 Chrome。

&lt;object&gt;data 属性和movie 参数必须同时存在并且必须具有相同的值。

在 IE 中,这会阻止 SWF 流式传输,例如,显示预加载器,但这对于 YouTube 来说应该不是问题。

有关更多信息以及最后一个问题的解决方法,请参阅Flash Satay: Embedding Flash While Supporting Standards

【讨论】:

    【解决方案2】:

    我认为如果你使用 swfobject 你可以得到它来验证。

    http://code.google.com/p/swfobject/

    【讨论】:

      【解决方案3】:

      &lt;embed&gt; 标签是 HTML5 的新标签,您使用的验证器很可能不是最新的。在严格的 XHTML 1.0 中,所有这些代码都应该很好。

      【讨论】:

      • 我用validator.w3.org,错误不是embed标签无效,而是属性无效。
      【解决方案4】:

      恐怕以上答案仍然会导致 W3C 上的验证失败。这是一个适用于 xhtml strict 的解决方案;

      <object type="application/x-shockwave-flash" data="https://www.youtube.com/v/YourVideoID" width="100%" height="100%"></object>
      

      【讨论】:

        猜你喜欢
        • 2011-05-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-12-30
        • 2012-04-21
        • 1970-01-01
        • 2012-01-30
        • 1970-01-01
        相关资源
        最近更新 更多