li {width:300px; height:23px; line-height:24px:}
<ul>
<li>行距很大</li>
<li>行距很大</li>
<li>行距很大</li>
<ul>
以上定义后li的行间距应该是23px,但是IE确是28px,多了5个像素,原因不知道,解决方法如下(红色表示测试OK):
1.解决li在IE5下产生空白行距的方法:如果li定义了宽度,那么需要在li里面再定义vertical-align:
bottom;。<wbr></wbr>
2.宽度最好不要定义在UL,定义在LI或者UL外层的DIV里面。<wbr></wbr>
3.书写LI的最佳方式,li里面要书写高度和宽度,以及vertical-align:
bottom;(for ie5/win
bug),或者在ul外面加上一层div,并定义宽度,那么在li里面不用定义宽度和vertical-align:
bottom;,也显示正常(IE5下不会产生空白行距),不过高度还是要定义一下的。
本文针对IE5浏览器中LI元素行距显示异常的问题进行了解析,并提供了三种有效的解决方案,包括调整vertical-align属性、改变宽度定义的位置以及重新组织LI元素的样式定义。
740

被折叠的 条评论
为什么被折叠?



