HTML5学习心得-严格模式和怪异模式的区别 - 挣扎de咸魚
每个HTML5文档的首行都是一个文档声明,这种文档声明是用来表示后面的那些个页面标签遵循哪一个原则的,这是HTML5的文档类型声明:
<!DOCTYPE html>
这个是XHTML 1.0严格模式的文档类型声明:
<!DOCTYPE html PUBLIC "-//W3C//DTD?*XHTML 1.0*?Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
保留文档类型声明主要是历史原因,没有文档声明的话大多数浏览器都将会转换到为怪异模式(quirk mode),有些地方会称为混杂模式,这种模式下浏览器会以老版本的浏览器使用的规则来渲染页面,并且不同浏览器的混杂模式还是不一样的,我们在平时码代码时应该尽量回避这种错误。
在添加了文档类型声明之后,浏览器使用的就是严格模式(standard mode),也称标准模式,这种情况下浏览器会用W3C的标准来渲染网页。
附上一篇Mozilla Quirks Mode Behavior