在CSS中,有一個(gè)首行縮進(jìn)的標(biāo)記可以幫助我們實(shí)現(xiàn)文字的優(yōu)雅排版。這個(gè)標(biāo)記是text-indent。
一般情況下,我們可以通過(guò)設(shè)置margin或padding實(shí)現(xiàn)文字的縮進(jìn)效果,但是這樣會(huì)影響整個(gè)盒子的排版,而不僅僅是文字。因此,使用text-indent可以單獨(dú)設(shè)定文字的縮進(jìn),不影響其它元素。
接下來(lái),我們來(lái)看一下如何使用text-indent,如下是示例代碼:
p { text-indent: 2em; }
在這個(gè)例子中,我們使用text-indent給p標(biāo)簽里的文字設(shè)置了2em的縮進(jìn)。
需要注意的是,text-indent只對(duì)塊級(jí)元素有效,對(duì)于行內(nèi)元素是無(wú)效的。而對(duì)于帶有::first-line偽元素的塊級(jí)元素,text-indent則只對(duì)偽元素的第一行文字有效。
另外,在HTML中,使用ul或ol標(biāo)簽創(chuàng)建的列表也可以使用text-indent來(lái)實(shí)現(xiàn)列表項(xiàng)的縮進(jìn)效果,示例代碼如下:
ul { text-indent: -2em; list-style-position: inside; } li { text-indent: 2em; }
在這個(gè)例子中,我們使用了負(fù)值的text-indent來(lái)抵消ul標(biāo)簽?zāi)J(rèn)的列表項(xiàng)縮進(jìn)效果,并將列表符號(hào)移動(dòng)至盒子內(nèi)部,然后為每一個(gè)li標(biāo)簽設(shè)置了2em的縮進(jìn)。這樣,我們就可以自定義列表項(xiàng)的排版效果了。