Re: [csswg-drafts] [selectors-4] reconsider specificity rule for :matches()

`html > head + :matches(html > head + body)` is like `html > head + body`, but with what specificity?

> The specificity of the :matches() pseudo-class is replaced by the specificity of its argument.

suggests specificity 5

> Thus, a selector written with :matches() has equivalent specificity to the equivalent selector written without :matches()

suggests specificity 3, unless we consider the "equivalent selector written without :matches()" to mean `html:not(:not(html)) > head:not(:not(head)) + body`


> The specificity of the :not() pseudo-class is replaced by the specificity of the most specific selector in its argument; thus it has the exact behavior of :not(:matches(argument)).

This appears to imply that the specificity of the :matches() pseudo-class is replaced by the specificity of the most specific selector in its argument, so `html > head + :matches(html > head + html, *)` is like `html > head + *` but with specificity 5.


-- 
GitHub Notification of comment by ericwilligers
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/1027#issuecomment-391410933 using your GitHub account

Received on Wednesday, 23 May 2018 16:25:33 UTC