我读过的文章指出,HTML是最好的选择,他们直接来自马的嘴(浏览器的实现者!):
> http://webkit.org/blog/68/understanding-html-xml-and-xhtml/
> https://developer.mozilla.org/en/Mozilla_Web_Developer_FAQ
詹姆斯·班奈特(James Bennet)的其他文章提出了另一个观点:如果你不把XHTML作为XML,那么你不需要XHTML,而不是HTML。
> http://www.b-list.org/weblog/2008/jun/18/html/
> http://www.b-list.org/weblog/2008/jun/21/xhtml/
所以我想,如果我想触发标准兼容模式,我应该使用HTML严格验证。但是至少还有最现代的浏览器(除了IE6以外还有其他一切):如果你有有效的XHTML Strict,你仍然会触发标准兼容模式,因此,只要我产生有效的标记,为什么要打扰?
解决方法
XHTML的论据通常倾向于“更清晰的标记”或谈论格式良好的标记。这似乎大多像是一个稻草人的论据,不能彻底地打倒。
如果XHTML保证由XML解析器解析,则通常不会比HTML 4.01严格(仅仅比较严格的doctypes)看起来更干净。
首先,必须将URL写为http://example.com/?foo=bar\u0026amp;amp;baz=qux看起来很尴尬。声明实体类型变为旧。
另一件事是,标记通常不会像XML Tree那样非常好地翻译,但是Dom树很好。
HTML 4.01严格适用于更容易使用并创建有效的网站。您不必在元素上放置无意义的关闭标记,例如< img>< br>或< link> ;.只要放置反斜杠就不会改变任何特定的含义。 雅虎的道格拉斯·克罗克福德(Douglas Crockford)以及所有的商标都表示,最好将该标记视为应用交付格式。 因此,什么是最简单的交付方式,更强大可靠。这是最终决定我的。所有Web浏览器都以不同的方式处理XHTML,并且需要使用Content-type标题。如果您使用“text / xhtml”或“text / xml”,则会得到不同的结果。 另外,“text / xml”不能很好地与REST进行比较,因为这应该意味着数据的XML序列化,而不是一个格式化的标记页面(Safari在我看来,通过在text / html之前请求文本/ xml而出错)所需内容类型!) 所以,使用HTML 4.01因为: >它在所有浏览器中的工作更为相似>不需要基于内容类型的处理(text / html全面的诀窍)>不像XHTML那么脆弱> HTML 5不提供任何重要的HTML 4.01严格