有什么理由不开始使用HTML 5文档类型?[关闭]


132

它应该与HTML4和XHTML向后兼容。约翰·雷西格(John Resig)发表了一些好处

只要我们不使用任何新功能且尚不支持的新功能,使用此doctype开始构建网站是否会有任何弊端?


1
我要结束了,因为当时这是一个值得关注的问题,但是生活已经继续,HTML5现在可以保留了。它也吸引了人们的注意,因为许多答案都是观点而不是事实。
凯夫

Answers:


143

好考虑一下:

当用作text / html时,您只需要触发doctype即可触发标准模式。除此之外,对于浏览器而言,doctype不会执行任何操作。

当用作text / html时,无论您使用XHTML标记还是HTML标记,浏览器都将其视为HTML。

因此,实际上归结为使用触发标准模式的最短文档类型(<!DOCTYPE html>),以及使用HTML标记在浏览器中产生正确的结果。

剩下的就是关于一致性,验证和标记偏好。

话虽如此,只要您坚持使用现在可以在浏览器中使用的稳定功能,现在就使用<!DOCTYPE html>并尝试使标记符合HTML5并不是一个坏主意。您不会在HTML4或XHTML 1.x中使用在浏览器中无法使用的任何东西,对吗?

换句话说,您将<!DOCTYPE html>与类似HTML4的标记一起使用,同时尊重HTML5中已阐明的内容。HTML5毕竟是关于浏览器兼容性的。

现在使用HTML5的缺点是规范可能会经常更改。这对于您在不断变化的规格时保持最新很重要。另外,http://validator.nu/不一定总是最新的,但是http://validator.w3.org/也不总是最新的,所以不要让它阻止您。

当然,如果要使用XHTML 1.0标记并符合XHTML 1.0,则不应使用<!DOCTYPE html>。

就个人而言,我始终对HTML使用<!DOCTYPE html>。


4
我认为省略URI会使浏览器进入怪癖模式,从而使标准工作变得徒劳。
graham.reeds

5
为什么不能将XHTML 1.0标记用作<!DOCTYPE html>?我以为是重点!
Skilldrick


5
“我认为省略URI会使浏览器进入怪癖模式” –不。Ian Hickson在HTML5上所做的很大一部分工作是不懈地测试了许多常用的浏览器,以查看有效的方法以及工作原理。HTML5 doctype在所有具有此类功能的浏览器中触发标准模式(我相信)。
Paul D. Waite 2010年

23
如果有帮助,我刚刚在IE8,IE7(使用IE8开发工具)和IE6(使用Virtual PC)中测试了<!DOCTYPE html>。他们都没有进入怪癖模式。因此,即使是旧版IE,也绝对可以处理标准HTML5 doctype,而无需进入怪癖模式。
语法错误,2010年

3

我对您的问题是,如果不使用任何新功能/不受支持的功能,为什么要使用它。我并不是说您无法使用它,而是为什么要开始使用不提供任何好处且可以由XHTML5进行补充的doctype建立站点。


3
“如果不使用任何新功能/不受支持的功能,为什么要使用它”-因为它更短且更容易记住?显然,这不是一件大事,但仍然如此。
Paul D. Waite 2010年

是的,但是不是XHTML 1.2或XHTML 2.0吗?;)
Talvi Watia 2010年

1
HTML5 “ XHTML5”。W3C已停止开发“ X” HTML。
克里斯·哈里森

好吧,不是真的。XHTML5和HTML5是HTML语言的两种不同的标记表示形式(序列化)。前者是基于XML的,后者是SGML的唯一方言(具有特殊的解析语义)。
Delan Azabani 2011年

2

我会说使用它并进行广泛的测试。然后让我们知道它是否炸毁了您的房子或其他东西。:')


2

基于最新的IE8 beta,MS似乎将使用HTML5 doctype作为IE8模式切换泥潭的绕过对象。尽早部署HTML5文档类型的最大风险似乎是,如果人们在IE8发行之前发布了很多与HTML5文档类型不兼容IE8的内容,MS可能会为使HTML5的模式情况变得简单而冷落。

更新:看来这已经被否决了。显然,现在IE8已交付,上述考虑不再适用。确实,使用IE8并不容易


2

我的缺点主要是验证:

  1. 第三方验证工具并不总是能跟上规格的变化,这使我最喜欢的工具不可靠。
  2. 我更喜欢针对严格的doctype进行验证,以确保已关闭所有元素。这是避免简单但费时的嵌套错误的简便方法。使用HTML 5,您不必关闭元素,因此无法找到不匹配的标签。

没错,这就是为什么您要查找html lint检查器的原因:lint.brihten.com/html/help而不是简单的验证器。
卡扎伊2011年

1

如果您要使用doctype,请尝试这些功能。只要他们不进入生产现场,并且您对它们进行了彻底的测试,就可以使用它们。


1

考虑您的听众和您的需求。我在课程中针对在使用Ubuntu的计算机实验室中使用FireFox 3的学生中的目标受众编写诸如类测试的页面。我需要将MathMl嵌入为SVG中的foreignObject的SVG。我免费使用HTML5文档类型和新的HTML5标签。



0

对于任何发现这个的人。图表 http://hsivonen.iki.fi/doctype/显示了不同的浏览器使用的渲染模式,具体取决于所使用的DOCTYPE声明。它使您对DOCTYPE切换的工作方式有了一个很好的了解。


-16

我个人不会。HTML5没有明显的好处,实际上甚至可以说整个事情从一开始就很糟糕。

对于页眉,页脚和侧边栏使用专门的标签是一个巨大的错误-您已经以标签(div)和名称(类/ id)的形式获取它们。为什么我们需要专业的?XHTML1.1足够好,期限。实际上,由于大多数浏览器均不正确支持HTML4,因此使用文档类型要花费数年才能获得适当的支持就没有意义。


10
这是关于语义的。您完全可以摆脱HTML中的几乎每个标签,并且只使用div,span和style / class属性。但是您这样做会删除文档中的所有语义值。
洛朗

2
试想一下它将对搜索引擎有用。
Leo Jweda,09年

@Laurent:因此,如果我希望标题现在变成侧边栏,我必须遍历所有CSS并进行标记切换,因为它在语义上不再正确吗?否。使其成为一个div,将其命名为功能,然后按需使用。@Laith:在什么方面对搜索引擎有利?
graham.reeds

帆布:想用吗?你不能 也可以,但是您现在处于目标编程领域。这不是标准的重点。
graham.reeds

3
“使它成为一个div,将其称为功能,然后按需使用它。” -该死的直。在执行此操作时,请对所有段落和列表执行相同的操作。我如何在此处键入sarcmark。
Paul D. Waite 2010年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.