使用类AND伪类编写CSS选择器的正确方法是什么?

时间:2010-07-20 23:24:17

标签: css css-selectors

简单问题:用类AND伪类编写CSS选择器的正确方法是什么?

例如:

a.someclass:active {
  top:1px;
}

a:active.someclass {
  top:1px;
}

哪个是对的?如果可能的话,你能给我一个这方面的资料 - 例如W3C参考吗?我试图找到它但唉,我不能。

3 个答案:

答案 0 :(得分:3)

它们都是正确的,虽然第一个更常见。

这是CSS grammar中指定的内容。您可以看到同一位置允许.class:pseudo选择器,以及#id[attrib=val]选择器:

simple_selector
  : element_name [ HASH | class | attrib | pseudo ]*
  | [ HASH | class | attrib | pseudo ]+
  ;
class
  : '.' IDENT
  ;
pseudo
  : ':' [ IDENT | FUNCTION S* [IDENT S*]? ')' ]
  ;

答案 1 :(得分:2)

第一个是两个都是对的

Selectors Level 3

答案 2 :(得分:1)

如果我正确理解documentation

,两者都应该没问题
  

在选择器中包含的所有简单选择器序列中允许伪类。在前导类型选择器或通用选择器(可能省略)之后,伪类在<简单选择器序列的任何地方都被允许