HTML Meta中添加X-UA-Compatible和IE=Edge,chrome=1有什么作用?

X-UA-Compatible是自从IE8新加的一个设置,对于IE8以下的浏览器是不识别的。
通过在meta中设置X-UA-Compatible的值,可以指定网页的兼容性模式设置。

在网页中指定的模式优先权高于服务器中(通过HTTP Header)所指定的模式。
兼容性模式设置优先级:

1

meta tag > http header

常用的例子:

1

2

3

4

5

6

7

8

9

10

<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">

#将IE8和IE7按照IE7标准渲染,但是IE9还是按照IE9的标准渲染。它允许有不同的向后兼容水平。

<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.

Google Chrome Frame 百科

“IE=Edge,chrome=1″这样简单快捷,但是弊端是代码将无法通过W3C验证。其实这并不是问题,毕竟标准只是标准,如果只有这一个“错误”完全不会有任何不良的影响。

IE文档兼容性模式所有可能的值:

1

2

3

4

5

6

Emulate IE8 mode #指示IE使用<!DOCTYPE>指令来决定如何编译内容。Standards mode指令会显示成IE8 Standards mode而quirks mode会显示成IE5 mode。不同于IE8 mode,Emulate IE8 mode重视<!DOCTYPE>指令。

Emulate IE7 mode #指示IE使用<!DOCTYPE>指令来决定如何编译内容。Standards mode指令会显示成IE7 Standards mode而quirks mode会显示成IE5 mode。不同于IE7 mode,Emulate IE7 mode重视<!DOCTYPE>指令。对于许多网页来说这是最推荐的兼容性模式。

IE5 mode #编译内容如同IE7的quirks mode之显示状况,和IE5中显示的非常类似。

IE7 mode #编译内容如同IE7的standards mode之显示状况,无论网页是否含有<!DOCTYPE>指令。

IE8 mode #提供对业界标准的最高支持,包含 W3C Cascading Style Sheets Level 2.1 Specification和W3C Selectors API,并有限的支持 W3C Cascading Style Sheets Level 3 Specification (Working Draft)。

Edge mode #指示IE以目前可用的最高模式显示内容。当使用IE8时其等同于IE8 mode。若(假定)未来放出支持更高兼容性模式的IE,使用Edge mode的页面会使用该版本能支持的最高模式来显示内容。同样的那些页面在使用IE8浏览时仍会照常显示。

注意事项:
1,根据官网定义X-UA-compatible 标头不区分大小写;不过,它必须显示在网页中除 title 元素和其他 meta 元素以外的所有其他元素之前。如果不是的话,它不起作用
2,content的内容是IE=8,或者IE=edge等值,注意不是IE8或者直接写个edge的值,否则不起作用

如果对WEb服务器了解,可以直接配置一下VirtualHost:
Apache:

1

2

3

4

5

6

7

8

<IfModule mod_setenvif.c>

<IfModule mod_headers.c>

BrowserMatch MSIE ie

Header set X-UA-Compatible "IE=Edge" env=ie

BrowserMatch chromeframe gcf

Header append X-UA-Compatible "chrome=1" env=gcf

</IfModule>

</IfModule>

Nginx: 详细参考:例子

1

add_header "X-UA-Compatible" "IE=Edge,chrome=1";

参考:
http://lightcss.com/add-x-ua-compatible-meta-to-your-website/
http://desert3.iteye.com/blog/1638591

时间: 2024-10-07 05:33:06

HTML Meta中添加X-UA-Compatible和IE=Edge,chrome=1有什么作用?的相关文章

移动前端开发中添加一些webkit专属的HTML5头部标签,帮助浏览器更好解析html代码,更好地将移动web前端页面表现出来。本文整理一些常用的meta标签

<!DOCTYPE html> <!-- 使用 HTML5 doctype,不区分大小写 --><html lang="zh-cmn-Hans"> <!-- 更加标准的 lang 属性写法 http://zhi.hu/XyIa --><head> <!-- 声明文档使用的字符编码 --> <meta charset='utf-8'> <!-- 优先使用 IE 最新版本和 Chrome -->

[Asp.net MVC]Asp.net MVC5系列——在模型中添加验证规则

目录 概述 在模型中添加验证规则 自定义验证规则 伙伴类的使用 总结 系列文章 [Asp.net MVC]Asp.net MVC5系列——第一个项目 [Asp.net MVC]Asp.net MVC5系列——添加视图 [Asp.net MVC]Asp.net MVC5系列——添加模型 [Asp.net MVC]Asp.net MVC5系列——从控制器访问模型中的数据 [Asp.net MVC]Asp.net MVC5系列——添加数据 概述 上篇文章中介绍了添加数据,在提交表单的数据的时候,我们需

Asp.net MVC]Asp.net MVC5系列——在模型中添加

目录 概述 在模型中添加验证规则 自定义验证规则 伙伴类的使用 总结 系列文章 [Asp.net MVC]Asp.net MVC5系列--第一个项目 [Asp.net MVC]Asp.net MVC5系列--添加视图 [Asp.net MVC]Asp.net MVC5系列--添加模型 [Asp.net MVC]Asp.net MVC5系列--从控制器访问模型中的数据 [Asp.net MVC]Asp.net MVC5系列--添加数据 概述 上篇文章中介绍了添加数据,在提交表单的数据的时候,我们需

在html中添加css的方式

如何在html中添加css? 在html中设置css共有三种方式,分别是: 行内式 内嵌式 导入式 1.行内式.即在html标签中的style属性中设置css,值得注意的是css代码的名值对儿用冒号:来连接,用分号分离不同的css样式.这种方式虽然便于观看与调试,但是它违背了结构与表现相分离的原则,我们不推荐使用. <div id="myDiv" style="color:red; background-repeat:no-repeat; font-size:18px&

【在网页中添加滚动文字】

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> <tit

OpenWRT中添加新设备支持

这里还是向OpenWRT中添加对小度路由的支持向 target/linux/ramips/image/makefile中写入新设备 image/build/profile/mt7620a_CLZ=$(call buildFirmware/Default8M/$(1),$(1),mt7620a_clz,MT7620a_CLZ) $(call image/Build/Profile/MT7620a_CLZ,$(1)) base-files中的一些可用配置: base-files/etc/diag.s

【转载】PHP的(&lt;&lt;&lt;EOT)在PHP中添加html

在W3school上学PHP,看到第一句就是"PHP 文件可包含文本.HTML 标签以及脚本"在后来的学习别人的代码,发现在需要HTML代码的PHP脚本中,多用这么几种方法第一种是在HTML中加PHP.大段大段的html代码中,在各个需要执行php的地方.这种方法在ASP的程序中比较常见.例子:     <head>    <meta http-equiv="Content-Type" content="text/html; charse

u-boot中添加mtdparts支持以及Linux的分区设置

简介 作者:彭东林 邮箱:[email protected] u-boot版本:u-boot-2015.04 Linux版本:Linux-3.14 硬件平台:tq2440, 内存:64M   NandFlash: 256MB 下面我们分两部分,u-boot和kernel,首先介绍u-boot中是如何支持mtdparts的,然后简单分析Linux内核设置分区的两种方式: 方式一 在平台代码中写死,然后在初始化NandFlash的时候设置. 方式二 在u-boot中设置,这个比较灵活,u-boot将

如何在网页中添加视频?怎样在网页中添加视频

在网页中添加视频的方法今天终于实现了,为了能让那些需要在网页中自由播放自己的视频的朋友收到这个文章,我把标题写的长了点.首先说一下需求,在之前做的一个静态页面中,要加入一个视频,要求自动播放,还要能暂停,有播放进度的功能,但是在百度上很久,一直没有找到这个问题,可能自己太笨了,后来,没有办法,就引用了优酷的连接,但是这样在去掉广告的情况下,还是经常.偶尔会出现广告,这个很让人火大,因为本身自己就是广告,优酷在放30秒,基本人家已经跳出这个网页了,今天终于在别人的网页中看到了一段代码,于是一搜,找