IE overflow:hidden失效的解决方法 overflow,hidden

position和float是两种布局模式,在IE6下共用有时会导致用position定位的元素节点消失。绝对定位的元素节点是参照离它最近的已定位元素,所以父节点定位relative、子节点定位absolute是很常见的。

关键词:

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://www.kaluli.com/category.php?sort=3&cat=92&category=71&display=grid&brand=0&price_min=0&price_max=0&sex=&material=&color=&pro_size=&filter_attr=&page=1″ target=”_blank”><img src=”images/slide_2.gif” /></a></p>

<p class=”main” ><a href=”http://www.kaluli.com/goods9084.htm” target=”_blank”><img src=”images/slide_3.gif” /></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失效。

IE overflow:hidden失效的解决方法 overflow,hidden

相关文章:

你感兴趣的文章:

标签云: