IE6/IE7中li底部4px空隙的Bug

当li的子元素中有浮动(float)时,IE6/IE7中<li>元素的下面会产生4px空隙的bug。 

代码以下: 
<ul class="list"> 
<li><div>vapour</div></li> 
<li><div>百度</div></li> 
<li><div>淘宝</div></li> 
<li><div>迅雷</div></li> 
</ul> 

通过测试发现:li的子元素浮动是这个bug产生的必要条件,这个bug产生的充要条件是li的子元素浮动而且li设置了如下CSS属性之一:width、height、zoom、padding-top、padding-bottom、margin-top、margin-bottom。 

知道了这个bug的产生条件,因此解决方法也就有了: 

方法1 
#list div设置clear:left|both,这时#list li不能设置width、height、zoom。 
方法2 
#list li设置float:left,这时#list li能够设置width、height、zoom。 
#list li设置clear:left|both,这时#list li不能设置width、height、zoom。 
方法3 
IE6/IE7的这个Bug能够经过给li中的div设置vertical-align:top|middle|bottom解决。太怪异了,只要加上vertical-align的值是三者之一便可。 测试

相关文章
相关标签/搜索