如何解决div里面img图片下方有空白的问题?
相信网站前端开发者可能会遇到这样的问题,<div><img src="picture.png"/></div>这样的格式在html5的文档标准下会有一段空白区域,那么怎样去掉这部分空白区域呢?
操作方法
- 01
首先我们要知道这部分空白产生的原因。图片默认的vertical-align是baseline, 也就是字母x的下边距,我们在图片后面写上x就是这样
- 02
如果给x加上背景色就是这样
- 03
可以看到图片是与字母x的下边距对齐的,也就是baseline,css2的文档中有这么一句解释,翻译过来也就是一个inline-block元素,如果里面没有inline元素,或者overflow不是visible,则该元素的基线就是其margin底边缘,否则,其基线就是元素里面最后一行内联元素的基线。
- 04
所以我们只需要将img图片display:block,即可去掉div和img之间的空白
- 05
或者将div的line-height设置得足够小,也可以去掉空白,例如div{line-height:5px;}
- 06
也可以将font-size设为0,实际上也是改变了line-height
- 07
当然,我们可以改变vertical-align,让它不是baseline,比如设置vertical-align:middle
- 08
css博大精深,大家一起加油探索吧!
赞 (0)