造成图片与容器下边界有空隙的原因
在网上搜了一下,
图片文字等inline元素默认是和父级元素的baseline对齐的,而baseline又和父级底边有一定距离(这个距离和 font-size,font-family 相关,不一定是 3px),所以设置 vertical-align:top/bottom/text-top/text-bottom 都可以避免这种情况出现。而且不光li,其他的block元素中包含img也会有这个现象。
只要vertical-align不取baseline,这个空隙就消失了。
请看如下实例(注意::测试工具:ff,chrome,360–支持IE7+)
<style> |
我们会发现li底部与img底部有间隙,so bad!
第一,给图片img标签display:block
。
兼容性IE8+,firefox,chrome
第二,定义容器里的字体大小为0。font-size:0
兼容性IE8+,firefox,chrome
第三,定义图片img标签vertical-align:bottom
,vertical-align:middle
,vertical-align:top
img{vertical-align:bottom} |
兼容性IE7+,firefox,chrome
第四,给li加高度
兼容性IE7+,firefox,chrome
测试发现,给img加vertical-align
效果最佳