IE浏览器模式、文档模式及兼容视图的事儿

浏览器模式(Browser Mode)

“浏览器模式”主要有两个作用

  • 向外宣称自己是什么浏览器。比如向web服务器发送请求时,告诉服务器是什么类型的userAgent在浏览,这样服务器可以据此返回“合适”的代码。

  • 确定默认的文档模式。

文档模式(Document Mode)

“文档模式”指定IE的页面排版引擎(Trident)以哪个版本的方式来解析并渲染网页代码。

每一种浏览器模式对应一种默认的文本模式,网站还可以通过一些手段来更改文本模式,它代表的是浏览器以何种模式呈现页面。

作用简述
  • 浏览器通过请求头里userAgent的值,告诉服务器当前是何种浏览器模式;

  • 服务器可以通过下面方式改变浏览器文本模式:

    • doctype

    • X-UA-Compatible Meta或对应的响应头

兼容视图

为了解决新版浏览器不兼容旧网站的问题,IE8开始增加了一种叫“兼容性视图”的功能,可以让网页以IE7的代码规范来显示。这样解决了大部分由于代码标准不一致引起的网页问题。

IE9支持的浏览器模式
# userAgent 默认文档模式
IE7 MSIE 7.0 IE7标准
IE8 MSIE 8.0 && Trident/4.0 IE8标准
IE9 MSIE 9.0 && Trident/5.0 IE9标准
IE9兼容视图 MSIE 7.0 && Trident/5.0 IE7标准  
IE9文档模式决定流程图

IE浏览器模式、文档模式及兼容视图的事儿