<style type="text/css">
<!--
p
{text-indent:2em}
-->
</style>
做web页面的时候,笔者喜欢用Chrome进行调试。当然Chrome下调出来的页面,跟IE的兼容性是有很大问题的。好在IE8之后,IE的兼容性问题已经有了很大的改观。由于公司做的是企业应用,可以对用户所使用的软、硬件提出一定的要求,至少让他们在IE8及更高版本的浏览器运行系统的要求不算苛刻,于是兼容性问题就好办多了。但是,由于IE8及IE9有“兼容模式”的感念,如果不对页面进行一定的设置,浏览器可能会自动启用兼容模式,并使用Quirks模式或者IE7文档模式对页面进行解析,出现兼容性问题就在所难免了。
我们可以指定页面的文件模式,在网页中使用meta元素放入X-UA-Compatiblehttp-equiv标头。以下是指定为模拟
IE7 模式的范例:
<html>
<head>
<!-- Mimic Internet Explorer 7 -->
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7"/>
<title>My Web Page</title>
</head>
<body>
<p>Content goes here.</p>
</body>
</html>
其内容随著指定的页面模式而更改,指定IE=5,IE=7, 或IE=8即对应选择其中一种兼容性模式。我们也可以指定IE=edge来指示IE8使用它支持的最高模式。
http-equiv 属性
meta元素的http-equiv 属性指示服务器在发送实际的文档之前,先在要传送给浏览器的 MIME 文档头部包含名称/值对。当服务器向浏览器发送文档时,会先发送许多名称/值对。虽然有些服务器会发送许多这种名称/值对,但是所有服务器都至少要发送一个:content-type:text/html。这将告诉浏览器准备接受一个
HTML 文档。
使用带有 http-equiv 属性的 <meta> 标签时,服务器将把名称/值对添加到发送给浏览器的内容头部。例如,添加:
<meta http-equiv="charset"
content="iso-8859-1">
<meta http-equiv="expires"
content="31 Dec 2008">
这样发送到浏览器的头部就应该包含:
content-type: text/html
charset:iso-8859-1
expires:31 Dec 2007
当然,只有浏览器可以接受这些附加的头部字段,并能以适当的方式使用它们时,这些字段才有意义。
X-UA-compatible标头没有大小写之分,这个属性只对IE浏览器起作用。然而除了title元素及其他的meta元素之外,它必须出现在网页head节点其它元素之前的位置。
判定文件兼容性模式
要判定网页使用IE浏览器时的文件兼容性模式,只需查看documentobject(文档对象)的documentMode属性(当然,只有IE浏览器才有这个属性)。例如在IE8的地址栏输入下列代码会显示目前页面的文件模式。
javascript:alert(document.documentMode);
关于DOCTYPE:
IE6允许网页开发人员选择IE编译和显示他们网页的方式。"Quirks mode"为预设,这会使页面以旧版本浏览器的视点显示,"Standards mode"(也称为"strict mode")特点是支持业界标准最为完善。然而要利用这个增强的支持功能,网页必须包含恰当的<!DOCTYPE>指令。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "
http://www.w3.org/TR/html4/strict.dtd">
若一个网页没有包含<!DOCTYPE>指令,IE6会将它以quirks mode显示。若网页包含有效的<!DOCTYPE>指令但浏览器无法辨识,IE6会将它以IE6 standards mode显示。
分享到:
相关推荐
安装VS2013时,如何避开IE10的限制,具体内容如下 VS就会告诉我们目前环境不适合安装VS2013,必须升级IE版本到IE10. 如果不想安装IE10,有没有办法呢? 答案肯定是有的。 将下面一段文字,储存为1.bat文档,然后以...
二手房买卖如何避开户口逾期迁出问题?.docx
避开百度云,使用360浏览器或者迅雷软件下载避开百度云,使用360浏览器或者迅雷软件下载避开百度云,使用360浏览器或者迅雷软件下载避开百度云,使用360浏览器或者迅雷软件下载避开百度云,使用360浏览器或者迅雷...
QQ的密码、个人资料和聊天记录能否安全成为至关重要的问题,为了有效地防止聊天记录等本地信息的丢失和被窃可以采取以下有效措施.
这段代码是一个Python爬虫程序,用于从百度图片搜索中抓取指定关键词的图片。程序通过设置超时时间和请求头等参数,实现了对百度图片搜索结果的访问和解析。程序的主要功能包括: 1. 定义了一个名为`Crawler`的类...
这些模式解决特定的设计问题,使面向对象设计更灵活、优雅,最终复用性更 好。它们帮助设计者将新的设计建立在以往工作的基础上,复用以往成功的设计方案。 一个熟悉这些模式的设计者不需要再去发现它们,而能够...
IE小管家能让你轻松的解决这些问题。 1.它能屏蔽IE弹出窗口于无形之中,启动软件后立即生效.. 2.能根据用户设置的关键字,判断连接是否合法,让你避开令你反感的站点..利用该功能也可防止对目录的访问。 3....
最为实用 避开大跌通达信指标公式源码.doc
人工势场法MATLAB程序,可以避开多个障碍物与
如何把难回答的问题巧妙的避开
scratch3.0编写的投篮游戏,用火柴人实现动画功能,动画生动展现投篮手带球跑动,避开防守者,跳起投篮的画面。
如何把难回答的问题巧妙的避开.rar
近年来,商业模式创新成为管理学界的热门话题。商业模式创新已经改变了整个...分析了在部分特定的公司和市场环境下其商业模式所面临的挑战和机会,并且针对如何避开陷阱、实现高速增长,给出了经过成功实践的创新之道。
经常以那些技术只适合大型项目为由,避开或忽略它们,实际中,Java 的接口或抽象类是真正体现 Java 思想的核心所在,这些 你都将在 GoF 的设计模式里领略到它们变幻无穷的魔力。 GoF 的设计模式表面上好象也是一种...
《让云落地:云计算服务模式(SaaS、PaaS和IaaS)设计决策》共有16 章,作者有意避开了那些与产品或供应商相关的细节,侧重于架构师及架构涉及各方应当解决的各种挑战,或者说如何以适当的解决方案来解决业务问题;...
在使用数据仓库来回答综合性问题的场合,通常可以使用OLAP工具实现记录不多的较高粒度表的维度旋转来满足不同分析的需要;而在数据仓库中较高粒度表中记录非常多或者还要经常回答细节问题的场合,则还必须对数据仓库...
避开无源元件的陷阱和如何设计无源元件的调试
分析了不同产能模式气井的生产特征及影响其开发效果的部分因素,并提出了相应的水平井开发建议,结果表明:制约水平井开发效果的主要因素为地质因素、工程因素和管理因素,其中又以煤储层富集高产认识、断层识别及工程上...