为什么需要<video>或<audio>?

Joe*_*oey 9 audio video html5

HTML5带来或将带来<video><audio>标签等.自从我听说过它们之后,阅读之后我们为什么会有这样的img元素呢?特别是Jay C. Weber从1993年回来的消息我想知道:为什么这么做?

HTML已经有了一段时间的通用媒体包含方法.它支持回退到其他格式和文本,如果作者希望这些格式和文本现在不必要地复制在两个更特殊用途的标签中,每个标签用于单一类型的媒体.

对我来说,无论是<video><audio>只是<object>S IN变相-还是我失去了一些东西真的很重要的位置,无论他们的支持和<object>不?

我的困惑源于以下问题:给出一个代码片段:

<video id="movie" width="320" height="240" preload controls>
  <source src="pr6.mp4" />
  <source src="pr6.webm" type='video/webm; codecs="vp8, vorbis"' />
  <source src="pr6.ogv" type='video/ogg; codecs="theora, vorbis"' />
  <object>
     ... fallback to Flash object
  </object>
</video>
Run Code Online (Sandbox Code Playgroud)

它不可能写得类似

<object width="320" height="240" data='pr6.mp4'>
  <object width="320" height="240" data='pr6.webm' type='video/webm; codecs="vp8, vorbis"'>
    <object width="320" height="240" data="pr6.ogv" type='video/ogg; codecs="theora, vorbis"'>
      <object>
        ... fallback to Flash object
      </object>
    </object>
  </object>
</object>
Run Code Online (Sandbox Code Playgroud)

preload并且controls可以作为<param>元素给出,我现在还不太确定如何处理该id属性.

仍然有什么阻止浏览器供应商只使用正确的MIME类型和编解码器自己呈现视频和音频内容而不是将它们交给插件吗?

alx*_*lxx 4

<video>并且<audio>标签不是<object>伪装的。请参阅新标签的精彩解释。简而言之,HTML-5 浏览器正在公开其对音频和视频的本机支持。他们将播放他们已知的视频源,或者退回到旧的 Flash,如下所示:

<video id="movie" width="320" height="240" preload controls>
  <source src="pr6.mp4" />
  <source src="pr6.webm" type='video/webm; codecs="vp8, vorbis"' />
  <source src="pr6.ogv" type='video/ogg; codecs="theora, vorbis"' />
  <object>
     ... fallback to Flash object
  </object>
</video>
Run Code Online (Sandbox Code Playgroud)

编辑:MIME 类型可能会说明一切,但只有在您请求文件之后。<object>不利于 HTML 分析和语义。JS 知道 MIME 类型吗?