- HTML5 是 HTML 的最新版本(或者至少即将发布),包含 XHTML 暂时没有的功能
- 使用 MIME 类型 text/html 提供的 XHTML 与 HTML 渲染效果相同
- 将 text/html 转换为 application/xhtml+xml 非常困难,因为它不是 HTML
- XML 与 HTML 不兼容
所以我的问题是,除了标签的使用之外,XHTML 与 HTML 有什么关系?在实际应用中,使用 XHTML 有什么实际意义,还是没有?
所以我的问题是,除了标签的使用之外,XHTML 与 HTML 有什么关系?在实际应用中,使用 XHTML 有什么实际意义,还是没有?
是的,HTML5将拥有一些XHTML目前还没有的功能(甚至是元素/标签)。它还会重新引入一些在XHTML中已被删除的HTML4标签(我想iframe就是其中之一)。
如果您想了解HTML4 / XHTML和HTML5之间的区别,请阅读维基百科关于HTML 5的条目:http://en.wikipedia.org/wiki/HTML_5#Differences_from_HTML_4.01.2FXHTML_1.x
然而,对于渲染的目的,XHTML并不等同于HTML。http://hixie.ch/advocacy/xhtml
XHTML更多地使用XML语法规则而非HTML。它基本上使用HTML的(大部分)元素(“标签”),同时遵循XML更严格的语法和语义。
它并不等同于HTML4以进行渲染。如果您使用XHTML的mime类型 - 因为它是XML - 如果操作不当,您可能会遇到令人讨厌的解析错误:
尽管存在这个问题,使用XHTML可以比HTML4在浏览器之间产生更一致的行为;由于HTML4不够严格,浏览器会尝试解释含糊不清的标记,并且浏览器的开发人员有一定的自由选择如何处理这些模棱两可的情况。这导致了不一致性,但是使用XHTML - 作为XML - 浏览器应该拒绝渲染页面,如果它是含糊不清的。
然而,XHTML可能会导致旧版浏览器出现问题,特别是对于空元素(自闭合标记),例如<br />
;旧版浏览器不知道如何处理/
,可能会认为它是标记名称的一部分,然后你就失去了换行符。
关于Web上的XML与HTML - 好吧,浏览器需要一些基本的固定文档结构来理解文档,也许这不像过去那么重要了:我的意思是,XSLT和CSS可以将文档转换为适合Web浏览器的可呈现输出。然而,一个文档应该具有一些内在的文档式固定结构,对于没有现代Web技术的浏览器来说是有意义的。HTML4允许文档被结构化,以便像lynx这样的基本浏览器可以显示文档 - 毕竟lynx无法渲染CSS和样式元素,如图像。
XHTML5则完全处于另一个层次,可能直接排除了基本浏览器 - 但其固定标签词汇为Web浏览器、Web开发人员和设计师提供了含义。Web浏览器可能需要某些标签才能启用新的花哨功能 - 但词汇本身比将Web页面视为特别制作的XML文档更加优雅。