IE8兼容模式何时会像IE7一样?

时间:2014-10-29 10:12:28

标签: html internet-explorer internet-explorer-8 quirks-mode ie8-compatibility-mode

我的团队曾IE8 Quirks mode询问我是否与ERP软件兼容,我已经对quirks模式进行了一些阅读,我明白这是为了将页面呈现为好像是在IE5中进行渲染,但不支持任何库。但我听说在某些情况下浏览器中的IE8 Compatibility Mode可以IE7运行。

我们使用的软件门户在html内呈现iView,迫使其在quirks mode中呈现。我已使用以下样式构建html

<doctype html>
<html lang="en">
   <head>
     <meta charset="utf-8">
     <meta http-equiv="X-UA-Compatible" content="IE=edge">
     ....
     <body>
     ....
     <!-- load jQuery and other libraries followed by my code-->   
     </body>
</html>

这会呈现为IE7,我如何找到它呈现的模式以及如何强制它呈现为IE8或IE7?

1 个答案:

答案 0 :(得分:1)

首先,回答你的问题:

  1. 它可能会在IE7模式下呈现,但这取决于它的服务方式,应用于页面的安全区域以及许多其他环境因素。鉴于你的帖子中的细节,我想它不会在IE7模式下呈现。 (更多内容)

  2. 如果您在最新版本的IE中加载页面,则页面可能会以边缘模式呈现(即IE11标准模式)。您可以通过按F12并从F12工具工具栏区域中读取当前文档模式来检查。您还可以使用window.document.documentMode属性来确定当前的文档模式(如果支持)。

  3. 有几种方法可以强制它进入各种文档模式。通常,您必须使用兼容x-ua的标头来指定所需的模式(例如content="IE=8")。您选择的值告诉IE使用可用的最高模式。在IE11发布之前,边缘模式被认为是实验性的;现在it's preferred

  4. 这可能(或可能不)在IE7模式下呈现的原因取决于页面的服务方式。如果它在Intranet区域中提供并且IE设置为在兼容性视图中显示Intranet页面,那么页面可能会以IE7模式呈现。话虽如此,您所描述的较大环境可能意味着该页面未在IE7模式下呈现。

    iframe会影响等式。如果您的ASP页面将Iview呈现为iframe,则结果取决于父文档。如果父文档以怪异模式呈现,则子文档将以怪异模式呈现。 (至少对于IE的最新版本而言;事情会发生变化in earlier versions)。

    因此,如果您提供的代码位于iframe中,则结果将取决于包含iframe的网页的文档模式。

    现在,为了控制局面,你应该花点时间阅读nitty gritty details。接下来,您可能希望在代码中添加一些调试代码,以便在呈现页面后显​​示当前文档模式,以便您可以测试不同实验的结果。

    请记住,您不一定需要在页面中放置兼容x-ua的内容。 (您可以使用组策略或拥有server send headers。)

    最后,如果您安装了Windows 8.1 Update,则可能需要尝试尝试Enterprise IE (EMIE)。这迫使IE11进入IE8模式,比IE8文档模式更准确地模拟IE8的行为。

    我知道这是一般性的,但您寻找的答案在很大程度上取决于您正在使用的具体细节。希望这会使你朝着正确的方向前进。

    希望这会有所帮助......

    - Lance