IE兼容模式及客户端兼容模式、服务器端兼容模式设置

IE兼容模式:  
为了帮助确保网页在将来的 Internet Explorer 版本中具有一致的外观, Internet Explorer 8  引入了文档兼容性。文件兼容性用于定义IE如何渲染网页。 

怎么查看当前网页在IE下的兼容性模式:  
在浏览器中按F12打开IE开发人员工具,在最上方的工具栏中可以看到浏览器模式和文档模式。 

  • 浏览器模式影响浏览器的行为表现以及声明的版本号
  • 文档模式影响DOM的转换、渲染操作,影响的是浏览器的外观表现,决定网页显示成什么样子的。

客户端兼容性模式默认设置:  
  • 外网网站以标准模式来渲染
  • 内网网站以兼容模式(IE7兼容模式)来渲染
  • 当用IP访问网站时,也是自动以标准模式来渲染,因为IE不能知道ip地址是内网或者外网的
  • 当访问本地html文件时,如‘C:\Temp\MyWebPage.htm’,IE8兼容性模式默认也是关闭的
  • 兼容性模式是针对域名设置的
  • 启用、关闭兼容性模式时,浏览器会自动重新加载(刷新)页面(不需要浏览器重启)

客户端兼容模式设置:  
兼容性模式按钮 
 
只有当切换到兼容性视图 有意义的情况下 (譬如当前正以标准模式查看网页), IE才会显示上述按钮 。其他情况下,如正以Quick模式查看页面或者正在查看内网网页(它们自动用兼容性模式来渲染),IE会自动隐藏这个按钮。 

Tools菜单下的 兼容性视图以及兼容性视图设置画面  
注意:默认情况下,用 兼容性模式(即IE7标准模式)查看内网网站 是被选中的 
 
 

服务器端兼容模式设置:  
即当客户端以兼容性模式视图查看网页时,可以 在服务器上设置以什么标准的兼容性模式来渲染网页 (IE8,IE9下默认启用的是 IE7标准的兼容性模式 ) 
当客户端以标准模式(非兼容性模式)来查看网页时,服务器端的兼容性模式 不会影响标准模式的渲染 。 

若你已于网站服务器指定了一个预设的文件兼容性模式,你可以在个别页面上指定不同的文件兼容性模式来盖过它。 在网页中指定的模式优先权高于服务器中(通过HTTP Header)所指定的模式 。 
兼容性模式设置优先级:  
 

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

例子: 
Html代码   收藏代码
  1. <meta http-equiv="X-UA-Compatible" content="IE=7" />  
  2. 以上代码告诉IE浏览器,无论是否用DTD声明文档标准,IE8/9都会以IE7引擎来渲染页面。  
  3. <meta http-equiv="X-UA-Compatible" content="IE=8" />  
  4. 以上代码告诉IE浏览器,IE8/9都会以IE8引擎来渲染页面。  
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge" />  
  6. 以上代码告诉IE浏览器,IE8/9及以后的版本都会以最高版本IE来渲染页面。  
  7. <meta http-equiv="X-UA-Compatible" content="IE=7,IE=9" />  
  8. <meta http-equiv="X-UA-Compatible" content="IE=7,9" />  

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浏览时仍会照常显示。

注意事项:  
  • 1,根据官网定义X-UA-compatible 标头不区分大小写;不过,它必须显示在网页中除 title 元素和其他 meta 元素以外的所有其他元素之前。如果不是的话,它不起作用
  • 2,content的内容是IE=8,或者IE=edge等值,注意不是IE8或者直接写个edge的值,否则不起作用
primefaces设置
  1. <h:head>  
  2.         <f:facet name="first">  
  3.             <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8" />  
  4.             <meta content='text/html; charset=UTF-8' http-equiv="Content-Type" />  
  5.             <title>PrimeFaces Layout</title>  
  6.         </f:facet>  
  7.         <style type="text/css">  
  8.         </style>  
  9.     </h:head>  

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值