如何解决IE8文件兼容性问题
温馨提示:这篇文章已超过377天没有更新,请注意相关的内容是否还可用!
本文将详细讲解如何解决IE8文件兼容性问题。文章内容质量很高,分享给大家,作为参考。希望您看完本文后对相关知识有一定的了解。给大家介绍一下如何适配IE8风格兼容。为了帮助确保您的网页在所有未来版本的 IE 中具有一致的外观,IE8 引入了 IE8 文件兼容性。在 IE6 中引入了额外的兼容模式,IE8 文件兼容性使您可以在 IE 渲染网页时选择特定的编译模式。IE8支持多种IE8文件兼容模式,这些模式具有不同的特性并影响内容的显示方式。Standardsmode 命令将显示为 IE8Standardsmode,quirksmode 将显示为 IE5mode。网站管理员可以通过为网站定义自定义标头来为其网站预设特定的 IE8 文件兼容模式。documentMode函数将返回当前页面的IE8文件兼容模式对应的值。
本文将详细讲解如何解决IE8文件兼容性问题。 文章内容质量很高,分享给大家,作为参考。 希望您看完本文后对相关知识有一定的了解。
给大家介绍一下如何适配IE8风格兼容。 为了帮助确保您的网页在所有未来版本的 IE 中具有一致的外观,IE8 引入了 IE8 文件兼容性。 在 IE6 中引入了额外的兼容模式,IE8 文件兼容性使您可以在 IE 渲染网页时选择特定的编译模式。
IE8风格兼容适配方法
IE8 文件兼容性定义了 IE 如何编译网页。 本文介绍了 IE8 文件兼容性、如何指定网站的 IE8 文件兼容模式以及如何确定网页应使用的文件模式。
前言
为了帮助确保您的网页在所有未来版本的 IE 中具有一致的外观和风格,IE8 引入了 IE8 文件兼容性。 在 IE6 中引入了额外的兼容模式,IE8 文件兼容性使您可以在 IE 渲染网页时选择特定的编译模式。
新IE 为了保证网页在未来版本中具有一致的外观,IE8引入了IE8文件兼容性。 当您引入额外的兼容模式时,本文解释了 IE8 文件兼容的必要性,列出了现有 IE 版本可以使用的 IE8 文件兼容模式,并演示了如何选择特定的兼容模式。
需要了解IE8文件兼容性
IE 的每个主要版本都添加了新功能,使浏览器更易于使用、提高安全性并更好地支持行业标准。 使用这些作为 IE 功能的风险之一是旧版本的网站无法正确显示。
为了最大限度地降低这种风险,IE6 允许 Web 开发人员选择 IE 编译和显示其网页的方式。 “Quirksmode”是默认模式,这会导致页面从旧版本浏览器的角度显示,“Standardsmode”(也称为“strictmode”)具有对行业标准最全面的支持。 但是,要利用这种增强的支持,网页必须包含适当的指令。
如果网页不包含指令,IE6 将以怪异模式显示它。 如果网页包含有效命令但浏览器无法识别它们,IE6 将以 IE6standards 模式显示它。 由于少数站点已经包含该指令,因此切换兼容模式非常成功。 这使得 Web 开发人员能够选择将其网页迁移到标准模式的最佳时机。
随着时间的推移,更多的站点开始使用标准模式。 他们还开始使用 IE6 的特性和功能来检测 IE。 比如IE6不支持通用选择器(即css的全局选择器*{}),有的网站用它来针对IE进行特定的对应。
当 IE7 添加了对全局选择器的支持时,依赖 IE6 功能的网站将无法检测到这个新版本的浏览器。 因此,那些针对IE的特定对应关系无法应用于IE7,导致这些网站无法按预期显示。 由于仅支持两种兼容模式,受影响的网站所有者被迫更新其网站以支持 IE7。
IE8 比任何以前版本的浏览器都更支持行业标准,因此为旧版浏览器设计的网页可能无法按预期呈现。 为了帮助缓解所有问题,IE8 引入了 IE8 文件兼容性的概念,使您能够选择您的网页设计对应的特定 IE 版本。 IE8文件兼容性在IE8中添加了一些新模式,这些模式可以告诉浏览器如何解析和编译网页。 如果你的网页在ie8中无法正确显示,你可以更新你的网站以支持最新的网页标准(首选选项)或者在你的页面中添加一个meta元素来告诉IE8如何按照旧版本的浏览器编译你的页面。 这使您可以选择何时更新站点以支持 IE8 中的新功能。
了解 IE8 文件兼容模式
IE8支持多种IE8文件兼容模式,这些模式具有不同的特性并影响内容的显示方式。
◆-EmulateIE8mode 指示IE 使用指令来决定如何编译内容。 Standardsmode 命令将显示为 IE8Standardsmode,quirksmode 将显示为 IE5mode。 与 IE8mode 不同,EmulateIE8mode 认真对待指令。
◆-EmulateIE7mode 指示 IE 使用指令来决定如何编译内容。 Standardsmode 命令将显示为 IE7Standardsmode,quirksmode 将显示为 IE5mode。 与 IE7mode 不同,EmulateIE7mode 认真对待指令。 这是许多网页最推荐的兼容模式。
-IE5mode编译的内容与IE7的quirksmode中显示的内容类似,与IE5中显示的内容非常相似。
◆-IE7mode编译的内容与IE7标准模式的显示状态相同,无论网页是否包含指令。
◆-IE8mode提供对行业标准的全面支持,包括W3CCascadingStyleSheetsLevel2.1Specification和W3CSelectorsAPI,以及对W3CCascadingStyleSheetsLevel3Specification(WorkingDraft)的有限支持。
◆-Edgemode 指示IE 以当前可用的VPN 模式显示内容。 使用IE8时相当于IE8模式。 如果(假设)将来发布支持更高兼容模式的IE,使用Edgemode的页面将使用该版本可以支持的***模式来显示内容。 使用 IE8 查看时,这些相同的页面仍会照常显示。
由于edgemode使用该IE版本支持的***模式来显示浏览网页的内容,因此建议仅将其用于测试页面和其他非商业页面。
指定IE8文件兼容模式
要指定网页的文件模式,您需要将 X-UA-Compatiblehttp-equiv 标头放入网页的元元素中。 以下是为与 EmulateIE7mode 兼容而指定的示例。
MyWebPage Contentgoeshere.
其内容随指定的页面模式而变化。 模拟 IE7 时,指定 IE=EmulateIE7、指定 IE=5、IE=7 或 IE=8 以选择其中一种兼容模式。 您还可以指定IE=edge来指示IE8使用它支持的***模式。
X-UA 兼容标头区分大小写。 但是,除了 title 元素和其他元元素之外,它必须出现在网页标题部分中的其他元素之前。
配置Web服务器以指定默认兼容模式
网站管理员可以通过为网站定义自定义标头来为其网站预设特定的 IE8 文件兼容模式。 具体方法取决于您的网络服务器。 例如,以下 web.config 文件使 Microsoft Internet 信息服务 (IIS) 能够定义自定义标头,以使用 IE7 模式自动编译所有网页。
如果您在 Web 服务器上指定了默认的 IE8 文件兼容模式,则可以通过在各个页面上指定不同的 IE8 文件兼容模式来覆盖它。 网页上指定的模式优先于服务器上指定的模式。
确定IE8文件兼容模式
要确定使用 IE8 浏览网页时的 IE8 文件兼容模式,可以使用 documentobject(文档对象)的 documentMode 函数。 例如,在IE8的地址栏中输入以下代码,将显示当前页面的文档模式。
javascript:alert(document.documentMode);
documentMode函数将返回当前页面的IE8文件兼容模式对应的值。 例如,如果指定网页支持IE8模式,则documentMode将返回值“8”。
IE6中引入的compatMode函数不支持IE8中引入的documentMode函数。 当前使用 compatMode 构建的应用程序仍可在 IE8 中运行,但必须更新为使用 documentMode。
如果您想使用JavaScript来确定文件的兼容模式,请导入以下示例代码以支持旧版本的IE。
engine=null; if(window.navigator.appName=="MicrosoftInternetExplorer") { //ThisisanIEbrowser.Whatmodeistheenginein? if(document.documentMode)//IE8 engine=document.documentMode; else//IE5-7 { engine=5;//Assumequirksmodeunlessprovenotherwise if(document.compatMode) { if(document.compatMode=="CSS1Compat") engine=7;//standardsmode } } //theenginevariablenowcontainsthedocumentcompatibilitymode. }
识别内容属性值
内容属性值可以弹性接收除前面所述的值之外的值。 这使您可以更好地控制 IE 如何显示网页。 例如,您可以将内容属性值设置为 IE=7.5。 当您执行此操作时,IE 会尝试将此值转换为版本向量并选择最接近的结果。 在本例中,IE 将其设置为 IE7mode。 以下示例显示了模式设置为其他值时的情况。
注意:前面的示例显示了各个内容值。 事实上,IE只会执行网页中的第一个X-UA-Compatible header。
您还可以使用 content 属性指定多种 IE8 文件兼容模式,这有助于确保您的网页在未来的浏览器版本中显示一致。 要设置多种文件模式,请设置内容属性来标识您要使用的模式。 使用分号分隔模式。
如果特定版本的 IE 支持多种所请求的兼容模式,则将使用标头的 *** 内容属性中列出的可用模式。 您可以使用此功能来排除特定的兼容模式,但不建议这样做。 例如,以下标头将排除 IE7mode。
综上所述
兼容性是网页设计师非常重要的考虑因素。 虽然完全有可能创建一个完全不依赖于任何网络浏览器特性或功能的网站,但有时这是不可能的。 IE8文件兼容模式可以将网页限制为特定版本的IE。
使用 X-UA-Compatible 标头指定您的页面支持的 IE 版本。 使用 document.documentMode 确定页面的兼容模式。
通过选择支持特定版本的 IE,您可以确保您的页面在未来的浏览器版本中显示一致。
我在这里分享一下如何分析IE8文件兼容性问题。 希望以上内容能够对您有所帮助,让您能够学到更多的知识。 如果您觉得文章不错,可以分享出去,让更多的人看到。