不需要按部分属性选择?

时间:2013-09-10 18:40:33

标签: html css css-selectors

如果

.animal {background: yellow}

将样式规则应用于包含单词animal的类的任何元素,即使它还包含其他单词,例如......

<li class="toy animal">Toy Bear</li>

那么下面的语法是否需要按部分属性选择?

*[class~="animal"] {background: yellow}

由于

2 个答案:

答案 0 :(得分:1)

唯一的区别是,当.value可用于匹配任何属性值时,您只能对类使用[attribute~="value"]语法。

但是当您使用[class~="className"]匹配class属性值时,它等同于标准.className语法。

答案 1 :(得分:1)

根据selectors spec,句点.可替代~=属性的class表示法。

  

因此,对于HTML,div.valuediv[class~=value]具有相同的含义

只是澄清~=含义:

  

E [foo~ =“bar”]一个E元素,其“foo”属性值是以空格分隔的值列表,其中一个值恰好等于“bar”

请注意,这与*=

不同

换句话说,.animal[class~=animal](没有*)是相同的。