<!doctype> 声明非常重要,它是一种标准通用标记语言的文档类型声明,通过该标签,浏览器能够了解html5文档正在使用的html规范,<!doctype> 声明是html5文档的起始点,也就是说它必须位于html5文档的第一行!
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>文档标题</title>
</head>
<body>
文档内容......
</body>
</html>
所有主流浏览器都支持 <!doctype> 声明。
<!doctype> 声明位于文档中的最前面的位置,处于 <html> 标签之前。
<!doctype> 声明不是一个 html 标签;它是用来告知 web 浏览器页面使用了哪种 html 版本。
在 html 4.01 中,<!doctype> 声明需引用 dtd (文档类型声明),因为 html 4.01 是基于 sgml (standard generalized markup language 标准通用标记语言)。dtd 指定了标记语言的规则,确保了浏览器能够正确的渲染内容。
html5 不是基于 sgml,因此不要求引用 dtd。
提示:总是给您的 html 文档添加 <!doctype> 声明,确保浏览器能够预先知道文档类型。
html 4.01 规定了三种不同的 <!doctype> 声明,分别是:strict、transitional 和 frameset。 html5 中仅规定了一种:
<!doctype html>
参阅html 元素与合法的 doctype,看看每一个 html 元素都出现在哪一种 doctype 中。
注释:<!doctype> 标签没有结束标签。
提示:<!doctype> 声明不区分大小写。
提示:使用 w3c 的验证 检查您是否编写了一个带有正确 dtd 的合法的 html / xhtml 文档!
<!doctype html>
这个 dtd 包含所有 html 元素和属性,但不包括表象或过时的元素(如 font )。框架集是不允许的。
<!doctype html public "-//w3c//dtd html 4.01//en" "http://www.w3.org/tr/html4/strict.dtd">
这个 dtd 包含所有 html 元素和属性,包括表象或过时的元素(如 font )。框架集是不允许的。
<!doctype html public "-//w3c//dtd html 4.01 transitional//en" "http://www.w3.org/tr/html4/loose.dtd">
这个 dtd 与 html 4.01 transitional 相同,但是允许使用框架集内容。
<!doctype html public "-//w3c//dtd html 4.01 frameset//en" "http://www.w3.org/tr/html4/frameset.dtd">
这个 dtd 包含所有 html 元素和属性,但不包括表象或过时的元素(如 font )。框架集是不允许的。结构必须按标准格式的 xml 进行书写。
<!doctype html public "-//w3c//dtd xhtml 1.0 strict//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd">
这个 dtd 包含所有 html 元素和属性,包括表象或过时的元素(如 font )。框架集是不允许的。结构必须按标准格式的 xml 进行书写。
<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
这个 dtd 与 xhtml 1.0 transitional 相同,但是允许使用框架集内容。
<!doctype html public "-//w3c//dtd xhtml 1.0 frameset//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-frameset.dtd">
这个 dtd 与 xhtml 1.0 strict 相同,但是允许您添加模块(例如为东亚语言提供 ruby 支持)。
<!doctype html public "-//w3c//dtd xhtml 1.1//en" "http://www.w3.org/tr/xhtml11/dtd/xhtml11.dtd">