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 class="urgent warning">When handling plutonium, care must be taken to avoid the formation of a critical mass.</ p>p[class~="warning"] {font-weight: bold;}   ########## ###############和####### ############p[class~="urgent"] {font-weight: bold;}    #############

中任何一條都可以讓這個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>




#
繼續學習
||
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php.cn</title> <style> input[type="text"] { width:150px; display:block; margin-bottom:10px; background-color:yellow; } input[type="button"] { width:120px; margin-left:35px; display:block; } </style> </head> <body> <!--属性选择器样式无需使用class或id的形式:--> <form name="input" action="/member/edit_course/8" method="get"> 名称1:<input type="text" name="fname" value="tom" size="20"> 名称2:<input type="text" name="lname" value="ros" size="20"> <input type="button" value="提交"> </body> </html>