Re: [webcomponents]: Re-imagining shadow root as Element

Apologies for not replying earlier. The last few weeks were a bit...
uhm... hectic.

On Tue, Mar 19, 2013 at 1:57 PM, Jonas Sicking <jonas@sicking.cc> wrote:
> On Tue, Mar 19, 2013 at 12:05 AM, Roland Steiner
> <rolandsteiner@google.com> wrote:

>> .) Being an element, can a <shadowroot> can itself have a <shadowroot>?.

>>     <div>
>>         <shadowroot>
>>             <shadowroot>

We should probably not allow this, throwing an exception.

>>
>> .) Similar to the above: can <content> and <shadow> have <shadowroot>
>> children?

Note, that <shadowroot> Element may never be a child node of an
element. The proposal was that upon using appendChild with
<shadowroot> element as an argument,  createShadowRoot is called.

Other than that, yes, in markup, <content>/<shadow> totally can have a
<shadowroot> nested inside of them.

>>
>> .) Behavior of a DocumentFragment being inserted into the document also
>> needs twizzling if it contains a <shadowroot>.

Yup. The psychedelic stuff begins when you start contemplating how
ShadowRoot looks as a child of a DocumentFragment. Clearly, you can't
have DocumentFragment host a ShadowRoot, so it would have to be
"spring-loaded" in some way... which means that it would need to be a
child of a DocumentFragment... which means that the whole "may never
be a child node" thing has at least one exception. Yeah... that's...
"awesome".

At least initially, the <shadowroot> felt like very <template>-like to
me. In other words, more like this:

<div id="would-be-shadow-host">
   <template shadow>
      <div> ...

Where "shadow" is a special attribute that _binds_ the template to its
parent, where "binds" is defined as creating a shadow root.

:DG<

Received on Tuesday, 9 April 2013 20:39:59 UTC