IE overflow:hidden失效的解决方法

Githa ·
更新时间:2024-11-10
· 762 次阅读

overflow:hidden失效
当父元素的直接子元素或者下级子元素的样式拥有position:relative属性时,父元素的overflow:hidden属性就会失效。
我们在IE 6内发现子元素会超出父元素设定的高度,即使父元素设置了overflow:hidden。
解决这个bug很简单,在父元素中使用position:relative;即可解决该bug

我的办法:子元素设置绝对定位,父元素相对定位,这样overflow:hidden就不会失效了。

IE下CSS溢出隐藏失败(IE overflow:hidden失效)

代码如下:
<div id="slides-pic">
<div>
<p class="hot" >
<a class="hot-2" href="http://huoche.7234.cn/images/jb51/rfjigamqbbe.cn" /></a></p>
<p class="main" ><a href="http://huoche.7234.cn/images/jb51/eurrq50uffu.cn" /></a></p>
</div>
<div>
<a href="css-112.jpg" target="_blank">
<img src="images/slide2.jpg" title="" alt="这是第二张图片" />
</a>
</div>
<div>
<a href="css-112.jpg" target="_blank">
<img src="images/slide2.jpg" title="" alt="这是第二张图片" />
</a>
</div>
<div>
<p class="hot" ><a class="hot-1" style="clear:both" href=""><img src="images/slide_1.gif" /></a>
<a class="hot-2" href=""><img src="images/slide_2.gif" /></a></p>
<p class="main" ><a href=""><img src="images/slide_3.gif" /></a></p>
</div>
</div>

kaluli新版首页的slide项目中出现了一个问题,在FireFox下显示正常,但是在IE下所有图片都显示出来,不能实现溢出隐藏。后来搜到是 <div id=”slides-pic”>的子节点<div>的问题,这个节点中使用了position:relative造成显示异常,解决办法是在父节点容器 中也加一个position:relative。

position的相对和绝对应一起搭配起来才比较合适,不然会出现莫名其妙的问题。另:position和float在IE6下是无法一起使用的,所以有时候会hidden失效。



hidden 方法 overflow ie

需要 登录 后方可回复, 如果你还没有账号请 注册新账号