CSS屬性探秘系列(三):line-height
line-height(行高),相鄰文本行基線間的距離。那什么是基線呢?對于文字“Benjamin-xx工程師”,來說基線(base line)并不是漢字文字的下端沿,而是英文字母“x”的下端沿。
二、line-height理解有的時(shí)候我們會(huì)遇到,不給盒子設(shè)置寬度,只設(shè)置行高,為啥也能產(chǎn)生高度,那么CSS中的高度由哪個(gè)來決定的呢?
如果一個(gè)標(biāo)簽沒有設(shè)置高度(定值或者百分比)的話,那么它的高度由還高來決定,下面我們來看一組實(shí)例:
前提條件未設(shè)置盒子的高度:
CSS:
<style type="text/css">
.gc{width:400px;background-color:#ccc;border:1px solid #f00;margin-bottom:40px;}
.demo01{font-size:0;line-height:40px;}
.demo02{font-size:40px;line-height:0;}
</style>
<div class="demo01 gc">Benjmain01_a</div>
<div class="demo02 gc">Benjamin02_a</div>

那么line-height是怎么產(chǎn)生高度的呢?
我們先來介紹兩個(gè)基本概念:
1.行內(nèi)框
行內(nèi)框是瀏覽器渲染模型中的一個(gè)概念,無法顯示出來,但是它又確實(shí)存在,它的高度就是line-height(行高)指定的高度。
2.行框
行框是指本行的一個(gè)虛擬的矩形框,也是瀏覽器渲染模式中的一個(gè)概念。行框高度等于本行內(nèi)所有元素中行內(nèi)框最大的值(以line-height(行高)值最大的行內(nèi)框?yàn)榛鶞?zhǔn),其他行內(nèi)框采用自己的對齊方式向基準(zhǔn)對齊,最終計(jì)算行框的高度)。
這下我們就明白了,這個(gè)高度是怎么來的了,max(行內(nèi)框的高度)->行框的高度->box高度
三、line-height的應(yīng)用1.單行文字垂直居中
設(shè)置容器高度和line-height值相等
2.多行文字垂直居中
a)高度固定容器:直接設(shè)置上下padding值相等就OK了
b)高度未知容器:借助line-height,看如下實(shí)例:
代碼:
<style type="text/css">
.out{line-height:100px;font-size:0;width:400px;background-color:#ccc;border:1px dotted #333;}
.inner_01{font-size:12px;line-height:24px;display:inline-block; vertical-align:middle;}
.inner_02{width:0;}
</style>
<div class="out">
<span class="inner_01">這下我們就明白了,這個(gè)高度是怎么來的了,max(行內(nèi)框的高度)->行框的高度->inline box 高度->影響父元素的高度</span>
<span class="inner_02"> </span>
</div>

3.圖片的垂直居中
此種情況將在下一講深入CSS屬性(四):vertical-align中詳細(xì)介紹
4.line-height:1.5 與150%的區(qū)別
區(qū)別見文章:line-height:1.5 與line-height:150%的區(qū)別
關(guān)于line-height的其他方面應(yīng)用后續(xù)補(bǔ)充、上文如有不妥之處,還望指正。
相關(guān)文章
- 我們在css編寫中需要對大篇幅的內(nèi)容顯示的更好看,有些間隔,不要在擠在一起難看,就可以使用Line-Height屬性進(jìn)行控制2013-07-20
- “行高“顧名思義指一行文子的高度,大家對CSS行高line-height都有自己的理解,下面為大家介紹下本人自己的理解2014-01-08
- 本文介紹下css中的line-height屬性的用法,通過實(shí)例學(xué)習(xí)css line-height屬性的具體用法,感興趣的朋友參考下2014-08-02
- 本文介紹下,css中的line-height屬性的用法,通過實(shí)例學(xué)習(xí)css line-height屬性的具體用法,感興趣的朋友參考下2014-08-02
- 這篇文章主要介紹了css中height和line-height區(qū)別,需要的朋友可以參考下2014-08-02

