【CSS選擇符】屬性選擇符

0017.jpg

使用屬性選擇器可以篩選出設定了特定屬性的標簽。例如選取所有設定了title屬性的<img>標簽:
img[title]

這種選擇符的第一部分是標簽名(img),隨后是屬性名,放在方括號里:[title] 。

CSS不限制屬性選擇符只能使用標簽名,也可以使用類。例如:
.photo[title]

用于選取類為photo,而且設置了title屬性的全部元素。

屬性選擇符不僅可以選取設定了某個屬性的元素,還可以更進一步,選取屬性值為指定值的元素。比如我們想突出顯示指向某個URL的鏈接:

a[href="http://www.lxweimin.com/c/1681745eb504"] {
    color: orange;
    font-weight: bold;
}

又例如需要選取表單中的文本框

input[type="text"] {
    color: #fff;
    background: #aaa;
}






以下是屬性選擇符的其他用法


[attribute~=value]

選取含有attribute的屬性,且attribute屬性的值是以空格隔開的系列值,其中某個值為value的指定元素。
或者選取含有attribute的屬性,且attribute屬性只有一個value值的元素。
[attribute~=value]是[attribute=value] 的加強版。

HTML代碼

<p class="first test">我的簡書ID:KelvinZ</p>
<p class="second">這是第二個P元素</p>
<p class="test">第三個P元素</p>
<div class="test">這是一個div元素</div>

CSS代碼

p[class~="test"] {
  background: pink;
}
image.png





[attribute|=value]

選取含有attribute的屬性,且attribute屬性的值是以連字符分隔的系列值,其中第一個值為value的指定元素。

HTML代碼

<p class="test-one">我的簡書ID:KelvinZ</p>
<p class="second-test">這是第二個P元素</p>
<p class="test">第三個P元素</p>
<div class="test">這是一個div元素</div>

CSS代碼

p[class|="test"] {
    background: pink;
}
image.png





[attribute^=value]

選取含有attribute的屬性,且attribute屬性的值是以value開頭的指定元素。

HTML代碼

<p class="test-one">我的簡書ID:KelvinZ</p>
<p class="test-two">這是第二個P元素</p>
<p class="test">第三個P元素</p>
<div class="test">這是一個div元素</div>

CSS代碼

p[class^="test"] {
    background: pink;
}
image.png





[attribute$=value]

選取含有attribute的屬性,且attribute屬性的值是以value結尾的指定元素。

HTML代碼

<p class="test-one">我的簡書ID:KelvinZ</p>
<p class="test-two">這是第二個P元素</p>
<p class="test">第三個P元素</p>
<div class="test">這是一個div元素</div>

CSS代碼

p[class$="two"] {
    background: pink;
}
image.png





[attribute=value]*

選取含有attribute的屬性,且attribute屬性的值含有value的指定元素。

HTML代碼

<p class="test-one">我的簡書ID:KelvinZ</p>
<p class="test-two">這是第二個P元素</p>
<p class="test">第三個P元素</p>
<div class="test">這是一個div元素</div>

CSS代碼

p[class*="o"] {
    background: pink;
}
image.png




其中[attribute^=value]、[attribute$=value]和[attribute*=value]是CSS 3.0新增的選擇符。


上面的選擇符匹配規則越嚴格優先級越高
例如:img[title="Rabbit"] 選擇符定義的CSS樣式會覆蓋 img[title] 中相同定義的CSS樣式。




最后是我常用的屬性選擇符的地方。

比如我要把站外的鏈接用不同顏色的字體突出顯示。
a[href^="http://"]


要調整PDF文件padding:
a[href$=".pdf"]



HTML與CSS 目錄:HTML與CSS

上一篇:【CSS選擇符】偽類和偽元素

下一篇:【CSS選擇符】子代選擇符

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 一、樣式篇 第1章 初識jQuery (1)環境搭建 進入官方網站獲取最新的版本 http://jquery.co...
    凜0_0閱讀 3,451評論 0 44
  • 一月,《心理咨詢師基礎知識》《漫畫素描技法之人物表情刻畫》《素描入門一本就夠了》 二月,《九型人格》...
    一個會畫畫的文字控閱讀 216評論 0 0
  • 前幾天剛過了二十七歲生日,這真是老大徒傷悲啊,因為年齡漸長,必定催婚漸緊。 春節前,就看到有一門講如何...
    婉婉兮閱讀 275評論 4 2
  • 我一直想不明白,我為什么會喜歡一個眼睛小小,皮膚偏黑的眼鏡男。這種類型,一向不是我的菜。可是自從十八歲生日那晚,他...
    小不稀閱讀 300評論 0 1