- From: Marat Tanalin | tanalin.com <mtanalin@yandex.ru>
- Date: Fri, 27 Jan 2012 21:01:48 +0400
- To: brice.parent@websailors.fr
- Cc: www-style@w3.org
26.01.2012, 20:03, "Brice PARENT" <brice@websailors.fr>: > Le 26/01/2012 16:33, Marat Tanalin | tanalin.com a écrit : > >> 26.01.2012, 03:06, "fantasai" <fantasai.lists@inkedblade.net>: >>> On 01/25/2012 02:34 PM, Brian Kardell wrote: >>>> ! Or $ ? >>>> >>>> :-) >>> Something. Or other. :) The problem with $ was that it's often >>> used for variables, so people didn't like that for that reason, >>> which is fair. I don't have a particular preference of ASCII >>> character. >>> >>> ~fantasai >> Currently we probably have too many syntaxes that have similar meaning: >> >> 1. ':scope' in Selectors 4 (dev.w3.org/csswg/selectors4/ ); >> 2. '!' in Selectors 4 (dev.w3.org/csswg/selectors4/ ); >> 3. '&' in CSS Hierarchies Module (dev.w3.org/csswg/css3-hierarchies/ ). >> >> Instead, we could use one ':this' pseudo-element. I've initially proposed this pseudo-element in a thread related to potential '@with' at-rule: >> >> http://lists.w3.org/Archives/Public/www-style/2012Jan/0371.html >> >> (':scope' may be considered as possible alternative for ':this', though use of ':scope' is questionable for me since it can be confusing when used in conjunction with HTML5 scoped stylesheets.) > > Wouldn't this disallow the use of :this described in the linked page > about @rule? > In the examples with the @rule page, it seems like :this is to be > replaced by the content of @with, but the selector continues like it > always does, pointing to the last element. > Here, the :this would tell that even if the selector is continuing, this > is the element we want to be affected by the css rules. ':this' pseudoclass is intended to point to current scoping level. So, ':this' inside ':matches()' points to element which ':matches()' is attached to (if I correctly understand ':matches()' meaning): .foo:matches(:this .bar) {...} while ':this' outside of ':matches()' points to its own parent scope (for example, to @with-rule selector). To be able to access arbitrary level of scoping, we probably just additionally need functional form of ':this', so that in following example: @with(.example) { .foo:matches(:this(2) > :this .bar) {...} } ':this(2)' would point to '.example', while ':this' points to ':matches()' subject. At that, ':this', ':this()', ':this(0)', ':this(1)' would be equivalents of each other. As for current draft for subject selector, I personally don't quite like that paradigm at all, and I would instead prefer more flexible and intuitive '<' and '<<' combinators that I've proposed earlier in current thread: http://lists.w3.org/Archives/Public/www-style/2012Jan/1143.html
Received on Friday, 27 January 2012 17:02:24 UTC