IE下“怪异模式”的触发

问题从做一个布局的水平居中开始,比如:

(head省略)

要让wrapper定宽并水平居中,需要

#wrapper {width:960px;margin:0 auto;}

即可,但是在IE的怪异模式下需要加上

body {text-align:center;} #wrapper {text-align:left;}

曾经一度认为这个是IE6的hack,正确认识后,这只是IE在怪异模式下才有的问题,那么,通常什么什么情况下会触发IE的怪异模式: 1.没写DOCTYPE,这个最常见; 2.写了DOCTYPE,但不在文档的第一行,实验证明,在DOCTYPE之前有任何非空字符都会触发IE6的怪异模式,在IE7下,DOCTYPE之前有XML的文档声明并不触发,但是在DOCTYPE和XML文档声明之间有任何非空字符仍然会触发。

所以,为了不触发怪异模式,要保证DOCTYPE写在整个html文档的第一行。

Write a response...
Mofei Zhu
publish