CSS行高——line-height
2020/11/5 9:50:38 閱讀:2288
發(fā)布者:2288
所謂行高是指文本行基線間的垂直距離。
頂線、中線、基線、底線
line-height
基本概念搞明白了我們就可以說說本文的主角line-height屬性了。
定義:line-height 屬性設(shè)置行間的距離(行高),不能使用負(fù)值。該屬性會影響行框的布局。在應(yīng)用到一個塊級元素時,它定義了該元素中基線之間的最小距離而不是最大距離。line-height 與 font-size 的計算值之差(行距)分為兩半,分別加到一個文本行內(nèi)容的頂部和底部。可以包含這些內(nèi)容的最小框就是行框。
可能的值
值說明
normal默認(rèn),設(shè)置合理的行間距。
number設(shè)置數(shù)字,此數(shù)字會與當(dāng)前的字體尺寸相乘來設(shè)置行間距。相當(dāng)于倍數(shù)
length設(shè)置固定的行間距。
%基于當(dāng)前字體尺寸的百分比行間距。
inherit規(guī)定應(yīng)該從父元素繼承 line-height 屬性的值。
<div style="border:dashed 1px #0e0;line-height:150%;font-size:10px;">
<p style="font-size:30px;">
1232<br/>
123
</p>
</div>
非但沒有變成150%,反而連100%都沒有,重疊了!這就是繼承計算的結(jié)果,如果父元素的line-height有單位(px、%),那么繼承的值則是換算后的一個具體的px級別的值;上例p得到的是10px*150%=15px的行高,而P的字體大小為30px,所以發(fā)生了重疊。
而如果屬性值沒有單位,則瀏覽器會直接繼承這個“因子(數(shù)值)”,而非計算后的具體值,此時它的line-height會根據(jù)本身的font-size值重新計算得到新的line-height 值。