CSS 屬性 選擇器
一.什麼是屬性選擇器
屬性選擇器就是指,利用html的屬性標籤作為選擇器,其作用是對帶有指定屬性的HTML元素設定樣式。
屬性選擇器可以為擁有指定屬性的HTML元素設定樣式,而不僅限於class和id屬性。
溫馨提示:如果使用的是IE瀏覽器,在IE6或更低版本是不支援屬性選擇的。 IE7也只有在規定了!DOCTYPE時,才支援屬性選擇器的使用。
二、屬性選擇器的語法
# 屬性選擇器以[]顯示,以下的範例為所有帶有title屬性的元素設定樣式:
[title]
# {
color:red;
# color:red;
# color:red;
# color:red;
# color:red;
# }
#簡易屬性選擇器只顧其名不顧其值,這是簡易屬性選擇器的特色。 h1[class] {color: silver;}將會作用在任何帶class的h1元素,不管class的值是什麼。所以<h1 class="hoopla">Hello</h1>、<h1 class="severe">Serenity</h1>、<h1 class="fancy">Fooling</h1>的h1都會受到這條規則的影響。 當然,這個「屬性」不只是class或id,可以是該元素所有合法屬性,例如img的alt,這樣img[alt]{css declarations here;}將會作用於任何帶有alt屬性的img元素。那麼a[href][title] {font-weight: bold;}呢?聰明的你一定已經知道,這會作用於同時帶href和title屬性的a元素,例如<a href="http://php.cn/" title="php Home"></a> 。
精確屬性值選擇器
id和類別本質上就是精確屬性值選擇器,沒錯,h1#logo等於h1[id="logo"] 。如前所述,我們不要局限於id或class,我們可以使用任何屬性!例如a[href="http://php.cn/"][title="W3C Home"] {font-size: 200%;}將會作用於<a href="http://php.cn /" title="php Home"></a>。
部分屬性值選擇器如其名,只要屬性值部分匹配(這裡的部分,實際上要匹配整個單字)就會作用於該元素。讓我們來看個例子:
中任何一條都可以讓這個p的字體變粗。
該選擇器十分有用,例如你要樣式化插圖,其title中都含字串”Figure”,如title= "Figure 5:xxx說明",則你可以使用img[title~="Figure"] 。
[title]:選擇帶有title屬性的元素
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php.cn</title> <style> h1[title]{ color:red; } </style> </head> <body> <h1 title = "属性选择器">标题<h1> <p>这是内容</p> <h1>标题<h1> <p>这是内容</p> </body> </html>
[title='hello']:選擇屬性是title且值是hello的元素
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php.cn</title> <style> h1[title = "hello"]{ color:red; } </style> </head> <body> <h1 title = "属性选择器">标题<h1> <p>这是内容</p> <h1 title = "hello">标题<h1> <p>这是内容</p> </body> </html>
[title*='hello']:選擇屬性是title並且其中包含了hello的元素
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php.cn</title> <style> h1[title*="hello"]{ color:red; } </style> </head> <body> <h1 title = "hellocss">标题<h1> <p>这是内容</p> <h1 title = "hello css">标题<h1> <p>这是内容</p> </body> </html>