CSS表達(dá)式 attr() 用來獲取選擇到的元素的某一HTML屬性值,并用于其樣式。它也可以用于偽元素,屬性值采用偽元素所依附的元素。
attr() 表達(dá)式可以用于任何CSS屬性。
語法:
CSS Code復(fù)制內(nèi)容到剪貼板
attr( attribute-name <type-or-unit>? [, <fallback> ]? )
ttr()功能早在CSS 2.1標(biāo)準(zhǔn)中就已經(jīng)出現(xiàn),但現(xiàn)在才開始普遍流行。它提供了一個巧妙的方法在CSS中使用HTML標(biāo)簽上的屬性,在很多情況下都能幫你省去了以往需要Javascript處理的過程。
要想使用這個功能,你需要用到三種元素:一個:before 或 :after CSS偽類樣式, .content屬性,和一個帶有你想使用的HTML屬性名稱的attr()表達(dá)式。例如,想去顯示<h3>標(biāo)題上的data-prefix屬性的值,你可以寫成這樣:
CSS Code復(fù)制內(nèi)容到剪貼板
h3:before {
content: attr(data-prefix) " ";
}
<h3 data-prefix="Custom prefix">This is a heading</h3>
顯然,這個例子并沒有展示它有多大用處,只是展示了它的基本用法。讓我們來試一個更有用的例子,attr()的一個極好的應(yīng)用就是當(dāng)用戶打印頁面時將頁面鏈接顯示出來。為了實現(xiàn)這個,你可以這樣寫:
CSS Code復(fù)制內(nèi)容到剪貼板
@media print {
a:after {
content: " (link to " attr(href) ") ";
}
}
<a href="http://example.com">Visit our home page</a>
一旦你知道了這個技巧,你就會吃驚于很多時候它能給你的工作帶來的方便!
提示:在新版的CSS3標(biāo)準(zhǔn)中,attr()功能被擴(kuò)展,可以用在各種CSS標(biāo)記中。在CSS2.1中attr()總是返回一個字符串。在CSS3中attr()可以返回多種不同的類型。
新聞熱點
疑難解答