DOCTYPE标签是一种标准通用标记语言的文档类型声明,它的目的是要告诉标准通用标记语言解析器,它应该使用什么样的文档类型定义(DTD)来解析文档。对于Web前端开发来说,<!DOCTYPE>的声明是必不可少的的,因为如果你没有定义文档类型,就会影响代码的实现(标示和CSS都不会生效),也决定了最终浏览器对于文档的显示效果。
文档类型标签,该标签是将特定的标准通用标记语言或XML文档与文档类型定义(DTD)联系起来的指令。该标记应该出现在文件的第一行。它在文档中出现的格式如下:
<!DOCTYPE html
PUBLIC “引用的字符串” --公共标示符-->
“引用的字符串”被称为公共标识符,它通过业界约定的公共标识符名称指向某个特定的文档类型定义(DTD:文档类型定义是一套关于标记符的语法规则,是一种保证标准通用标记语言、可扩展标记语言文档格式正确的有效方法,可通过比较文档和文档类型定义文件来看文档是否符合规范,元素和标签使用是否正确。)
<!DOCTYPE>的声明在超级文本标记语言下的作用是告诉浏览器当前文档所使用的是哪种超文本或可扩展超文本规范。
超文本4.01 规定了叁种文档类型:严格、过渡以及框架集。
超文本严格文档类型定义:
如果您需要干净的标记,免于表现层的混乱,请使用此类型。请与层叠样式表配合使用:
<!DOCTYPE HTML
PUBLIC "-//W3C//DTD HTML 4.01//en"
"http://www.w3. org/TR/html4/strict.dtd">
超文本过渡文档类型定义:
可包含万维网联盟所期望移入样式表的呈现属性和元素。如果您的读者使用了不支持层叠样式表的浏览器以至于您不得不使用超文本标记语言来呈现特性时,请使用此类型:
<!DOCTYPE HTML
PUBLIC "-//W3C//DTD HTML 4.01 Transitional//en"
"http://www.w3. org/TR/html4/loose.dtd">
超文本框架集文档类型定义:
框架集文档类型定义应当被用于带有框架的文档。除 frameset 元素取代了 body 元素之外,等同于过渡文档类型定义:
框架集文档类型定义应当被用于带有框架的文档。除 frameset 元素取代了 body 元素之外,等同于过渡文档类型定义:
<!DOCTYPE HTML
PUBLIC "-//W3C//DTD HTML 4.01 Frameset//en"
"http://www.w3. org/TR/html4/frameset.dtd">
好在现在的各种Web开发工具都支持插入模板代码,所以可以使用html5的<!DOCTYPE>声明:
<!DOCTYPE html>
用这个简单的声明来代替4.0中冗长的DOCTYPE声明,既不用担心写错,且各个浏览器也都能正确识别。并且你只需要定义<!DOCTYPE html>就可以让浏览器在严格模式(标准模式)下渲染页面,而不需要特殊指定某个类型(DTD)。