不单单DIV在IE6下会产生问题,其实是所有的块级元素,比如P 也会受此影响,这个问题看似简单,但如果在实际中遇到,旺旺会较劲脑筋也想不出问题所在。
IE6下默认的字体尺寸大致在 12 - 14px 之间,当你试图定义一个高度小于这个默认值的 div 的时候, IE 会固执的认为这个层的高度不应该小于字体的行高。所以即使你用 height: 6px; 来定义了一个 div 的高度,实际在 IE 下显示的仍然是一个 12 px 左右高度的层。
要解决这个问题,可以强制定义该 div 的字体尺寸,或者定义 overflow 属性来限制 div 高度的自动调整。比如 <div style="height: 6px; font: 0px Arial;"></div> 或者 <div style="height: 6px; overflow: hidden;"></div> 都可以阻止 IE 的自作聪明。
该问题在 IE7 / Firefox /Opera 下均不存在。
<div style="height: 6px; overflow: hidden;">在Firefox中显示时存在有问题,例:
<div id="idAnswer" class="ans_ques">
<div class="ans_ques_top"></div>
<div class="ans_ques_content">
<!--
<div class="ans_ques_bg_orange">
<h4>
<div class="ans_ques_h_bg">
<span>我要提问</span>
<img src="templets/img/squid_decoration.jpg" width="56" />
</div>
</h4>
<p>我们为您开通官网自助问题提交系统,我们客服专员会第一时间为您处理!</p>
</div>
</div>
-->
<div class="ans_ques_bottom"></div>
</div>
类ans_ques_top为上背景图,类ans_ques_bottom为下背景图,这样设计的结果将会导致类ans_ques_top向右偏移。