我打字形成的文檔為什么不能 轉存的其他存盤(為什么文檔不能打字了)
901
2025-04-04
一、導語
自CSS 2 引入了屬性選擇器,屬性選擇器可以根據元素的屬性及屬性值來選擇元素。
二、簡單屬性選擇器
如果希望選擇有某個屬性的元素,而不論屬性值是什么,可以使用簡單屬性選擇器。
下面的例子是把包含標題(title)的所有元素變為藍色:
[title] { color:blue; }
如果希望把包含標題(title)的所有元素變為紅色,可以寫作:
*[title] {color:red;}
與上面類似,可以只對有 href 屬性的錨(a 元素)應用樣式:
a[href] {color:red;}
此外,還可以根據多個屬性進行選擇,只需將屬性選擇器鏈接在一起即可。
例如,為了將同時有 href 和 title 屬性的 HTML 超鏈接的文本設置為紅色,可以這樣寫:
a[href][title] {color:red;}
三、屬性和值選擇器
除了選擇擁有某些屬性的元素,還可以進一步縮小選擇范圍,只選擇有特定屬性值的元素。
例如,假設希望將指向 Web 服務器上某個指定文檔的超鏈接變成紅色,可以這樣寫:
a[] {color: red;}
四、屬性和值的選擇器 - 多值
與簡單屬性選擇器類似,可以把多個屬性-值選擇器鏈接在一起來選擇一個文檔。
a[] {color: red;}
這會把以下標記中的第一個超鏈接的文本變為紅色,但是第二個或第三個鏈接不受影響:
4.1 屬性與屬性值必須完全匹配
請注意,這種格式要求必須與屬性值完全匹配。
如果屬性值包含用空格分隔的值列表,匹配就可能出問題。
請考慮一下的標記片段:
This paragraph is a very important warning.
如果寫成 p[class="important"],那么這個規則不能匹配示例標記。
要根據具體屬性值來選擇該元素,必須這樣寫:
p[class="important warning"] {color: red;}
4.2 根據部分屬性值選擇
如果需要根據屬性值中的詞列表的某個詞進行選擇,則需要使用波浪號(~)。
假設您想選擇 class 屬性中包含 important 的元素,可以用下面這個選擇器做到這一點:
p[class~="important"] {color: red;}
如果忽略了波浪號,則說明需要完成完全值匹配。
4.3 部分值屬性選擇器與點號類名記法的區別
該選擇器等價于我們在類選擇器中討論過的點號類名記法。
也就是說,p.important 和 p[class="important"] 應用到 HTML 文檔時是等價的。
那么,為什么還要有 “~=” 屬性選擇器呢?因為它能用于任何屬性,而不只是 class。
例如,存在一個包含大量圖像的文檔,其中只有一部分是圖片。對此,可以使用一個基于 title 文檔的部分屬性選擇器,只選擇這些圖片:
img[title~="Figure"] {border: 1px solid gray;}
這個規則會選擇 title 文本包含 “Figure” 的所有圖像。沒有 title 屬性或者 title 屬性中不包含 “Figure” 的圖像都不會匹配。
五、子串匹配屬性選擇器
以上為基本的屬性選擇器介紹,下面介紹一個更高級的選擇器模塊,它是 CSS2 完成之后發布的,其中包含了更多的部分值屬性選擇器。按照規范的說法,應該稱之為“子串匹配屬性選擇器”。
很多現代瀏覽器都支持這些選擇器,包括 IE7。
下表是對這些選擇器的簡單總結:
可以想到,這些選擇有很多用途。
舉例來說,如果希望對指向 https://shq5785.blog.csdn.net/所有鏈接應用樣式,不必再為所有這些鏈接指定 class,而只需編寫以下規則:
a[href*="https://shq5785.blog.csdn.net/"] {color: red;}
六、特定屬性選擇類型
請看下面的例子:
*[lang|="en"] {color: red;}
上面的規則會選擇 lang 屬性等于 en 或以 en- 開頭的所有元素。因此,以下示例標記中的前三個元素將被選中,而不會選擇后兩個元素:
Hello!
Greetings!
G'day!
Bonjour!
Jrooana!
一般來說,[att|="val"] 可以用于任何屬性及其值。
假設一個 HTML 文檔中有一系列圖片,其中每個圖片的文件名都形如 figure-1.jpg 和 figure-2.jpg。就可以使用以下選擇器匹配所有這些圖像:
img[src|="figure"] {border: 1px solid gray;}
七、表單樣式
屬性選擇器樣式無需使用class或id的形式:
input[type="text"] { width:150px; display:block; margin-bottom:10px; background-color:yellow; } input[type="button"] { width:120px; margin-left:35px; display:block; }
注1:IE7和IE8需聲明!DOCTYPE才支持屬性選擇器!IE6和更低的版本不支持屬性選擇器。
注2: 基本選擇器(標簽、id、class)的優先級
style > id選擇器 > class選擇器 > 標簽選擇器
注3:
CSS HTML
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。