它应该向后兼容 HTML4 和 XHTML。John Resig 发布了一些好处。
只要我们不使用任何新的和尚不支持的功能,开始使用这种 doctype 构建网站会有什么缺点吗?
它应该向后兼容 HTML4 和 XHTML。John Resig 发布了一些好处。
只要我们不使用任何新的和尚不支持的功能,开始使用这种 doctype 构建网站会有什么缺点吗?
考虑一下:
当用作 text/html 时,您只需要一个 doctype 来触发标准模式。除此之外,就浏览器而言,doctype 什么也不做。
当用作 text/html 时,无论您使用 XHTML 标记还是 HTML 标记,浏览器都将其视为 HTML。
因此,实际上归结为使用触发标准模式的最短文档类型 (<!DOCTYPE html>) 并使用在浏览器中产生正确结果的 HTML 标记。
剩下的就是关于一致性、验证和标记偏好。
话虽如此,现在使用 <!DOCTYPE html> 并尝试使您的标记符合 HTML5 并不是一个坏主意,只要您坚持现在在浏览器中工作的稳定功能。您不会在 HTML4 或 XHTML 1.x 中使用任何在浏览器中不起作用的东西,对吗?
换句话说,您使用带有类似 HTML4 的标记的 <!DOCTYPE html>,同时尊重 HTML5 中已阐明的内容。毕竟 HTML5 是关于浏览器兼容性的。
现在使用 HTML5 的缺点是规范可能会经常更改。这使得您在规范发生变化时跟上规范非常重要。此外http://validator.nu/可能并不总是最新的,但http://validator.w3.org/也不总是最新的,所以不要让它阻止你。
当然,如果您想使用 XHTML 1.0 标记并符合 XHTML 1.0,那么您不应该使用 <!DOCTYPE html>。
就个人而言,我总是将 <!DOCTYPE html> 用于 HTML。
我对您的问题是,如果您不使用任何新的/不受支持的功能,为什么要使用它。我并不是说你不能玩弄它,而是为什么要开始使用没有任何好处并且可以由 XHTML5 补充的 doctype 来构建站点。
我会说使用它并进行广泛的测试。然后让我们知道它是否炸毁了你的房子或其他什么。:')
基于最新的 IE8 测试版,MS 似乎将使用 HTML5 doctype 作为 IE8 模式切换泥潭的旁路。似乎早期部署 HTML5 doctype 的最大风险是,如果人们在 IE8 发布之前使用 HTML5 doctype 发布大量与 IE8 不兼容的内容,MS 可能会对简化 HTML5 的模式情况感到冷漠。
更新:这似乎被否决了。很明显,现在 IE8 已经发布,上述考虑不再适用。事实上,IE8 的情况并不简单。
对我来说,缺点主要涉及验证:
如果您要使用 doctype,请尝试这些功能。只要它们不进入生产站点,并且您对它们进行彻底的测试,就可以了。
考虑你的听众和你的需求。我在配备 Ubuntu 的计算机实验室中为我的课程中使用 FireFox 3 的学生的目标受众编写了诸如课堂测试之类的页面。我需要在 SVG 中嵌入 MathMl 作为 foreignObject 的 SVG。我自由地使用 HTML5 doctype 和新的 HTML5 标签。
看看这篇博文!不是 HTML5 的粉丝 http://www.webscienceman.com/2009/01/24/html-xhtml-html5-future-html/
对于任何找到这个的人。图表
http://hsivonen.iki.fi/doctype/
显示了不同浏览器使用的各种呈现模式,具体取决于使用的 DOCTYPE 声明。它可以让您很好地了解 DOCTYPE 切换的工作原理。
我个人会说不。HTML5 没有明显的好处,事实上甚至可以说整个事情从一开始就搞砸了。
为页眉、页脚和侧边栏使用专门的标签是一个巨大的错误——你已经以标签 (div) 和名称 (classes/id's) 的形式获得了它们。为什么我们需要专家?XHTML1.1 已经足够好了,期间。事实上,由于大多数浏览器不能正确支持 HTML4,因此使用需要数年才能获得适当支持的 doctype 几乎没有意义。