如何强制iframe来一个标准的父框架下运行的怪癖(How to force Iframe to r

2019-06-17 14:02发布

我们必须在IE9标准模式下运行,执行HTML5命令的父页面。 下面我们必须在兼容模式(IE7 / 8)运行的iframe中。

在IE9中,我明白了,I帧继承父的DOCTYPE。 那是对的吗? 是否有此问题的任何解决方案? 可以以某种方式,iframe中执行与怪异标准模式DOCTYPE父框架下DOCTYPE? 谢谢,塔尔

Answer 1:

这是不可能触发不同的渲染模式在IE9孩子的iframe,如下正式文件: http://msdn.microsoft.com/en-us/library/gg558056(v=vs.85).aspx (重点):

虽然当Windows Internet浏览器检测到某个HTML页面请求的支持标准的最高水平,较新的渲染引擎仅使用了相同的并不总是可能frame和iframe元素中加载子页面真。 因为只有一个呈现引擎可以一次被激活 ,IE9模式还包括用于Quirks模式仿真。

然而,因为它说,你可以触发“怪异模式仿真”,其离开IE9渲染引擎有效,但改变其在几个方面,以配合老怪癖模式行为。

JSBin演示: http://jsbin.com/ozejuk/1/

这个例子有风格的div background: #ff0000; background: 00ff00; border-radius: 30px background: #ff0000; background: 00ff00; border-radius: 30px background: #ff0000; background: 00ff00; border-radius: 30px ......怪癖模式,十六进制颜色无#被接受。 在IE9模式下,它们都没有。 加载在IE9中演示将显示在iframe父页面红色的div和绿色格(但仍与圆角)。

如何触发怪异模式模拟的iframe: http://msdn.microsoft.com/en-us/library/gg558096(v=vs.85).aspx

短版本:省略DOCTYPE,添加: <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />

效果怪异模式模拟的完整列表,对渲染: http://msdn.microsoft.com/en-us/library/gg558047(v=vs.85).aspx



文章来源: How to force Iframe to run quirks under a standard parent frame