X-UA-Compatible兼容模式

如何理解 IE 的文档兼容模式(X-UA-Compatible)?

IE 浏览器支持多种文档兼容模式,得以因此改变页面的渲染效果。

IE9 模式支持全范围的既定行业标准,包括 HTML5(草案), W3C CSS Level 3 规范(草案), SVG 1.0 规范等

<meta http-equiv="X-UA-Compatible" content="IE=9">

IE8 模式支持许多既定行业标准,W3C CSS Level 2.1 规范和 W3C Selectors API,有限支持 W3C CSS Level 3 规范(草案)和其他行业标准

<meta http-equiv="X-UA-Compatible" content="IE=8">

IE7 模式强制浏览器按照 IE 7 标准模式渲染文档,忽略是否定义指令

<meta http-equiv="X-UA-Compatible" content="IE=7">

Emulate IE9 模式告诉 IE 使用指令来决定如果渲染文档。标准模式下以 IE9 渲染,怪癖模式下以 IE5 渲染。和 IE9 模式不同的是,Emulate IE9 模式会考虑指令

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9">

Emulate IE8 模式告诉 IE 使用指令来决定如果渲染文档。标准模式下以 IE8 渲染,怪癖模式下以 IE5 渲染。和 IE8 模式不同的是,Emulate IE8 模式会考虑指令

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8">

Emulate IE7 模式告诉 IE 使用指令来决定如果渲染文档。标准模式下以 IE7 渲染,怪癖模式下以 IE5 渲染。和 IE7 模式不同的是,Emulate IE7 模式会考虑指令。对于大多数站点而言,这是首选的兼容模式

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7">

IE5 模式告诉 IE7 是否以怪癖模式渲染文档

<meta http-equiv="X-UA-Compatible" content="IE=5">

Edge 模式告诉 IE 以最高级模式渲染文档,也就是任何 IE 版本都以当前版本所支持的最高级标准模式渲染,避免版本升级造成的影响。简单的说,就是什么版本 IE 就用什么版本的标准模式渲染

<meta http-equiv="X-UA-Compatible" content="IE=edge">

使用以下代码强制 IE 使用 Chrome Frame 渲染

<meta http-equiv="X-UA-Compatible" content="chrome=1">

提示 IE 用户安装 Google Frame
Google 官方提供了对 Google Frame 插件安装情况的检测,这里直接调用方法即可,如果检测到 IE 并未安装 Google Frame,则弹出对话框提示安装。

<script src="http://ajax.googleapis.com/ajax/libs/chrome-frame/1/CFInstall.min.js"></script><script>CFInstall.check();</script>

最佳的兼容模式方案,结合考虑以上两种:

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
时间: 2024-11-02 21:31:06

X-UA-Compatible兼容模式的相关文章

浏览器兼容模式(转)

三种模式 首先我们要知道,为什么会有这么多模式.其实这是个历史遗留问题,在浏览器大战时期,网景浏览器(Netscape Navigator)和微软的IE浏览器(Microsoft Internet Explorer)对网页分别有不同的实现方式,那个时候的网页要针对这两种浏览器分别开发不同的版本.而到了W3C制定标准之后,这些浏览器就不能继续使用这种页面了,因而会导致大部分现有站点都不能使用.基于这个原因,浏览器才引入两种模式来处理一些遗留的站点. 现在的浏览器排版引擎支持三种模式:怪异(Quir

用Meta标签代码让360双核浏览器默认极速模式不是兼容模式

这篇文章主要介绍了用Meta标签代码让360双核浏览器默认极速模式打开网站不是兼容模式,需要的朋友可以参考下 这篇文章主要介绍了用Meta标签代码让360双核浏览器默认极速模式打开网站不是兼容模式,需要的朋友可以参考下. 一个网站,大量采用了html5和css3,希望用户都以webkit内核打开页面,但是测试却发现360的以ie内核打开为推荐模式,不知原因为何.其实360给网站开发者设计了一种选择的方法,只要加入一段Meta标签代码就可以解决. 以下信息摘自360官方网站: 浏览模式 极速模式.

meta 标签代码解决IE兼容问题,IE6,IE7,IE8,IE9,IE10(包括360的兼容模式)

最近做了一个项目,客户反映,在360下布局错位,远程调试了一下,发现客户使用的是360的兼容模式,然而我在自己的电脑上测试的时候是正常的(兼容模式也正常):简单研究了一下360的兼容模式,在360的兼容模式下按F12得到下图的调试信息: 经过测试,发现是红框处的设置的ie版本太低导致的,主要是文档模式更改文档模式为相对较高的版本即可解决, 这里,我添加了如下代码 <meta http-equiv="X-UA-Compatible" content="IE=edge,ch

黄聪:如何用代码设置控制自己网站的网页在360浏览器打开时强制优先使用极速模式,而非兼容模式

最近用360浏览器访问自己的网站,发现都是被优先选用兼容模式打开,这使得网站很难看.为了让360浏览器打开网站的时候优先试用极速模式,找了一下官方论坛,发现了解决方案. 在head标签中添加一行代码: <html> <head> <meta name="renderer" content="webkit|ie-comp|ie-stand"> </head> <body> </body> <

Angularjs在360兼容模式下取数据缓存问题解决办法

测试提了一个bug,在360浏览器兼容模式下,删除页面数据需要手动刷新浏览器才能看到最新的数据.首先要复现当时的问题,很容易就复现了,但是发现在360浏览器兼容模式下无法打开开发者工具.好在经过反复重装之后,终于打开了开发者工具,经过跟踪发现,第一次删除数据时可以正常刷新,第二次或以后的删除将无法刷新,跟踪代码,发现通过异步请求的数据正常的返回并且绑定了.点击搜索按钮,也无法实现刷新,但是点击分页,发现可以翻页.初步推断是浏览器缓存了异步请求数据,跟踪比较返回的数据发现,推断是正确的.于是从网上

强制浏览器使用兼容模式,Web.config,httpProtocol

对于一些政府类的网站,很多支持IE6~8,而不支持使用更高版本浏览器浏览.虽然有些浏览器会自动使用兼容模式,或有些人会手动调整浏览器的兼容模式,但不是每一个人.每一款浏览器都可以做到用兼容模式.所以,强制浏览器使用指定版本的兼容模式运行,变得势在必行. <configuration> <system.webServer> <!-- 设定网站服务器以指定预设兼容性模式 Lionden --> <httpProtocol> <customHeaders&g

强制浏览器使用兼容模式(IE)

对于一些政府类的网站,很多支持IE6~8,而不支持使用更高版本浏览器浏览.虽然有些浏览器会自动使用兼容模式,或有些人会手动调整浏览器的兼容模式,但不是每一个人.每一款浏览器都可以做到用兼容模式.所以,强制浏览器使用指定版本的兼容模式运行,变得势在必行. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 <configuration>   <system.webServer>     <!-- 设定网站服务器以指定预设兼容性模式 Lionden -->

如何强制浏览器使用兼容模式

对于一些政府类的网站,很多支持IE6~8,而不支持使用更高版本浏览器浏览.虽然有些浏览器会自动使用兼容模式,或有些人会手动调整浏览器的兼容模式,但不是每一个人.每一款浏览器都可以做到用兼容模式.所以,强制浏览器使用指定版本的兼容模式运行,变得势在必行.若要使 Microsoft IIS 能够定义自定义 HTTP 响应标头以便所有页面自动以 EmulateIE7 模式呈现,您可以使用以下 web.config 示例 <configuration>   <system.webServer&g

IE兼容模式下两个小问题,JSON.stringify和SCRIPT70 无权限

JSON.stringify在IE兼容模式下不起作用,原来是序列化对象是一个easyuiTree的树节点对象,过于复杂的对象 SCRIPT70 权限,问题出现在获取页面iframe时: var iframeObj=$('table id#right ifram',$('#contentFrame',$(window.parent.document))0].contentWindow.document); 这样得到的iframeObj.length为0. 从网上找到答案,用原生javascript

360浏览器兼容模式打开页面错误

今天发布系统之后,客户发现问题说360和傲游都打不开右下角提示的页面而IE8可以打开,右下角图:返回404错误.我回到座位上打开系统看了下,确实如此.我仔细想了下,我平时自己开发模式下就可以,但是为啥发布了就不行了.我仔细看了下我360浏览器.原来我用的都是极速模式,webkit内核.立马切换到兼容模式下,果然挂了.让我郁闷了..话说兼容模式下用的ie内核.自己本机怎么也装的ie8,咋就不行了呢. 我打开前端代码发现有这么一句话:parent.document.getElementById("m