首页 > 代码库 > 文档模式与IE浏览器模式
文档模式与IE浏览器模式
一、IE浏览器的兼容性视图
兼容性视图是微软为了兼容基于其它网页标准开发的网站,确保广大互联网用户在浏览网页时不至于受困于网页显示混乱的问题,而专门为IE8增加的一项实用功能。当IE8检测到某网站不兼容时,地址栏右侧就会出现兼容性视图按钮,只需轻轻一点,大部分网页显示就会正常了。(网页会以IE7的代码规范来显示)
它引入重要的两个概念便是“浏览器模式”和“文档模式”;
注:也可按F12进入开发人员工具来查看当前页面的浏览器模式和文档模式
二、文档模式
指定IE页面排版引擎根据哪一个版本的方式来解析和渲染HTML。在切换时会导致网页刷新,但其的浏览器模式版本号不会更改,也不会从服务器重新下载网页。切换浏览器模式时,浏览器会自动切换到相应的文档模式。
三、浏览器模式
用于切换IE针对该网页的默认文档模式、对不同版本浏览器的条件备注解析、发送给网站服务器的用户代理(User-Agent)字符串的值。网站可以根据浏览器返回的不同用户代理字符串判断浏览器的版本和安装的功能,这样就可以向不同的浏览器返回不同的页面内容。
四、测试当前IE浏览器文档模型的Js代码
除了按F12进入开发人员工具来查看当前页面的浏览器模式和文档模式以外, 还可以通过js来查看当前页面使用的文档模式, 主要就是用文档兼容性模式属性(documenMode)来判断.
为了模拟不同的ie版本, 在title下面添加<meta http-equiv="X-UA-Compatible" content="IE=7" > </meta>, 必须放在紧挨着title下面的一行.
当设置IE=7时, documentMode=7; 如果IE=8, documentMode=8; 如果是IE9, 则documentMode=9
如果当前机器上安装的是ie9, 即使你把它改为IE=10, documentMode也还是等于9; 如果设置IE=5或者IE=6, 则documentMode始终等于5, 也就是怪异Quirks模式.
例:
<html> <head> <title>my documentmode version is </title> <meta http-equiv="X-UA-Compatible" content="IE=7" > </meta> <script language="javascript"> function Demo() { alert(document.title + " " + document.documentMode); } </script> </head> <body onl oad="Demo()">
</body> </html>
文档模式与IE浏览器模式