IE6下css设置容器高度的BUG不能小于某个值
(编辑:jimmy 日期: 2024/11/17 浏览:3 次 )
在IE6中设置display:block的空容器一个较小高度时,如<p style="height:1px;"></p>,会发现其高度不能小于某个值
复制代码代码如下:
<p style="background: #f00; height: 1px; font-size:0"></p><!-- demo1 -->
demo1:设置font-size:0,但是这个容器的高度最小为2px,所以没有办法实现高度为1px的效果
复制代码代码如下:
<p style="background: #f00; height: 1px; line-height:0;"> </p> <!-- demo2 -->
<p style="background: #f00; height: 1px; line-height:0;"><br/></p> <!-- demo3 -->
demo2 & demo3:在容器中增加内容或其他空标签,如 、<br />,并设置line-height:0,虽然可实现效果,
但该容器会存在一个和其父容器字体大小有关的外边距
复制代码代码如下:
<p style="background: #f00; height: 1px; font-size:0;line-height:0"> </p><!-- demo4 -->
<p style="background: #f00; height: 1px; font-size:0;line-height:0"><br/></p><!-- demo5 -->
demo4 & demo5:虽然可以解决外边距的问题,但是在font-family:fixedsys(window的古老字体)等字体下还是会产生问题。
复制代码代码如下:
<p style="background: #f00; height: 1px; overflow:hidden;"></p><!-- demo6 -->
demo6:目前看到的最好的解决方案
复制代码代码如下:
<p style="background: #f00; height: 1px; font-size:0"></p><!-- demo1 -->
demo1:设置font-size:0,但是这个容器的高度最小为2px,所以没有办法实现高度为1px的效果
复制代码代码如下:
<p style="background: #f00; height: 1px; line-height:0;"> </p> <!-- demo2 -->
<p style="background: #f00; height: 1px; line-height:0;"><br/></p> <!-- demo3 -->
demo2 & demo3:在容器中增加内容或其他空标签,如 、<br />,并设置line-height:0,虽然可实现效果,
但该容器会存在一个和其父容器字体大小有关的外边距
复制代码代码如下:
<p style="background: #f00; height: 1px; font-size:0;line-height:0"> </p><!-- demo4 -->
<p style="background: #f00; height: 1px; font-size:0;line-height:0"><br/></p><!-- demo5 -->
demo4 & demo5:虽然可以解决外边距的问题,但是在font-family:fixedsys(window的古老字体)等字体下还是会产生问题。
复制代码代码如下:
<p style="background: #f00; height: 1px; overflow:hidden;"></p><!-- demo6 -->
demo6:目前看到的最好的解决方案
下一篇:css浮动中避免包含元素高度为0的4种解决方法