1.doctype的作用是什么?
2.它的混杂模式和标准模式怎么区分?
3.HTML5的doctype为什么只需要写<!DOCTYPE html>
1.doctype是一种标准的通用标记语言的文档类型声明,目的是告诉标准通用标记语言解析器要使用什么样的文档类型定义(DTD)来解析文档,因此它在html的作用就是触发浏览器的标准模式。
2.混杂模式是一种向后兼容的解析方式,是实现IE5.5以下版本浏览器的渲染模式。
标准模式是一种要求严格的DTD,根据web标准去解析页面的模式。
两种模式在盒模型中有明显区别:混杂模式盒模型的宽高=内容的宽高;标准模式盒模型的宽高=内容的宽高+padding的宽高+border的宽高。
当一个块元素div中包含的内容只有图片时,在标准模式下,不管IE还是标准,在图片底部都有3像素的空白。但在混杂模式下,标准浏览器(Chrome)中div距图片底部默认没有空白。
3.HTML 4.01 中的 doctype 需要对 DTD 进行引用,因为 HTML 4.01 基于 SGML。而 HTML 5 不基于 SGML,因此不需要对 DTD 进行引用,但是需要 doctype 来规范浏览器的行为(让浏览器按照它们应该的方式来运行。