zoukankan      html  css  js  c++  java
  • HTML Meta中添加X-UA-Compatible和IE=Edge,chrome=1有什么作用

    
        <!--[if IE 8]>
        <meta http-equiv = "X-UA-Compatible" content = "IE=7,chrome=1" />
        <![endif]-->
        <!--[if ! IE 8]>
        <meta http-equiv = "X-UA-Compatible" content = "IE=edge,chrome=1" />      
        <![endif]-->
       
        <!--[if lt IE 9]>
          <script src="Scripts/html5shiv.min.js"></script>
          <script src="Scripts/respond.min.js"></script>
        <![endif]-->
    
        <link href="Styles/style.css" rel="stylesheet" type="text/css" /> 
        <script src="Scripts/jquery.min.js" type="text/javascript"></script>
         <!--[if IE 8]>
        <meta http-equiv = "X-UA-Compatible" content = "IE=7,chrome=1" />
        <![endif]-->
        <link href="Styles/style.css" rel="stylesheet" type="text/css" />
        <!--[if lt IE 9]>
          <script src="http://apps.bdimg.com/libs/html5shiv/3.7/html5shiv.min.js"></script>
          <script src="http://apps.bdimg.com/libs/respond.js/1.4.2/respond.min.js"></script>
        <![endif]-->
    
    
    X-UA-Compatible是自从IE8新加的一个设置,对于IE8以下的浏览器是不识别的。 通过在meta中设置X-UA-Compatible的值,可以指定网页的兼容性模式设置。
    
    在网页中指定的模式优先权高于服务器中(通过HTTP Header)所指定的模式。 兼容性模式设置优先级:
    
    meta tag > http header
    meta tag > http header
    
    常用的例子:
    
    <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.
    <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 .
    
    Google Chrome Frame 百科
    
    “IE=Edge,chrome=1″这样简单快捷,但是弊端是代码将无法通过W3C验证。其实这并不是问题,毕竟标准只是标准,如果只有这一个“错误”完全不会有任何不良的影响。
    
    IE文档兼容性模式所有可能的值:
    
    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浏览时仍会照常显示。
    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:
    
    <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>
    < 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: 详细参考: 例子
    
    add_header "X-UA-Compatible" "IE=Edge,chrome=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
    
  • 相关阅读:
    从零开始搭建系统1.2——Nginx安装及配置
    从零开始搭建系统1.1——CentOs安装
    从零开始搭框架——系统架构
    从零开始搭建系统——前言
    PHP语法入门以及变量
    用PHP写出计算器
    PHP常量以及基本数据类型
    PHP入门了解
    php中搭建Web服务器和服务器配置
    JS中for,for...in,for...of以及foreach循环的用法
  • 原文地址:https://www.cnblogs.com/chenmfly/p/5711082.html
Copyright © 2011-2022 走看看