Tal*_*Tal 14 html iframe html5
我们有一个必须在IE9标准模式下运行的父页面,执行HTML5命令.在下面我们有一个必须在兼容模式下运行的iframe(IE7/8).
在IE9中,据我所知,iframe从父级继承了他们的doctype.那是对的吗?这个问题有什么解决方案吗?可以,不知何故,在标准模式doctype父框架下使用quirks doctype执行iframe?谢谢,塔尔
Nic*_*ght 27
在IE9中的子iframe中不可能触发不同的渲染模式,正如此处正式记录的那样:http://msdn.microsoft.com/en-us/library/gg558056(v = vs.85).aspx(强调添加):
虽然较新的呈现引擎仅在Windows Internet Explorer检测到HTML页面请求了对标准的最高级别支持时使用,但对于可能在frame和iframe元素中加载的子页面,情况并非总是如此.由于一次只能激活一个渲染引擎,IE9模式还包括Quirks模式的仿真.
但是,正如它所说,你可以触发"怪癖模式仿真",使IE9渲染引擎保持活动状态,但以几种方式改变其行为以匹配旧的怪癖模式.
JSBin演示:http://jsbin.com/ozejuk/1/
这个例子有一个带有样式的div background: #ff0000; background: 00ff00; border-radius: 30px......在怪癖模式下,不#接受十六进制颜色.在IE9模式下,它们不是.在IE9中加载演示将在父页面中显示红色div,在iframe中显示绿色div(但仍有圆角).
如何在iframe中触发quirks模式仿真: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