前几日修改一个活动页面,测试的时候发现在 ie8 下面显示有问题,而线上的页面在 ie8 下面显示没有问题,通过仔细的查找,最后发现原来是在 head 标签里少了一段代码:<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />,这段代码是什么意思呢?
首先要说明的是 X-UA-Compatible 这个属性值在 ie6、ie7 下面不认识。其次 <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> 是让浏览器以 ie7 的方式进行渲染,使网页正常显示。
当然 X-UA-Compatible 中还有其他方法,如:<meta http-equiv="X-UA-Compatible" content="IE=7" />,两者有和区别?
其实两个没有太大的区别,只是 Emulate 模式更加重视 doctype。现在大多数页面都是 xhtml,而 xhtml 与 html 的不同就在于更加规范,比如标签必须要闭合,标签必须被正确的嵌套,doctype 必不可少。
所以推荐使用 <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />。