DBMNG数据库管理与应用

书籍是全世界的营养品。生活里没有书籍,就好像没有阳光;智慧里没有书籍,就好像鸟儿没有翅膀。
当前位置:首页 > 经验分享 > HTML5

关于content=”IE=edge,chrome=1″介绍-让网页优先采用Chrome渲染

摘要:1、如果支持Google Chrome Frame:GCF,则使用GCF渲染;2、如果系统安装ie8或以上版本,则使用最高版本ie渲染;3、否则,这个设定可以忽略。

  1. Google Chrome Frame
  2. w3.org的html5验证
  3. 总结

http-equiv-x-ua-compatible-content-ie-edge-chrome-1

最近稍微了解了一下瀑布树这东东,在查看Wookmark jQuery plugin,注意到meta中有这么一句:

view sourceprint
1.<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

其中http-equiv=”X-UA-Compatible”这个是IE8的专用标记,是用来指定Internet Explorer 8 浏览器模拟某个特定版本IE浏览器的渲染方式,以此来解决IE浏览器的兼容问题。

以前css hacker常用的模拟IE7渲染方式的代码:

view sourceprint
1.<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7">

令我好奇的是文章第一段提到的代码中「content=”IE=edge,chrome=1″」一段,字面意思是指定IE使用chrome的渲染方式?还是让IE的皮使用后台的Chrome内核?

Google Chrome Frame

查了一下,这段是Google开发的一个Google Chrome Frame「Google Chrome 浏览器内嵌框架 - GCF」。使用GCF可以让用户的IE浏览器外观不变,但用户在浏览网页时实际上使用的是Chrome的内核,并且支持Windows XP及以上系统的IE6/7/8。

而第一段中提到的代码则是指定该页面使用Chrome内核来做渲染,前提是用户必须已经安装了Google Chrome Frame。

官方对其定义:

  • 可使用开放式网络技术(如 HTML5 canvas 标记)立即启动,甚至包括 Internet Explorer 6、7 或 8 尚不支持的技术。
  • 利用 JavaScript 性能增强功能,使应用程序速度更快,响应更灵敏。

所以这段代码则可以解释为:如果安装了GCF,则使用GCF来渲染页面「”chrome=1″」,如果没有安装GCF,则使用最高版本的IE内核进行渲染「”IE=edge”」

w3.org的html5验证

然而,下一个问题又来了,在w3.org的html5验证工具下:

w3-org-validation-output-error

介个也好解决,针对三种主流服务器,我们都可以在服务器端配置http equiv规则:

1、apache服务器

确保 mod_headers 和 mod_setenvif 是available的,然后在httpd.conf「新版Apache的配置文件是 apache2.conf」或者在.htaccess中加入以下规则:

view sourceprint
1.<IfModule mod_setenvif.c>
2.<IfModule mod_headers.c>
3.BrowserMatch chromeframe gcf
4.Header append X-UA-Compatible "chrome=1" env=gcf
5.</IfModule>
6.</IfModule>

2、Windows Server在IIS7或者更高版本的服务器

只需要修改web.config文件,添加如下信息即可:

view sourceprint
01.<configuration>
02.<system.webServer>
03.<httpProtocol>
04.<customHeaders>
05.<add name = "X-UA-Compatible" value = "chrome=1" />
06.</customHeaders>
07.</httpProtocol>
08.</system.webServer>
09.</configuration>

3、Nginx服务器

只需要找到ginx.conf并编辑,在server { }区域里(最好是闭合符前面起一行)添加下列代码即可:

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

总结

  1. 如果支持Google Chrome Frame:GCF,则使用GCF渲染;
  2. 如果系统安装ie8或以上版本,则使用最高版本ie渲染;
  3. 否则,这个设定可以忽略。
本站文章内容,部分来自于互联网,若侵犯了您的权益,请致邮件chuanghui423#sohu.com(请将#换为@)联系,我们会尽快核实后删除。
Copyright © 2006-2023 DBMNG.COM All Rights Reserved. Powered by DEVSOARTECH            豫ICP备11002312号-2

豫公网安备 41010502002439号