::distributed and relative selectors (Was Re: [shadowdom]: Using :root to specify the insertion point in ::distributed)

The subject was changed.

On Wed, Apr 3, 2013 at 9:01 AM, Tab Atkins Jr. <jackalmage@gmail.com> wrote:
> On Tue, Apr 2, 2013 at 3:01 PM, Dimitri Glazkov <dglazkov@google.com> wrote:
>> Using scope-relative approach (which I love), what does
>> ::distributed(:scope) represent?
>
> Nothing.  The scope element is a theoretical construct here
> representing a container for all the distributed elements, not a real
> element that you can do something with.

I am now implementing relative selectors in blink.
As the first usecase of relative selectors, I've tried to use it in
'::distributed(..)' pseudo elements.

Now I have a question. Let me use the following deduction:

1). content::distributed(> .hello)               ->  Please assume this matches.
2). content::distributed(:scope > .hello)        -> Matches. (1 and 2
should be equivalent acccording to the defintion of relative
selectors).
3). content::distributed(*:scope > .hello)       -> Matches.
4). content::distributed(content:scope > .hello) -> Matches.
5). content::distributed(content > .hello)       -> Should not match.

It seems 4) and 5) violates the principle of pseudo class, doesn't it?
There is a something wrong in between 1 and 5.  That's between1 and 2, isn't it?


--
Hayato

Received on Thursday, 18 April 2013 08:45:17 UTC