HTML 5与XHTML 1.0 Transitional?
看起来HTML 5将被Firefox 3.1和其他浏览器支持(部分)。 它增加了对视频和音频作为标签的支持,但这些都是XHTML 1.0 Transitional无法识别的新标签。 如果我在Firefox的未来版本中使用新的HTML 5标记,但是将XDML用于DTD,那么该行为应该是什么? 如果我将HTML 5标记与XHTML 1.0 Trans混合呢?
这变得令人困惑。 他们为什么不把这些标签添加到XHTML中? 我们如何支持XHTML和HTML 5?
HTML 5上的视频:http://www.youtube.com/watch?v = xIxDJof7xxQ
那么,一般来说HTML是SGML,而XHTML是用XML表示的。 因此,创建XHTML与HTML相比具有更多限制(以标记的形式)。 (基于SGML的与基于XML的HTML)
正如维基百科中提到的那样,HTML 5也会有一个XHTML变体(XHTML 5)。
经验法则:你应该总是使用有效的标记。 这也意味着,不应该使用所提到的<video>或<audio>在XHTML 1.0过渡标签,因为这些都不是规范的元素。 如果你确实需要使用这些标记(我很怀疑),那么你应该确保你使用HTML 5 / XHTML 5 DTD以指定您的文档提供DOCTYPE。
在执行给定状态使用HTML 5或XHTML 5(据我所知,该标准甚至没有解决,但是,对吗?)可能会适得其反,因为几乎所有的用户可能无法看到网站呈现correclty反正。
编辑2013:因为最近downvotes的,自该接受的答案不能被删除(由我),我想补充的是HTML5的支持和标准化进程是时下完全不同的,以它是什么,当我五年前写了这个答案。 由于大多数主流浏览器支持HTML5草案的大部分地区,因为很多东西可以固定在旧的浏览器polyfills,我主要使用HTML5现在。
HTML5比XHTML 1.0更容易编写。
您不必手动声明“http://www.w3.org/1999/xhtml”命名空间。
您不必为脚本和样式元素添加类型属性(它们默认为text / javascript和text / css)。
浏览器只是忽略大部分内容,您不必使用长文档类型。 您必须使用<!DOCTYPE html>,这很容易记住。
您没有选择在doctype中包含或不包含dtd uri,并且您没有在过渡和严格之间进行选择。 你只需要一个严格的文档类型来调用完整的标准模式。 这样,您不必担心偶然处于几乎标准模式或怪癖模式。
字符集声明要简单得多。 这只是<meta charset =“utf-8”>。
如果您发现将void元素编写为<name>会令人困惑,如果需要,可以使用<name />。
HTML5在http://validator.nu/上有一个非常好的验证器。 验证器不受不能表达所有规则的蹩脚DTD的约束。
您不必在内联脚本或样式表(在某些情况下)中添加// <