首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >是否强制IE9进入怪癖模式?

是否强制IE9进入怪癖模式?
EN

Stack Overflow用户
提问于 2011-02-26 06:17:44
回答 3查看 27.5K关注 0票数 19

我有一个带有iframe的页面,并且iframe包含需要在quirks模式下运行的代码(它是Microsoft的Outlook Web Access,所以我们无论如何都不能修复它)。IE9引入了一个“功能”,当父框架处于IE9文档模式时,它还会强制所有iframes进入相同的文档模式。这打破了我们有一个iframe的代码。

我希望这是IE9中的一个bug,但我的罚单被拒绝了,因为“出于设计”(here is the ticket,如果你愿意看看)

我不能在怪癖模式下运行整个网站,但我需要它只发生在这个页面上。有没有办法以编程方式打开quirks模式渲染?或者是一种模拟按下“兼容性视图”按钮的方法--按下这个按钮就可以将IE9转换成IE8,这也很好用。

这两件事都有可能做到吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-01-05 03:04:30

早在2011年4月,我就遇到过同样的问题,并对其进行了相当广泛的研究。从那时起,在IE9中让顶层文档处于“标准模式”而在子iframe中处于“怪癖模式”的唯一方法就是使用元标记让浏览器表现得像IE8一样。(据我所知,这种情况仍然存在,微软不打算改变这种情况。)您可以使用各种元标记来更改浏览器模式,但我使用的有效方法是:

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

如果包含此元标记,则应根据文档类型正确呈现所有文档(根据IE8规则)。

但是请注意,这会阻止您使用IE9中新支持的任何css特性,即使是在顶级文档中也是如此。你将不能使用边界半径,长方体阴影,不透明度等。

Will an iframe render in quirks mode?上有更多关于这方面的信息,它问了一个关于ie中的iframe和doctype的更一般的问题。

票数 10
EN

Stack Overflow用户

发布于 2011-03-25 10:28:00

顺便说一句,iframe中嵌入内容的quirks模式与正常的quirks模式并不完全相同。看看这个:http://msdn.microsoft.com/en-us/library/gg558056(v=VS.85).aspx

票数 5
EN

Stack Overflow用户

发布于 2011-02-26 12:43:35

您应该能够在IFrame和主机之间使用不同的compat模式-请参阅:http://blogs.msdn.com/b/cjacks/archive/2010/12/01/does-a-standards-web-page-inside-of-an-iframe-in-a-quirks-web-page-render-in-standards-or-quirks.aspx

您可以使用X-UA-Compatible标记指定想要显式使用的compat模式,甚至比使用按钮指定的更多:http://msdn.microsoft.com/en-us/library/cc288325(VS.85).aspx

HTH。

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5123326

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档