在练习css3动画特效时遇见如下代码 < meta http-equiv = "X-UA-Compatible" content = "IE=edge,chrome=1" />
逛了逛前辈们的博客园,把对于该代码的解析做了总结:
常用的例子:
<meta http-equiv="X-UA-Compatible" content="IE=7">
// 以上代码告诉IE浏览器,无论是否用DTD声明文档标准,IE8/9都会以IE7引擎来渲染页面。
<meta http-equiv="X-UA-Compatible" content="IE=8">
// 以上代码告诉IE浏览器,IE8/9都会以IE8引擎来渲染页面。
<meta http-equiv="X-UA-Compatible" content="IE=edge">
// 以上代码告诉IE浏览器,IE8/9及以后的版本都会以最高版本IE来渲染页面。
<meta http-equiv="X-UA-Compatible" content="IE=7,IE=9">
<meta http-equiv="X-UA-Compatible" content="IE=7,9">
<meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
// 以上代码IE=edge告诉IE使用最新的引擎渲染网页,chrome=1则可以激活Chrome Frame.
-
为什么要用X-UA-Compatible?
这是IE8的专用标记,是用于指定IE8浏览器去模拟某个特定版本的IE浏览器的渲染方式以此来解决部分兼容问题,在网页中,其指定的模式的优先权高于服务器中(通过HTTP Header)所指定的模式,兼容性模式设置优先级:
meta tap>http header
例如:-
<meta
http-equiv="X-UA-Compatible"
content="IE=7">
以上代码告诉IE浏览器,无论是否用DTD声明文档标准,IE8/9都会以IE7引擎来渲染页面 -
<meta
http-equiv="X-UA-Compatible"
content="IE=edge">
以上代码告诉IE浏览器,IE8/9以及以后的版本都会以最高版本IE来渲染界面
-
书写时需要注意两点:
-
据官网定义X-UA-compatible标头不区分大小写,但是,它必须写在网页中除了title元素和其他meta以外的所有其他元素之前,如果不是,这句话将不起作用
-
content 里的内容应该书写为IE=8。而不是直接书写IE8
-
解释cheomre=1?
chrome=1可以激活Chrome Frame
Google Chrome Frame(谷歌内嵌浏览器框架GCF),这个插件可以让用户的IE浏览器外不变,但用户在浏览网页时,实际上使用的时IE浏览器,而且支持IE6,7,8等多个版本浏览器
上文提到的meta标签,是在安装了GCF后,用来指定页面chrome内核来渲染GCF下载地址: http://code.google.com/intl/zh-CN/chrome/chromeframe/
安装完成后,如果你想对某个页面使用GCF进行渲染,只需要在该页面的地址前加上 gcf: 即可,例如: gcf:http://cooleep.com
但是如果想要在开发时指定页面默认首先使用GCF进行渲染,如果未安装GCF再使用IE内核进行渲染,该如何进行呢?
标记用法:
(http://www.chromium.org/developers/how-tos/chrome-frame-getting-started,需翻-墙)所以:
< meta http-equiv = "X-UA-Compatible" content = "IE=edge,chrome=1" />
可以达到效果:
如果安装了GCF,则使用GCF来渲染页面,如果未安装GCF则使用最高版本的IE内核来进行渲染。
-
为什么要用X-UA-Compatible?
在IE8刚推出的时候,很多网页由于重构的问题,无法适应较高级的浏览器,所以使用X-UA-Compatible标签强制IE8采用低版本方式渲染
使用下面这段代码之后,开发者无需考虑网页是否兼容IE8浏览器,只要确保网页在IE6,IE7下的表现就可以了。
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hhthwx/article/details/77188103