可以不放一个doctype吗?

时间:2012-09-10 06:59:18

标签: html doctype

  

可能重复:
  What's up, Doctype?

在我的浏览器中,我查看了我已经制作的html页面的页面源代码,并注意到了

<html>

是红色字体,表示存在错误。

我之前添加了这个:

<!DOCTYPE html>

现在它似乎不是红色字体。

问题是......当我没有doctype时,我的页面外观与以前不同。

问题是,是不是可以声明doctype并仍然保留我的页面样式?

5 个答案:

答案 0 :(得分:3)

不要编写有效的HTML以删除验证错误。编写有效的HTML,以便始终如一地为所有客户端呈现。

如您所说, 无法保留您网页的样式,而不指定doctype指示用户代理如何解释以下代码。

话虽如此,您撰写的标记可能与您上面引用的标记更符合其他文档类型。

See "Choosing a Doctype"

答案 1 :(得分:1)

在一些(实际上是很多)浏览器(如IE)中,如果你没有放置doctype(Quirks Mode - Wikipedia),渲染将会大不相同(请注意我的大量使用)。

在任何情况下,最好的办法是每次添加一个。获取类似TextExpander的内容,以便更容易输入。

就像记得每天早上刷牙一样,这是另一种应该是强制性的习惯。

另外,请考虑每次使用HTML5 DocType(您使用的那个)。

答案 2 :(得分:1)

标准规定所有文档都应具有文档类型定义 - doctype(文档类型)声明。 W3定义了您可以使用的list of doctypes

正如您所发现的,添加错误的 doctype会产生一些有趣的后果。因此,根据您的文档所遵循的内容提供正确的文档类型非常重要。

请参阅详细信息this excellent article

答案 3 :(得分:1)

Don't forget to add a doctype

不仅有一种类型的HTML,实际上有很多种:HTML 4.01 Strict,HTML 4.01 Transitional,XHTML 1.0 Strict等等。所有这些类型的HTML都在它们各自的W3C specifications中定义,但它们也是用机器可读的语言定义的,用于指定HTML类型的法律结构,元素和属性。

这种定义称为“文档类型定义”,或简称为DTD。

为什么要指定doctype?

因为它定义了您的文档实际使用的(X)HTML 版本,这是处理文档的某些工具所需的关键信息。

例如,指定文档的doctype可让您使用Markup Validator等工具检查(X)HTML 的语法。如果这些工具不知道您正在使用何种文档,则无法使用这些工具。

但最重要的是,对于大多数浏览器系列而言,doctype声明会使大量猜测变得不必要,从而触发“标准”渲染模式。

答案 4 :(得分:1)

Doctype定义了您的文档实际使用的(X)HTML版本,这是处理文档的某些工具所需的关键信息。

http://www.w3.org/QA/Tips/Doctype

阅读上述链接后,您可以确定是否正确。 :)