W3C home > Mailing lists > Public > public-webapps@w3.org > October to December 2011

Re: [webcomponents]: First draft of the Shadow DOM Specification

From: Edward O'Connor <eoconnor@apple.com>
Date: Tue, 20 Dec 2011 16:49:30 -0800
To: public-webapps@w3.org
Message-id: <m239ceoijp.fsf@eoconnor.apple.com>
Hi Dimitri,

You wrote:

> In the joyous spirit of sharing, I present you with a first draft of
> the Shadow DOM Specification:
>
> http://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html

Awesome. Thanks for writing this up! Obviously, I'll have to read this
more closely while hiding upstairs at my in-law's house next week. That
said, I wanted to quickly note something I noticed while skimming this
just now.

In your Event Retargeting Example[1], you have a pseudo="" attribute
which allows the author of the shadow DOM to specify the name of a
pseudo-element which will match that element. For example, in

    <div id="player">
      <shadow-boundary>
        <div pseudo="controls">
          …
        </div>
      </shadow-boundary>
    </div>

the web author would be able to select the player's controls by writing

    #player::controls

I'm worried that users may stomp all over the CSS WG's ability to mint
future pseudo-element names. I'd rather use a functional syntax to
distinguish between custom, user-defined pseudo-elements and
engine-supplied, CSS WG-blessed ones. Something like

    #player::shadow(controls)
or
    #player::custom(controls)

could do the trick. The latter (or some other, non-shadow-DOM-specific
name) is potentially more exciting because there may be more use cases
for author-supplied pseudo-elements than just the shadow DOM. For
instance, I could imagine an extension to DOM Range which would allow a
user to name a range for selector matching.

Anyway, thanks for the writeup, and have a wonderful break!


Ted

1. http://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#event-retargeting-example
Received on Wednesday, 21 December 2011 00:50:36 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 18:49:49 GMT