*[title] {color:red;}
亲自试一试例子 2
a[href] {color:red;}
亲自试一试例子 3
a[href][title] {color:red;}
亲自试一试例子 4
img[alt] {border: 5px solid red;}
亲自试一试提示:上面这个特例更适合用来诊断而不是设计,即用来确定图像是否确实有效。
<planet>Venus</planet>根据具体属性值选择
<planet moons="1">Earth</planet>
<planet moons="2">Mars</planet>
查看效果
a[href="http://www.w3school.com.cn/about_us.asp"] {color: red;}
亲自试一试例子 2
a[href="http://www.w3school.com.cn/"][title="W3School"] {color: red;}下面我们再回到行星那个例子中。假设只希望选择 moons 属性值为 1 的那些 planet 元素:
这会把以下标记中的第一个超链接的文本变为红色,但是第二个或第三个链接不受影响:
<a href="http://www.w3school.com.cn/" title="W3School">W3School</a>
<a href="http://www.w3school.com.cn/css/" title="CSS">CSS</a>
<a href="http://www.w3school.com.cn/html/" title="HTML">HTML</a>
亲自试一试
例子 3
同样地,XML 语言也可以利用这种方法来设置样式。
planet[moons="1"] {color: red;}上面的代码会把以下标记中的第二个元素变成红色,但第一个和第三个元素不受影响:
<planet>Venus</planet>属性与属性值必须完全匹配
<planet moons="1">Earth</planet>
<planet moons="2">Mars</planet>
查看效果
<p class="important warning">This paragraph is a very important warning.</p>如果写成 p[class="important"],那么这个规则不能匹配示例标记。
p[class="important warning"] {color: red;}
亲自试一试根据部分属性值选择
img[title~="Figure"] {border: 1px solid gray;}这个规则会选择 title 文本包含 "Figure" 的所有图像。没有 title 属性或者 title 属性中不包含 "Figure" 的图像都不会匹配。
类型 描述可以想到,这些选择有很多用途。
[abc^="def"] 选择 abc 属性值以 "def" 开头的所有元素
[abc$="def"] 选择 abc 属性值以 "def" 结尾的所有元素
[abc*="def"] 选择 abc 属性值中包含子串 "def" 的所有元素
<p lang="en">Hello!</p>一般来说,[att|="val"] 可以用于任何属性及其值。
<p lang="en-us">Greetings!</p>
<p lang="en-au">G'day!</p>
<p lang="fr">Bonjour!</p>
<p lang="cy-en">Jrooana!</p>
选择器 描述
[attribute] 用于选取带有指定属性的元素。
[attribute=value] 用于选取带有指定属性和值的元素。
[attribute~=value] 用于选取属性值中包含指定词汇的元素。
[attribute|=value] 用于选取带有以指定值开头的属性值的元素,该值必须是整个单词。
[attribute^=value] 匹配属性值以指定值开头的每个元素。
[attribute$=value] 匹配属性值以指定值结尾的每个元素。
[attribute*=value] 匹配属性值中包含指定值的每个元素。