XHTML和HTML之间的主要区别是什么?

时间:2008-10-12 18:49:58

标签: html xhtml

XHTML和HTML之间的主要区别是什么?你认为哪一个更好,为什么?大多数浏览器都支持这两种吗?

8 个答案:

答案 0 :(得分:18)

XHTML 基于 XML ,因此要求源格式良好。 由于XHTML比HTML更严格,因此渲染引擎需要较少的预处理。

XHTML应该作为application / xhtml + xml提供,以便您利用这些优势,否则XHTML将被视为普通的HTML。由于Internet Explorer无法处理XHTML,因此将其作为“application / xhtml + xml”提供在网络上并不常见。

答案 1 :(得分:18)

这可能是我读过的关于每个人的差异和相对优点的最佳文章:

HTML Versus XHTML

我们应该使用哪种,HTML或XHTML,为什么?

WHATWG wiki还有一个相当技术性的比较。

答案 2 :(得分:9)

可扩展超文本标记语言(XHTML)是一种标记语言,具有与HTML相同的表达深度,但也符合XML语法。

XHTML是“HTML 4的现代版本”。

更多信息:wikipediaW3C

答案 3 :(得分:9)

不同之处在于XHTML基于XML而HTML基于SGML。

浏览器将SGML解析器用于使用内容类型text/html发送的内容和用于application/xhtml+xml的XML解析器。

使用SGML解析器时,即使文件中遇到语法错误,浏览器也会继续解析。这就是为什么很多人认为他们在向浏览器发送外观文件时正在做XHTML的原因。这实际上是一个错误,因为这会在浏览器中触发许多解析错误并减慢渲染过程。

使用XML解析器时,浏览器将在遇到语法错误时停止解析并显示XML错误。这当然仅适用于具有HTML内容的XML解析器的浏览器,而对于仅下载文件而不显示该文件的Internet Explorer则不然。

那你该怎么做?

如果需要语法检查和XML强加的严格结构,则应使用XHTML。您应该记住,您必须使用错误的内容类型将XHTML内容发送到Internet Explorer,并隐含所有问题。您还应该记住,只要文件中包含无效内容,您的文档就会中断,因此您必须非常小心地清理任何用户输入。

您应该将HTML用于其他任何事情。 HTML只是工作,今天是一个非常支持的标准。即使是下一个标准HTML 5也定义了基于SGML的语法,因此这将持续。

请记住,无论您选择何种格式,验证输出始终是检测语法错误的好主意。

答案 4 :(得分:3)

这不是关于哪一个更好; HTML仍在继续发展,HTML5正在发展中(多年来,虽然:))并提供了一些新元素,以便更轻松地管理网页中的多媒体等新技术。

另一方面,XHTML是关于XML的严格性,我们应该说保持干净。如果你保持HTML文档的格式良好(关闭每个打开的元素,保持嵌套在树形中),你就可以充分利用XHTML / XML世界,并且仍然可以使用HTML格式,将文档声明为是HTML,但仍然保持'干净'(格式良好)。我认为我们不应该宣布他们每个人“更好”;他们可以共存。这只是我们以正确的方式做事。

答案 5 :(得分:3)

如前所述,XHTML应该(理论上)是有效的XML。理论上(但不是在实践中)不应该由浏览器呈现不符合标准的XHTML。

使用一个优于另一个很少有优势,所以只要你一直这样做,就写下你个人喜欢的。将成为未来网络标准的HTML5将同时支持XHTML和HTML 4.01风格的标签(之前通过可选的“XML序列化”),而XHTML2看起来就像在水中一样,没有供应商积极参与支持它。

答案 6 :(得分:1)

摘要:使用HTML。

many differences,还有很多聪明的人(知道他们在说什么:D)have already summed up大多数利弊。

答案 7 :(得分:0)

差异的一个例子是break标记。

<br>

是正确的HTML,但在XHTML中,元素需要验证为XML,您必须自行关闭标记:

<br />