问题描述:
代码如下:
<meta http-equiv="X-UA-Compatible" content="IE=9; IE=8; IE=7; IE=EDGE" />
1、这个到底是什么意思?
2、一些示例使用”,”分离IE的版本,而一些使用”;“,哪个正确?
3、我想知道IE=9; IE=8; IE=7; IE=EDGE顺序的含义。
在文档中使用了<!DOCTYPE>
答复:
对于IE8及以上版本,例如:
代码如下:
<meta http-equiv="X-UA-Compatible" content="IE=9; IE=8; IE=7" />
强制浏览器按照特定的版本标准进行渲染。但不支持IE7及以下版本。如果用分号(;)分隔,对于不同的浏览器版本就有不同的兼容性,例如
代码如下:
<meta http-equiv="X-UA-Compatible" content="IE=7; IE=9" />
以上就表明,将IE8和IE7按照IE7标准渲染,但是IE9还是按照IE9的标准渲染。它允许有不同的向后兼容水平。尽管在真实情况中,你只要选择一种版本:
代码如下:
<meta http-equiv="X-UA-Compatible" content="IE=8" />
这对于测试和维护会更加简单。而通常更加有用的方式就是进行仿真模拟
代码如下:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8" />
对于IE=EDGE
代码如下:
<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
这意味着,会强制浏览器按照最新的标准去渲染。就像在Google’s CDN使用最新版本的JQuery一样,这是按照最新版本,但也可能由于没有固定的版本而破坏你的布局。
最后,考虑下面这个
代码如下:
<meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1" />
添加”chrome=1“将允许站点在使用了谷歌浏览器内嵌框架(Chrome Frame)的客户端渲染,对于没有使用的,则没有任何影响。
代码如下:
For more information, there is plenty to read here, and if you want to learn about ChromeFrame (which I recommend) you can learn about its implementation here.
PS:X-UA-Compatible是针对 IE8 版本的一个特殊文件头标记,用于为 IE8 指定不同的页面渲染模式,对于ie8之外的浏览器是不识别的。
目前绝大多数网站都用<meta http-equiv=”X-UA-Compatible” content=”IE=EmulateIE7″ >来作为IE8的兼容方法。为了避免制作出的页面在IE8下面出现错误,建议直接将IE8使用IE7进行渲染。也就是直接在页面的header的 meta标签中加入如下代码:
代码如下:
<meta http-equiv=”X-UA-Compatible” content=”IE=7″ /></p> <p><meta http-equiv=”X-UA-Compatible” content=”IE=EmulateIE7″ ></p> <p><meta http-equiv=”X-UA-Compatible” content=”IE=EmulateIE8″ >
但是<meta http-equiv=”X-UA-Compatible” content=”IE=EmulateIE7″ >仍然是首选。