Video 为什么需要<;视频>;或<;音频>;?

Video 为什么需要<;视频>;或<;音频>;?,video,html,audio,Video,Html,Audio,HTML5带来或将带来和,我特别想知道:为什么 HTML有一个通用的媒体包含方法已经有相当一段时间了。如果作者愿意,它支持回退到其他格式和文本,这些格式和文本现在不必要地复制到另外两个专用标记中,每个标记用于一种媒体 对我来说,和都是伪装的或者我在这里遗漏了一些真正重要的东西,它们都支持,而却不支持 我的困惑源于以下问题:给出一个这样的片段: <video id="movie" width="320" height="240" preload controls> <sour

HTML5带来或将带来
,我特别想知道:为什么

HTML有一个通用的媒体包含方法已经有相当一段时间了。如果作者愿意,它支持回退到其他格式和文本,这些格式和文本现在不必要地复制到另外两个专用标记中,每个标记用于一种媒体

对我来说,
都是伪装的
或者我在这里遗漏了一些真正重要的东西,它们都支持,而
却不支持

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

<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>

... 回退到Flash对象
难道它就不能写得像

<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>

... 回退到Flash对象
预加载
控件
可以作为
元素提供,我现在不太确定如何处理
id
属性

不过,是否有任何东西阻止浏览器供应商仅使用正确的MIME类型和编解码器呈现视频和音频内容,而不是将其交给插件?

和新标签的
。简而言之,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>

... 回退到Flash对象

编辑:MIME类型可能会告诉你一切,但只有在你请求一个文件之后<代码>
不利于HTML分析和语义。JS知道MIME类型吗?

你可能会问为什么所有的标签都是基本相同的,而所有的标签都是相同的。这正是W3C的想法。世界上的其他人不应该理解这一点——反正他们远远超出了我们凡人的理解范围。

我只想指出,使用视频/音频元素还可以获得一些细节,比如获得免费的控件来拖动、暂停/播放,能够指定循环和播放速率等属性


您还可以使用javascript获取该元素的句柄并访问该元素的API。

没有任何东西表明
不能表示本机浏览器实现。例如,当通过
嵌入图像时,也不会提示您下载插件。好吧,如果我没有弄错,唯一的区别是明确支持编解码器,可能还有脚本接口(尽管我不完全确定
是否会阻止后者).没有任何规定必须在内部实施。。。即使是这样,这也是浏览器实现的细节。正如我所看到的,最大的区别是标准化和简化语法(不需要记住每个浏览器的guid或任何特定于对象的东西)。我用(希望)几乎正确的
嵌套代码来编辑这个问题。我可以看到简化的语法。但考虑到HTML在大多数情况下的外观(以及它在大多数情况下是生成的,而不是手写的),我认为这不是一个特别有力的论点。从我从规范中收集到的信息来看,如果您以特定的非本机方式呈现内容,那么您只需要使用guid。HTML清晰性是一件好事(tm),对W3C:)来说无疑是非常宝贵的。此外,您还失去了页面语义。假设您需要在页面上查找所有视频和/或音频?在这种情况下,物体是痛苦的。哦,全能的随机下降投票者。祝福我你的想法,为什么你认为这个问题不清楚或难以理解。我知道,我对语言和技术的掌握很差。尽管如此,我还是在努力用文字来表达自己的想法。但是你没有给我任何一个。
div
p
是两个不同层次的文本结构,而
strong
em
是不同层次的强调<代码>b
i
已被CSS淘汰。他们大多是遗留的影响,但我认为具体目标媒体包含一个非常不同的主题,实际上。特别是考虑到已经存在的一般解决方案(你在这里提到的任何元素都不是这种情况)。@Joey-所有这些元素在功能上都是相同的。唯一的区别是它们应用了不同的样式,但是通过一点CSS,您可以使其中一个看起来像另一个。在
的情况下,您甚至不必这样做。用两个不同的名字是一样的。发明html是为了让html标记看起来更漂亮。好吧,它们在语义上是不同的——请注意,视力敏锐的浏览者、完美的浏览器和广为接受的排版规则并不是html的唯一消费者。同意,从这个角度来看,区分“媒体,一般”(
object
)、“媒体,图像”(
img
)、“媒体,音频”(
audio
)和“媒体,视频”(
video
)。然而,这是MIME类型已经可以单独分辨出来的。它不是偶然以
图像/
音频/
视频/
开头的……那又怎样?您可以从
对象
获得相同的结果;标记只是不同而已。但谢谢你在这里重申我的观点:-)