META http-equiv=X-UA-Compatible content=IE=EmulateIE7
注意:本文档是预备文档,随时可能变更。
对于 Web 开发人员来说,文本兼容性是一个要考虑的重要问题。Windows Internet Explorer 8 引入了文本兼容性模式,该模式允许 Web 开发人员将浏览器设置为以与旧版本相同的方式显示网页,从而允许开发人员选择更新时间。
本 文档将介绍由 Windows Internet Explorer 8 支持的文本兼容性模式,以及如何使用自定义标头基于每个页面或每个站点实现这些模式。实现适当的兼容性模式后,可以确保站点与 Windows Internet Explorer 8 及更高版本兼容。
各种兼容性模式
Windows Internet Explorer 8 支持多种兼容性模式,它们可启用不同的受支持的功能,并影响内容的呈现方式。例如,
IE5 模式呈现内容时,像是使用了 Windows Internet Explorer 7 的 Quirks 模式,这与 Windows Internet Explorer 5 显示内容的方式很相似。
IE7 模式呈现内容时,无论页面是否包含 <!DOCTYPE> 指令,都像是使用了 Windows Internet Explorer 7 的标准模式。
EmulateIE7 模式通知 Windows Internet Explorer 使用 <!DOCTYPE> 指令确定如何呈现内容。标准模式指令以 Windows Internet Explorer 7 标准模式显示,而 Quirks 模式指令以 IE5 模式显示。与 IE7 模式不同,EmulateIE7 模式遵循 <!DOCTYPE> 指令。对于多数网站来说,它是首选的兼容性模式。
IE8 模式最大限度地支持行业标准(包括 W3C Cascading Style Sheets Level 2.1 Specification 和 W3C Selectors API,并能有限支持 W3C Cascading Style Sheets Level 3 Specification(工作草案)。
Edge 模式通知 Windows Internet Explorer 以最高级别的可用模式显示内容,这实际上破坏了“锁定”模式。对于 Windows Internet Explorer 8,这与 IE8 模式是等效的。如果(假定)Windows Internet Explorer 的未来版本支持更高级别的兼容模式,设置为 Edge 模式的页面将显示在由该版本支持的最高级别模式中;但是,当使用 Windows Internet Explorer 8 查看时,这些相同的页面仍将显示在 IE8 模式中。由于在 Windows Internet Explorer 的未来版本中呈现页面内容可能出现意外,建议 Web 开发人员将 Edge 模式仅用于测试页面和其他非生产活动。
基于每个页面指定兼容性模式
要为网页指定文本模式,请使用 META 元素,以在该网页中包含 X-UA-Compatible http-equiv 标头。以下示例指定了 EmulateIE7 模式兼容性。
HTML:
<html><head><!-- Mimic Internet Explorer 7 --><title>我的网页</title><meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> </head> <body> <p>内容在此处。</p> </body> </html>
Content 属性指定了该页面的模式;例如,要模仿 Windows Internet Explorer 7 的行为,请指定 IE=EmulateIE7。同样,可指定 IE=5、IE=7 或 IE=8 以选择其中一种兼容性模式。您还可以指定 IE=edge 以通知 Windows Internet Explorer 8 使用最高级别的可用模式。
X-UA-compatible 标头不区分大小写;但是,它必须显示在网页中除 TITLE 和其他 META 元素以外的所有元素之前的标头(HEAD 部分)中。
基于每个站点指定兼容模式
通过使用 Web 服务器为站点定义自定义 HTTP 响应标头,可为网站指定文本模式。HTTP 响应标头是 Web 服务器附加到为响应 HTTP 请求而发送到浏览器中的文件的信息,这些信息通常包含发送回文件的日期、大小和类型。
下列文档介绍了将 Web 服务器配置为将自定义 HTTP 响应标头附加到所有网页中所需的步骤。这将导致 Windows Internet Explorer 8 使用指定的文本兼容性模式,例如 EmulateIE7。
在 IIS 上实现 META 切换
在 Apache 上实现 META 切换
如果使用 Web 服务器指定了默认文本兼容性模式,则可通过在特定的网页中指定其他文本兼容性模式来覆盖该设置。在该网页中指定的模式优先于由服务器指定的模式。
使用脚本确定文本兼容性模式
要使用 Windows Internet Explorer 8 确定网页的文本兼容性模式,请使用 document 对象的 documentMode 属性。例如,将以下内容键入到 Windows Internet Explorer 8 的地址栏中,可显示当前网页的文本模式。
javascript:alert(document.documentMode);
documentMode 属性可返回与页面的文本兼容性模式相对应的数值。例如,如果所选页面支持 IE8 模式,则 documentMode 会返回 8。
注意:在 Windows Internet Explorer 6 中引入的 compatMode 属性已不受支持,取而代之的是在 Windows Internet Explorer 8 中引入的 documentMode 属性。当前使用 compatMode 的应用程序仍然可以在 Windows Internet Explorer 8 中运行;但是,它们已更新为使用 documentMode。
如果希望使用 JavaScript 确定文本的兼容性模式,请在其中包含支持 Windows Internet Explorer 旧版本的代码,如以下示例所示。
JScript:
engine = null; if (window.navigator.appName == "Microsoft Internet Explorer") { // 这是一个 IE 浏览器。引擎处于哪种模式下?if (document.documentMode) // IE8 engine = document.documentMode; else // IE 5-7 { engine = 5; // 假设为 quirks 模式;除非另外证实是其他模式 if (document.compatMode){ if (document.compatMode == "CSS1Compat") engine = 7; // 标准模式 } } // 引擎变量现在包含文本兼容性模式。 }
此处使用的文档对象表示给定浏览器窗口中的 HTML 文档,可用来检查、修改 HTML 文档或将内容添加到该文档以及处理该文档中的事件。
使用条件注释确定文本兼容性模式
如果只需要适应 Windows Internet Explorer,以下代码示例说明了如何使用条件注释来适用于当前版本或旧版本。
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN"> <html> <head> <title>测试页</title> <meta http-equiv="X-UA-Compatible" content="IE=8"/> <!--[if gte IE 8]> <style type="text/css"> body {color:#0000ff;} </style> <![endif]--> <!--[if lt IE 8]> <style type="text/css"> body {color:#000000;background-color:#ffffff; } </style> <![endif]--> </head> <body> <h1><!--[if gte IE 8]>第 1 章。<![endif]-->第一章</h1><h1> <!--[if gte IE 8]>第 2 章。<![endif]--> 第二章</h1>将看到任何版本的文本。</body> X-UA-Compatible是针对ie8新加的一个设置,对于ie8之外的浏览器是不识别的,这个区别与 content="IE=7"在无论页面是否包含<!DOCTYPE>指令,都像是使用了 Windows Internet Explorer 7的标准模式。而content="IE=EmulateIE7"模式遵循<!DOCTYPE>指令。对于多数网站来说,它是首选的兼容性模式。
目前IE8尚在测试版中,所以为了避免制作出的页面在IE8下面出现错误,建议直接将IE8使用IE7进行渲染。也就是直接在页面的header的meta标签中加入如下代码:
<meta http-equiv="X-UA-Compatible" content="IE=7" /> 这样我们才能使得页面在IE8里面表现正常!
转载于:https://www.cnblogs.com/tnnyang/p/4123523.html
META http-equiv=X-UA-Compatible content=IE=EmulateIE7相关推荐
- NLTK基础教程学习笔记(二)
Python基础: 字典(dictionary)也是最常用到的一种数据结构.在其他语言中被称为关联数组/存储.字典是一种键值索引型的数据结构,其索引键可以是一种不可变的类型,例如字符串和数字常被用来充 ...
- NLTK01 《NLTK基础教程--用NLTK和Python库构建机器学习应用》
01 关于NLTK的认知 很多介绍NLP的,都会提到NLTK库.还以为NLTK是多牛逼的必需品.看了之后,感觉NLTK对实际项目,作用不大.很多内容都是从语义.语法方面解决NLP问题的.感觉不太靠谱. ...
- 标记meta http-equiv = X-UA-Compatible content = IE=edge,chrome=1
为什么80%的码农都做不了架构师?>>> 陌生标记标记一: < meta http-equiv = "X-UA-Compatible" content ...
- IE 8兼容:meta http-equiv=X-UA-Compatible content=IE=edge / X-UA-Compatible的解释
前言:9月份开始了,大四也真正的到来了.深知自己网页布局还有很大的缺陷,接下来打算从工作中抽时间出来模仿着一些互联网公司的网站.顺便把基础理论知识打好. 第一个目标:小米官网:后续会把练习的项目放到g ...
- 设置双核浏览器的浏览模式meta name=“renderer” content=“webkit|ie-comp|ie-stand”
今天上知乎看到有人在上邀请我回答这样一个问题:如果访问的页面中有 CSS3 代码,双核浏览器会自动切换到 Webkit 内核吗?http://www.zhihu.com/question/200946 ...
- meta http-equiv=X-UA-Compatible content=IE=7 /意思是将IE8用IE7进行渲染,使网页在IE8下正常...
X-UA-Compatible是针对ie8新加的一个设置,对于ie8之外的浏览器是不识别的,这个区别与content="IE=7"在无论页面是否包含<!DOCTYPE> ...
- meta http-equiv=X-UA-Compatible content=IE=edge,chrome=1 /
X-UA-Compatible是针对IE8新加的一个设置,对于IE8之外的浏览器是不识别的,这个区别与content="IE=7"在无论页面是否包含<!DOCTYPE> ...
- meta http-equiv=X-UA-Compatible content=IE=edge / 的说明
X-UA-Compatible是针对ie8新加的一个设置,对于ie8之外的浏览器是不识别的,这个区别与content="IE=7"在无论页面是否包含<!DOCTYPE> ...
- 详解 meta http-equiv = X-UA-Compatible content = IE=edge,chrome=1 /
< meta http-equiv = "X-UA-Compatible" content = "IE=edge,chrome=1" /> 这是个是 ...
最新文章
- linux 上配置swoole
- mysql 外键有啥用途_Mysql外键是什么?有哪些用处?(图文+视频)
- mysql平台workb_MySQL分布式事务
- 数据分析工具有多好用?Yonghong Z-Suite V8.8 发布,实现20余项功能新改变!
- CentOS6.3 重启后/etc/resolv.conf 被还原解决办法
- 机器学习笔记(十三)——隐马尔科夫模型
- 倒了血霉!先是贾跃亭后有罗永浩,被拖欠4400多万,最惨公司无疑了
- Windows下JDK开发环境搭建及环境变量配置
- 斯坦福大学自然语言处理第二课“文本处理基础(Basic Text Processing)”
- 微软官宣 Windows 11:全新 UI、原生支持安卓 App、应用商店 0 抽成
- 信息安全工程师考试大纲(2016)
- 湖南大学计算机专业毕业生待遇,分享湖南大学2017年毕业生就业基本情况及质量薪资...
- ie11无法播放html,IE11无法显示flash?IE11无法播放视频的解决方法
- power oj 2866 青春猪头少年不做怀梦美少女的梦
- yolov5 训练结果解析
- oracle数据库经典练习题及答案
- 信息平台课件服务器,《CDN平台介绍v》PPT课件.ppt
- 像素、移动端网页——CSS
- Python WOE的使用
- k-means算法进行员工培训方向分组
热门文章
- mysqladmin 设置用户名初始密码报错you need the SUPER privilege for this operation
- 获取验证码canvas
- 百会CRM教你在大数据平台中做精准营销
- ASP.NET MVC增删改查
- centos7 + VMware Workstation Pro
- (转)java redis使用之利用jedis实现redis消息队列
- 菲波拉契数列(传统兔子问题)
- http协议网络编程
- CodeForces 359D (数论+二分+ST算法)
- 分析 C# 2.0 新特性 -- 范型(Generics)