很长一段时间我一直在使用XHTML1.1因为我觉得我很酷(是的)。但是,今天我读了Ian Hickson's Article关于每个人如何使用错误的MIME类型与XHTML,它让我大开眼界。我碰巧是那些使用text / html MIME提供XHTML的人之一,因为像很多人一样,W3C说这样做“没问题”。
在该文章的顶部,他说“现在”他将使用HTML5 doctype(!DOCTYPE HTML)来提供服务。你对此有何看法?如果我没有使用不受支持的功能,它会没问题吗?在这种情况下,MIME类型是什么?
感谢您的帮助, 大都市
答案 0 :(得分:3)
W3C并没有说将XHTML 1.1作为text / html提供服务是可以的。它说可以将XHTML 1.0作为text / html提供。
HTML5要理解的是它将语法和mime类型之间的关系转变为最重要的。 HTML5表示,如果您将页面作为text / html 提供,那么它就是HTML,并且如果您将其作为application / xhtml + xml <提供,而不是说哪些mime类型可以与HTML和XHTML一起使用em>然后它是XHTML。
因此,在确定页面是HTML还是XHTML时,doctype无关紧要。这是浏览器多年来一直在有效地做的事情,但应该注意的是,大多数验证器和一些创作工具确实利用doctype来确定操作模式。新的HTML5验证器(如validator.nu)确实使用mime类型作为决定因素。目前还不清楚创作工具应该做什么,并且仍然在HTML工作组中进行争论,但似乎他们不得不依赖于文件扩展名的映射(例如filename.html与filename.xhtml)< / p>
如果仅仅因为HTML5验证器和所有浏览器在面对HTML5文档类型时都做同样的事情,那么即使您没有使用任何其他HTML5功能,它的使用也必须是好事。但是,您应该注意,并非所有有效的HTML4都是有效的HTML5,并且HTML5的许多细节仍在争论中。在某些情况下,最近和建议的更改可能无法在HTML5验证器中实现,因此如果您检查页面,您可能会将事件报告为有效HTML4的错误,并最终可能是有效的HTML5。
最后请注意,当您将页面作为application / xhtml + xml提供时,HTML5 doctype是完全可选的。浏览器完全忽略它。
答案 1 :(得分:2)
Google.com已经提供了HTML5 doctype <!doctype html>
的网页(如果您不相信我,请参阅来源),如果这对他们有好处,那对我有好处:)
请记住,有效的HTML 4.01严格也是有效的HTML5页面!