01
问 题
如果将一个 img 放在 div 或 span 里面,你会发现在img下面无端端的就多出3px的空白出来。padding、margin、border都设为0,无效!那么怎么解决这个问题呢?
代码:
<div class="pic">
<img src="/images/1.jpg"/>
</div>
<span>
<img src="/images/2.jpg"/>
</span>
02
原 因
因为 img 默认是按基线( baseline )对齐的。对比一下图片和右边的 p, q, y 等字母,你会发现这三个字母的“小尾巴”和图片下方的空白一样高
03
解决方案
要去掉空格可以使用 vertical-align: bottom 或将 img 标签变为块级元素。
至于什么是基线,还记得四线三格的英语写字本么?中间第三条线就是基线。
代码如下:
img{display:block;}
img{vertical-align:bottom;}
上面两种选那种都可以
参考:
https://blog.csdn.net/yugang930823/article/details/51055989