X-UA-Compatible属性的解释

 问题描述:

代码如下:

<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″ >仍然是首选。


你可能感兴趣的:(X-UA-Compatible属性的解释)