版权声明:本文为博主原创文章,未经博主同意不得转载。 https://blog.csdn.net/hatmore/article/details/37611911

ie8 引入了一个新的概念。“文档模式” ,页面的文档模式决定了。能够使用什么功能。

也就是说,”文档模式“,决定你了你能够使用哪个级别的css,在javascript能够使用哪些API,

以及怎样对待文档类型(doctype)。

两种方式改动: 

  1. 通过 meta 标签改动,<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7">
  2. 在server端改动, res.setHeader("X-UA-Complatible","EmulateIE7") //node.js

var mode = document.documentMode;

知道页面採用的是什么文档模式,有助于理解页面的行为方式。不管在什么文档模式下,都能够訪问这个属性。

在IE 11 中 mode 的值可能是  5,7,8,9,10,11

Edge:始终以最新的文档模式来渲染页面。

忽略文档类型声明。

对于IE10。始终保持以IE10标准模式渲染页面。对于IE11,则以IE11 标准模式渲染页面。

 EmulateIE9:假设有文档类型声明,则以IE9 标准模式渲染页面,否则将文档模式设置为IE5。
 EmulateIE8:假设有文档类型声明。则以IE8 标准模式渲染页面,否则将文档模式设置为IE5。
 EmulateIE7:假设有文档类型声明。则以IE7 标准模式渲染页面,否则将文档模式设置为IE5。
 9:强制以IE9 标准模式渲染页面。忽略文档类型声明。
 8:强制以IE8 标准模式渲染页面,忽略文档类型声明。
 7:强制以IE7 标准模式渲染页面。忽略文档类型声明。
 5:强制将文档模式设置为IE5。忽略文档类型声明。

使用X-UA-Compatible标头(或者在server)来指定你的页面支持的IE版本号。

使用document.documentMode判定页面的兼容性模式。

全栈JavaScript之路( 二十二 )IE 专有扩展——文档模式的更多相关文章

  1. 全栈JavaScript之路(十九)HTML5 插入 html标记 ( 一 )innerHTML 与outerHTML

    在须要给文档插入大量的html 标记下.通过DOM操作非常麻烦,你不仅要创建一系列的节点,并且还要小心地依照顺序把它们接结起来. 利用html 标签 插入技术,能够直接插入html代码字符串,简单.高 ...

  2. 全栈JavaScript之路(十八)HTML5 自己定义数据属性

    HTML5 规范规定,用户能够为元素 自己定义非标准属性, 可是要加入 data- 前缀. 目的是为元素提供与页面渲染无关的信息.或者语义信息.这些属性名能够任意加入,仅仅要带上前缀 data- 开头 ...

  3. 全栈JavaScript之路(十四)HTML5 中与class属性相关的扩充

    1. getElementByClassName() :支持getElementsByClassName()方法的浏览器有IE 9+.Firefox 3+.Safari 3.1+.Chrome 和 O ...

  4. 全栈JavaScript之路(十六)HTML5 HTMLDocument 类型的变化

    HTML5 扩展了 HTMLDocument, 添加了新的功能. 1.document.readState = 'loading' || 'complete'  //支持readyState 属性的浏 ...

  5. 全栈JavaScript之路(十)学习 DocumentFragment 类型 节点

    DocumentFragment 类型节点,代表一个文档片段,是一种轻量级的'文档' 对象.能够包括其他类型节点,并有能力訪问.操作当中的节点,可是在文档中没有文档标记,相当于是一个页面不可见的容器. ...

  6. “全栈2019”Java多线程第二十二章:饥饿线程(Starvation)详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  7. “全栈2019”Java多线程第十二章:后台线程setDaemon()方法详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  8. “全栈2019”Java异常第二十二章:try-with-resources语句详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异 ...

  9. “全栈2019”Java异常第十二章:catch与异常匹配

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异 ...

随机推荐

  1. MONGODB(四)——DBObject与JavaBean转换

    一.DBObject 转为 JavaBean /** * 将实体Bean对象转换成DBObject * */ public static <T> DBObject beanToDBObje ...

  2. 《深入理解Java虚拟机》(五)JVM调优 - 工具

    JVM调优 - 工具 JConsole:Java监视与管理控制台 JConsole是一个机遇JMX(Java Management Extensions,即Java管理扩展)的JVM监控与管理工具,监 ...

  3. 《深入理解Java虚拟机》(一)Java虚拟机发展史

    Java虚拟机发展史 1.Sun Classic/Exact VM 1.Sun Classic:世界第一款商用Java虚拟机. 2.Exact VM:准确式GC:虚拟机可以知道内存中的某个位置的数据具 ...

  4. spring boot升级到2.x的坑

    升级到spring boot 2.x后,发现了好多坑,现记录下来. 1.pom文件依赖的变化 1.x中,依赖是这样的: <dependency> <groupId>org.sp ...

  5. Node Redis 入门

    基础准备:Node.Js .npm或cnpm.redis安装 1.建立一个项目文件夹,这里命名 wxfc ,打开命令行输入 npm install redis . 因为没有创建package.json ...

  6. [PHP] 算法-根据前序和中序遍历结果重建二叉树的PHP实现

    输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字.例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5 ...

  7. JavaSE-基础语法(二)-系统类(java.lang.*)和工具类(java.util.*)

    系统类(java.lang.*)和工具类(java.util.*) 一.系统类(java.lang.*) 这个包下包含java语言的核心类,如String.Math.System和Thread类等,使 ...

  8. 【c++】计算句子中单词的平均长度

    Description 编程输入一行文本,计算这行文本的单词平均长度.假设每个单词用至少一个空格或者标点(英文逗号.句号)隔开.使用C++ string类型. Input 输入一行文本,不包含数字 O ...

  9. Spark 跑 java 示例代码

    一.下载示例代码: git clone https://github.com/melphi/spark-examples.git 从示例代码中可以看到 pox中引入了 Spark开发所需要的依赖. 二 ...

  10. 【代码笔记】Web-JavaScript-JavaScript注释

    一,效果图. 二,代码. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...