精美而实用的网站,关注web编程技术、网站运营、SEO推广,让您轻松愉快的学习

今天在做图片列表的时候发现图片距离下面有2px间隙,我已经把 img 的外边距和内边距什么的全部清空了,怎么会出来2px间隙呢?实际上,这其实是inline元素搞的鬼。下面看青岛星网解决方案。

任何不是块级元素的可见元素都是内联元素,其表现的特性是“行布局”形式。

—-《CSS权威指南》

什么意思?

意思就是,其实如图片文字等内联元素,它默认对齐方式都是和它的父级的 baseline 去进行对齐的,但是你对齐的是 baseline,撑开高度的却是元素整体的高度(bottom line),这样肯定就会造成一定的间隙,也就是我们我们标题所说的问题了。

那我们既然知道了这个问题出现的原因,那么解决起来也就简单多啦。

解决的方法

1、可以设置img的父级div的line-height:0 或者font-size:0;

2、设置img为display:block 或者设置vertical-align:middle;

3、也可以设置img父元素为浮动

Tags:img 图像标签