【问题标题】:Trying to use IE=edge X-UA-Compatible in an iframe on a page using IE=EmulateIE7尝试在使用 IE=EmulateIE7 的页面上的 iframe 中使用 IE=edge X-UA-Compatible
【发布时间】:2012-09-20 10:15:14
【问题描述】:

我有一个页面将包含在他们使用以下内容的页面上的 iframe 中:

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7"/>

理想情况下,我希望使用用户正在使用的浏览器可用的最新标准模式来呈现我的页面。这可能吗?

我试过包括

<meta http-equiv="X-UA-Compatible" content="IE=edge"/>

在我的页面上,以及更改我的 web 应用程序以包含值为“IE=edge”的“X-UA-Compatible”HTTP 标头,但我似乎无法让它做我想做的事。

奇怪的是,如果我有两个页面,第一个包含 iframe,另一个是 iframe 中显示的内容,如下所示:

<!doctype html>
<html>
<head>
    <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7"/>
    <script>
        console.log("Page document mode: "+document.documentMode);
    </script> 
</head>  
<body>
<iframe src="iframepage.html" /> 
</body>
</html>

<!doctype html>
<html>
<head>
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <script>
        console.log("Iframe document mode: "+document.documentMode);
    </script> 
</head>
<body>
</body>
</html>

结果出乎意料

Page document mode: 7
Iframe document mode: 8

文档模式8从何而来?以及如何让iframe文档变成9以上??

如果有人能指出我正确的方向,我将永远感激不尽! 谢谢, 尼克

【问题讨论】:

  • 我也有同样的问题。你找到解决办法了吗?
  • 很遗憾,恐怕没有
  • 只是猜测,但需要尝试的几件事是 1) 设置 IE=9 而不是 edge,和/或 2) 使用 X-UA-Compatible http 标头,而不是元标记

标签: internet-explorer iframe mode quirks-mode


【解决方案1】:

IE 不允许在框架层次结构中混合 IE9+ 和旧模式。如果您的顶级文档是 IE7,那么您可以在任何内部文档中获得的最高文档是 IE8。同样,您将无法在 IE9 模式页面中托管除 IE9 模式文档之外的任何内容。

【讨论】:

  • 看起来,可以反过来混合模式:标准模式的主页,兼容模式的框架:stackoverflow.com/q/18976213/1768303
  • 重要的是要考虑像这样容易混淆的问题的来源:msdn.microsoft.com/en-us/library/jj676915(v=vs.85).aspx
  • @Noseratio 我在你的另一个问题中看过你的例子,我相信在你的内部框架中你没有看到真正的 IE5\Quirks 模式,而是一种叫做“几乎标准模式”的东西,除了您提到的表格行为外,几乎与标准相同。更多信息在这里:msdn.microsoft.com/en-us/library/ff405912(v=vs.85).aspx。如果这对您有用,那就太好了,但是除了表格之外的东西不会像您期望的那样从纯旧模式中工作。
  • "如果顶级页面不在边缘模式下,Windows Internet Explorer 10 和 Internet Explorer 11 都使用 Quirks 模式仿真。" IE9:“如果顶级页面不是 IE9 模式,则 iframe 元素无法以 IE9 模式呈现其内容,即使 Web 开发人员指定它也是如此。” - msdn.microsoft.com/en-us/library/ff955402(v=vs.85).aspx
猜你喜欢
  • 2012-02-23
  • 2014-12-08
  • 2013-02-20
  • 2014-04-18
  • 2017-03-09
  • 2011-05-15
  • 1970-01-01
  • 2013-01-16
  • 2011-01-20
相关资源
最近更新 更多