HTML Doctypes

文档类型声明(DOCTYPE)是 Web 浏览器关于编写页面的标记语言版本的指令。

HTML5 Doctype

DOCTYPE 声明显示在所有其他元素之前的网页顶部。根据 HTML 规范或标准,每个 HTML 文档都需要一个文档类型声明,以确保你的页面以预期的方式显示。doctype 声明通常是 HTML 文档中定义的第一件事; 但是 doctype 声明本身不是 HTML 标记。

HTML5 的 DOCTYPE 非常短,并且不区分大小写。

<!DOCTYPE html> 

早期版本的 HTML 中的 Doctypes 更长,因为 HTML 语言是基于 SGML 的,因此需要引用 DTD,但它们现在已经过时了。使用 HTML5 时,情况不再如此,只需要为使用 HTML 语法编写的文档启用标准模式即可使用 doctype 声明。

你可以使用以下标记作为模板来创建使用最新 HTML5 doctype 声明的新 HTML5 文档。

<!DOCTYPE html>
<html lang="en">
<head>
    <title><!-- Insert your title here --></title>
</head>
<body>
    <!-- Insert your content here -->
</body>
</html>

注意: doctype 声明引用文档类型定义(DTD)。它是 Web 浏览器关于页面编写的标记语言版本的指令.W3C 为所有 HTML 版本提供 DTD。

HTML 4.01 不同的 Doctypes

以下部分包含以前版本的 HTML 中的不同文档类型。尽管使用 HTML 4.01 doctypes 仍然是创建 DOCTYPE 声明的有效方法,但它们不再被视为最佳实践。

HTML 4.01 严格

HTML 4.01 Strict DTD 包括尚未弃用或未出现在框架集文档中的所有元素和属性。对于使用此 DTD 的文档,请使用以下 DOCTYPE 声明:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">

HTML 4.01 过渡期的

HTML 4.01 Transitional DTD 包含严格 DTD 中的所有内容以及不推荐使用的元素和属性,但不包括框架集内容。对于使用此 DTD 的文档,请使用以下 DOCTYPE 声明:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

HTML 4.01 框架集

HTML 4.01 框架集 DTD 包含过渡 DTD 中的所有内容,并且还允许使用框架集内容。对于使用此 DTD 的文档,请使用以下 DOCTYPE 声明:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">

警告: <frameset><frame> 元素已经从 HTML5 删除,不应再使用。因此,框架集 DTD 不再有效。

XHTML 1.1 Doctype

XHTML 1.1 是 XHTML 1.0 Strict 的最新版本,引入了对 XHTML 模块化的支持,这意味着你可以添加模块(例如,为中文,日文和韩文字符提供 Ruby 支持)。

对于使用此 DTD 的文档,请使用以下 DOCTYPE 声明:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.1//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic11.dtd">

提示: 必须在 HTML / XHTML 文档中添加 doctype,并在联机发布之前使用 W3C 的验证器 检查标记或语法错误。