CSS 屬性選擇器

對帶有指定屬性的 HTML 元素設置樣式。

能夠爲擁有指定屬性的 HTML 元素設置樣式,而不只限於 class 和 id 屬性。css

註釋:只有在規定了 !DOCTYPE 時,IE7 和 IE8 才支持屬性選擇器。在 IE6 及更低的版本中,不支持屬性選擇。spa

屬性選擇器

下面的例子爲帶有 title 屬性的全部元素設置樣式:ssr

{
color:red;
}
[title]

親自試一試code

屬性和值選擇器

下面的例子爲 title="W3School" 的全部元素設置樣式:orm

{
border:5px solid blue;
}
[title=W3School]

親自試一試文檔

屬性和值選擇器 - 多個值

下面的例子爲包含指定值的 title 屬性的全部元素設置樣式。適用於由空格分隔的屬性值:get

 { color:red; }[title~=hello]

親自試一試input

下面的例子爲帶有包含指定值的 lang 屬性的全部元素設置樣式。適用於由連字符分隔的屬性值:it

[lang|=en] { color:red; }

親自試一試io

設置表單的樣式

屬性選擇器在爲不帶有 class 或 id 的表單設置樣式時特別有用:

input[type="text"]
{
  width:150px;
  display:block;
  margin-bottom:10px;
  background-color:yellow;
  font-family: Verdana, Arial;
}

input[type="button"]
{
  width:120px;
  margin-left:35px;
  display:block;
  font-family: Verdana, Arial;
}

親自試一試

CSS 選擇器參考手冊

選擇器 描述
[attribute] 用於選取帶有指定屬性的元素。
[attribute=value] 用於選取帶有指定屬性和值的元素。
[attribute~=value] 用於選取屬性值中包含指定詞彙的元素。
[attribute|=value] 用於選取帶有以指定值開頭的屬性值的元素,該值必須是整個單詞。
[attribute^=value] 匹配屬性值以指定值開頭的每一個元素。
[attribute$=value] 匹配屬性值以指定值結尾的每一個元素。
[attribute*=value] 匹配屬性值中包含指定值的每一個元素。

CSS ID 選擇器詳解

ID 選擇器容許以一種獨立於文檔元素的方式來指定樣式。

CSS ID 選擇器

在某些方面,ID 選擇器相似於類選擇器,不過也有一些重要差異。

語法

首先,ID 選擇器前面有一個 # 號 - 也稱爲棋盤號或井號。

請看下面的規則:

*#intro {font-weight:bold;}

與類選擇器同樣,ID 選擇器中能夠忽略通配選擇器。前面的例子也能夠寫做:

#intro {font-weight:bold;}

這個選擇器的效果將是同樣的。

第二個區別是 ID 選擇器不引用 class 屬性的值,毫無疑問,它要引用 id 屬性中的值。

如下是一個實際 ID 選擇器的例子:

<p id="intro">This is a paragraph of introduction.</p>

親自試一試

類選擇器仍是 ID 選擇器?

在類選擇器這一章中咱們曾講解過,能夠爲任意多個元素指定類。前一章中類名 important 被應用到 p 和 h1 元素,並且它還能夠應用到更多元素。

區別 1:只能在文檔中使用一次

與類不一樣,在一個 HTML 文檔中,ID 選擇器會使用一次,並且僅一次。

區別 2:不能使用 ID 詞列表

不一樣於類選擇器,ID 選擇器不能結合使用,由於 ID 屬性不容許有以空格分隔的詞列表。

區別 3:ID 能包含更多含義

相似於類,能夠獨立於元素來選擇 ID。有些狀況下,您知道文檔中會出現某個特定 ID 值,可是並不知道它會出如今哪一個元素上,因此您想聲明獨立的 ID 選擇器。例如,您可能知道在一個給定的文檔中會有一個 ID 值爲 mostImportant 的元素。您不知道這個最重要的東西是一個段落、一個短語、一個列表項仍是一個小節標題。您只知道每一個文檔都會有這麼一個最重要的內容,它可能在任何元素中,並且只能出現一個。在這種狀況下,能夠編寫以下規則:

#mostImportant {color:red; background:yellow;}

這個規則會與如下各個元素匹配(這些元素不能在同一個文檔中同時出現,由於它們都有相同的 ID 值):

<h1 id="mostImportant">This is important!</h1>
<em id="mostImportant">This is important!</em> <ul id="mostImportant">This is important!</ul> 

親自試一試:

區分大小寫

請注意,類選擇器和 ID 選擇器多是區分大小寫的。這取決於文檔的語言。HTML 和 XHTML 將類和 ID 值定義爲區分大小寫,因此類和 ID 值的大小寫必須與文檔中的相應值匹配。

所以,對於如下的 CSS 和 HTML,元素不會變成粗體:

#intro {font-weight:bold;}

<p id="Intro">This is a paragraph of introduction.</p>

因爲字母 i 的大小寫不一樣,因此選擇器不會匹配上面的元素。

相關文章
相關標籤/搜索