- From: Tab Atkins Jr. <jackalmage@gmail.com>
- Date: Mon, 15 Jul 2013 21:22:40 -0500
- To: François REMY <francois.remy.dev@outlook.com>
- Cc: "www-style@w3.org" <www-style@w3.org>
On Mon, Jul 15, 2013 at 6:16 PM, François REMY
<francois.remy.dev@outlook.com> wrote:
> TL/DR: With the use of Shadow DOM, I start seeing parametric pseudo-elements all over the place. This is great, but if those pseudo-elements use parentheses, they will not compose well with the nested rule proposal that are greatly needed to reduce the overhead those pseudo-elements introduce.
>
> I therefore propose that parentheses around a pseudo-element should not be required if the pseudo-element is last in chain, which I think will be the case for most shadow-dom-related pseudo-elements, as well as region-related ones.
>
> In fact, I'm strongly arguing for the parentheses-free syntax in all cases where it is known beforehand that no other pseudo-element would make sense after the parametric one.
>
>
>
> This make it possible to write things like:
>
> ::distributed figure { ... }
> ::distributed ... ... ...
>
> ==
>
> ::distributed {{
> figure { ... }
> ... ... ...
> }}
>
>
> and
>
>
> #my-region::region figure { ... }
> #my-region::region ... ... ...
>
> ==
>
> #my-region::region {{
> figure { ... }
> ... ... ...
> }}
>
> (where an isolated {}-island inside a selector triggers in-rule selector nesting)
The Shadow DOM pseudos have already switched to this (the spec may not
have caught up to it, yet), and Alan was planning to switch ::region
as well, as soon as Shadow DOM's switch was confirmed and sure.
> PS: By the way, did someone beside Tab had a look at the {so-called} ":host(selector) pseudo-class" {previously known as the ":context()" pseudo-class}? It seems really crazy to me and not functionally belonging to the "pseudo-class family". If not, please have a look here:
>
> https://www.w3.org/Bugs/Public/show_bug.cgi?id=22390
>
> and start a new thread if you feel the same as me
How is it possibly not a pseudo-class? It's an additional filter
applied to the host element, based on information not obtainable via
normal selectors.
~TJ
Received on Tuesday, 16 July 2013 02:23:26 UTC