经常使用IE6浏览DIV做的网页的时候会经常发现网页中多了很多空白行,找了半天原因,最后才发现原来是因为DIV的.clear属性设置出现了问题,这个是IE6的一个BUG,在其他浏览器中不存在,那么现在百翔网络就和大家分析一下DIV网页设计时IE6下DIV最小高度为什么不能为0:
在网页布局时常会用到 DIV 来显示一些边角背景,需要设置较小的高度,默认情况下,IE6 中设置 DIV 较小高度会不起作用,在 IE7、FF 等浏览器不存在这个问题。
IE6 下默认的字体尺寸大致在 12 - 14px 之间,当你试图定义一个高度小于这个默认值的 DIV 的时候, IE6 会固执的认为这个层的高度不应该小于字体的行高。所以即使你用 height:5px; 来定义了一个 DIV 的高度,实际在 IE6 下显示的仍然是一个 12px 左右高度的层。
要解决这个问题,可以强制定义该 DIV 的字体尺寸,或者定义 overflow 属性来限制 DIV 高度的自动调整。比如:
<div style="height: 5px; font: 0px Arial; line-height:0;"></div>
或者
<div style="height: 5px; overflow: hidden;"></div>
值得注意的是,设置 font-size:0 时这个容器的高度最小为 2px ,如果要设置 DIV 高度为 0 或 1px ,则需要使用 overflow:hidden; 来实现