清除li间隔

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
</head>
<body style="background:#090;">
<style type="text/css">
body{ font-size:12px;}
.test{ list-style:none; margin:0;}
.test li{ background:#000; padding:0;}
</style>
<ul class="test">
	<li><img src="http://avatar.csdn.net/8/F/9/3_guoerwei.jpg" /></li>
	<li><img src="http://avatar.csdn.net/8/F/9/3_guoerwei.jpg" /></li>
	<li><img src="http://avatar.csdn.net/8/F/9/3_guoerwei.jpg" /></li>
	<li><img src="http://avatar.csdn.net/8/F/9/3_guoerwei.jpg" /></li>
	<li><img src="http://avatar.csdn.net/8/F/9/3_guoerwei.jpg" /></li>
</ul>
</body>
</html>

 

 

如图:li之间存在几个像素的间隔。

 

解决方案1:大部分人应该都是这么来解决的吧。

图片的尺寸是48*48,于是给li强制定义高度

.test li{ background:#000; padding:0; height:48px;}

结果就是除IE6闹别扭外,其它浏览器都正常地把间隙消除了。

然后就是考虑给IE6单独设置样式

.test li{ background:#000; padding:0; height:48px; _margin-bottom:-3px;}

看起来似乎会是正常了,但实际上,传说中的-3px是有问题的,这边会根据页面的字体大小而变化。

例如

body{ font-size:18px;}

字体大一点的话,-3px就不够用了。

 

解决方案2:

尺寸是48*48,给li强制定义高度后,隐去多余空白

.test li{ background:#000; padding:0; height:48px; overflow:hidden;}

这个看起来是比上面的正常多了,但其实还可以用下面的方法来解决。

 

解决方案3:

给li里的图片,设置一下对齐方式

.test li{ background:#000; padding:0;}
.test li img{ vertical-align:middle;}

这个就正常了……

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值