1. 程式人生 > >簡記<img>下方的空白間隙

簡記<img>下方的空白間隙

水平 height isp -h div 方式 base 設置 block

當你書寫以下代碼

<img src="balbal.." />

<div></div>

你會發現<img>距離<div>隔了幾個空白像素

技術分享

那麽 Q1:這些空白像素如何產生的?

   A1:這是因為 水平方向上的元素垂直對齊的方式 造成的。

通常情況,能在一行顯示的元素,display應為inline或者line-block。

如果一行上的元素高矮不一致,那麽應該如何對齊這些inline?

css提供了vertical-align來確定這些元素是如何對齊的。

該屬性默認值為baseline 即字母x的底部,來對齊。

技術分享

而字母x,本身是有高度的,自然就出現了額外的空隙

Q2:如何消除這些空隙?

A2:已經知道了原因,那麽解決就很簡單了

1.display:block 脫離vertical-align的影響

2.給<img>的父元素設置 font-size:0 字體沒有了size 空隙也就自然消失了

3.給<img>的父元素設置line-height:0 行高 也可以

4.既然是因為baseline搞的鬼,那麽把<img>的vertical-align設置為top 也可以消滅空隙。

簡記<img>下方的空白間隙