IE 上固定定位的 iframe 的问题

Posted

技术标签:

【中文标题】IE 上固定定位的 iframe 的问题【英文标题】:Issue with fixed positioned Iframe on IE 【发布时间】:2013-02-20 13:52:30 【问题描述】:

我有一个这样的 iframe:(这个框架一直出现在屏幕左侧)

<iframe src="frame/index.html" class="left"></iframe>   

和 CSS

.left

position: fixed;
top: 25%;
left: 1em;  
width:200px;
height:200px;
overflow:hidden;
margin-right:10px;
border-style:none;

它在所有 web-kit 浏览器中都能完美运行,但在 IE 上,它出现在顶部(和中间),带有边框和异常高度。

我尝试弄乱很多定位,但无法正确定位。 任何帮助,将不胜感激!提前致谢

干杯!

【问题讨论】:

你说的是哪个版本的IE? 实际上都是。我试过IE7、IE8和IE9! 众所周知,IE 在渲染 &lt;iframe&gt; 元素 - this 和 that 时会忽略 CSS 规则甚至 JS。 【参考方案1】:

似乎这个小提琴适用于我的 IE9 (9.0.8112.164)。不同浏览器的定位看起来是一致的。

http://jsfiddle.net/5sbXG/2/

我确实更改了您示例中的 iframe 标记以摆脱滚动条(IE 似乎忽略了溢出:隐藏在 iframe 上)。

<iframe src="http://www.rockpapershotgun.com" class="left" scrolling="no">
</iframe> 

从你的角度看是不是错了?

【讨论】:

【参考方案2】:

添加:

frameBorder="0";
scrolling="no";
position:absolute;
allowtransparency="true";

成功了!

【讨论】:

以上是关于IE 上固定定位的 iframe 的问题的主要内容,如果未能解决你的问题,请参考以下文章

仅在 IE 中固定定位元素闪烁,如何解决?

固定定位破坏 z-index

木头浏览器如何定位元素

怎么用js固定某个元素,让它不随页面的滚动而滚动,始终固定在窗口的某个位置?

将 iFrame 设置为固定页脚和页眉之间的全高

为啥在 IE 上滚动时固定的背景图像会移动?