W3C home > Mailing lists > Public > www-style@w3.org > March 2010

Re: [css3] Specificity mechanism issue

From: Jens O. Meiert <jens@meiert.com>
Date: Tue, 30 Mar 2010 18:28:32 -0700
Message-ID: <9fbcac551003301828he031518h49a1bb86d96b92db@mail.gmail.com>
To: www-style@w3.org
Warming up an old thread [1].

In CSS 1, the selector “a b c d e f g h i j” has the specificity 10,
same as “.a” [2].

In CSS 2, the selector “a b c d e f g h i j” has the specificity 10,
same as “.a” [3].

In CSS 2.1, the selector “a b c d e f g h i j” has the specificity
0,0,0,10, less specific than “.a” which has 0,0,1,0 [4].

In CSS 3, the selector “a b c d e f g h i j” has the specificity 10,
same as “.a” [5].

(I don’t understand that when the specs are talking about
concatenation, there would be a difference between “a b c d e f g h i
j”’s 10 and “.a”’s 10. Please correct me if I’m wrong, and if I am,
let’s maybe make things more clear in the specs.)

Yet, why is this?

While I don’t recall ever having seen any issues in practice—certainly
due to low probability of such long selectors—, CSS 2.1’s approach
makes much more sense to me. In other words, I’d yet have to see a
reason why 99 elements selectors would be less specific than an ID
selector, but 101 are.

Please let me know if I overlooked something.


[1] http://lists.w3.org/Archives/Public/www-style/2004Sep/0055.html
[2] http://www.w3.org/TR/CSS1/#cascading-order
[3] http://www.w3.org/TR/2008/REC-CSS2-20080411/cascade.html#specificity
[4] http://www.w3.org/TR/CSS21/cascade.html#specificity
[5] http://www.w3.org/TR/css3-selectors/#specificity

-- 
Jens O. Meiert
http://meiert.com/en/
Received on Wednesday, 31 March 2010 01:29:25 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 17:20:25 GMT