何时触发怪异模式和标准模式
- 浏览器根据doctype是否存在和哪种DOT格式来决定怪异模式还是标准模式,如果XHTML文档包含完整的DOCTYPE,那么它一般以标准模式呈现
- 代码对于html4.0文档,包含严格dtd的doctype和包含过渡dtd和URI的doctype常常导致页面以标准模式呈现高亮
- 任何新的或位置的doctype将导致标准模式呈现
- 不存在doctype会导致怪异模式
- 但是有过渡dtd没有URI会导致页面以怪异模式呈现
- doctype不存在或形式不正确也会导师html和xhtml文档以怪异模式呈现。
- IE中,如果doctype声明在xml之后,会导致怪异模式
怪异模式和标准模式的区别:
百度百科的解释:
- 对 CSS IE盒模型缺陷的处理。在第 6 版之前,Internet Explorer 曾经使用一种决定一个元素的盒模型的宽度和高度的,与 CSS 规范所指定相冲突的算法,而且由于 Internet Explorer 的流行,很多依赖于这种不正确的算法的网页被创建。而在版本 6, Internet Explorer 在标准模式下渲染时使用了 CSS 规范的算法,而在 quirks 模式下使用先前的,不规范的算法。
- 某些行内 (inline) 元素的垂直对齐;很多早期的浏览器对齐图片至包含它们的盒子的下边框,虽然 CSS 的规范要求它们被对齐至盒内文本的基线。标准模式下,基于 Gecko 的浏览器将会对齐至基线,而在 quirks 模式下它们会对齐至底部。
-很多早期的浏览器对表格内部的字体样式不实施继承;结果是,字体样式必须为整个文档作为一个整体指定一次,并且为表格再次指定一次,尽管 CSS 规范要求字体样式被继承进表格。如果字号使用相对单位指定,一个标准兼容的浏览器会继承基准字号,然后应用于表格内的相对字号:比如,一个声明了基准字号为 80% 的页面内声明表格为 80% (以保证在不正确继承字号的浏览器中有 80% 的字号)的字号将会,在一个标准兼容的浏览器里,显示具有 64% 字号的表格。结果是,浏览器在怪异模式典型的不对表格继承字号。 - IE6不认识!important声明,IE7、IE8、Firefox、Chrome等浏览器认识;而在怪异模式中,IE6/7/8都不认识!important声明
-还没有读的网址 http://www.cnblogs.com/rainnoless/archive/2009/03/09/1402629.html