DOCTYPE 的作用?
- 声明位于文档的最前面,处于标签之前,告知浏览器的解析器,用什么文档标准解析这个文档。
- DOCTYPE 不存在或者格式不正确会导致文档以兼容模式存在(怪异模式),即依照着旧式的 CSS规则渲染网页.
标准模式和混杂模式
- 标准模式:浏览器以其支持的最高标准呈现页面;
- 混杂模式:页面以一种比较宽松的向后兼容的方式显示,混杂模式通常模拟老式浏览器的行为以防止老站点无法工作;
关于模式的触发
- 浏览器根据 DOCTYPE 是否存在以及使用哪种DTD来选择要使用的呈现形式;
- 如果 XHTML, HTML4.01文档包含完整形式的 DOCTYPE ,那他一般以标准模式呈现;
- 包含过渡DTD和 URL的 DOCTYPE 也导致页面以标准模式模式呈现,但是有过渡DTD而没有URL会导致页面以混杂模式来呈现;
- DOCTYPE不存在或形式不正确会导致HTML和XHTML文档以混杂模式呈现。
- html5既然没有DTD,也就没有严格模式与宽松模式的区别,html5有相对宽松的语法,实现时,已经尽可能大的实现了向后兼容。
关于 DTD
- 文档类型定义(DTD)可定义合法的XML文档构建模块。它使用一系列合法的元素来定义文档的结构。DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用。
为什么使用DTD?
- 通过 DTD,您的每一个 XML 文件均可携带一个有关其自身格式的描述。
- 通过 DTD,独立的团体可一致地使用某个标准的 DTD 来交换数据
- 而您的应用程序也可使用某个标准的 DTD 来验证从外部接收到的数据。
- 您还可以使用 DTD 来验证您自身的数据