W3C home > Mailing lists > Public > www-style@w3.org > April 2015

Re: [css-scoping] Was shadow host intended to be more feature-less than "featureless"?

From: L. David Baron <dbaron@dbaron.org>
Date: Tue, 7 Apr 2015 16:59:54 -0700
To: "Tab Atkins Jr." <jackalmage@gmail.com>
Cc: www-style list <www-style@w3.org>
Message-ID: <20150407235954.GA1361@pescadero.dbaron.org>
On Tuesday 2015-04-07 16:45 -0700, Tab Atkins Jr. wrote:
> Ugh, hit send a little too early.
> 
> On Tue, Apr 7, 2015 at 4:43 PM, Tab Atkins Jr. <jackalmage@gmail.com> wrote:
> > Correct, it *should* match those pseudos.  The whole "featureless"
> > concept exists *solely* to prevent a component author from
> > *accidentally* matching the host element due to the component *user*
> > doing something to it.  The component author should be able to write a
> > rule against a `.foo` class without risking accidentally targeting the
> > host element just because the component user, unaware that .foo is
> > being used inside the component, puts a class=foo on the host element
> > for their own unrelated styling purposes.
> 
> Note, though, that the Blink implementation currently *does* exclude
> everything - it literally returns false immediately if the selector
> has anything else in it.  This was semi-intentional when implemented,
> but I defined things the way I did on purpose, and Blink's current
> behavior is a bug.

But Blink's behavior seems like a much clearer mental model for
authors:  that only :host, :host(), and :host-context() can match
outside of the component.

It seems odd to me that when the host element is a p element
currently in the :active state, that the following selectors would
match it (as part of a larger selector with combinators):
  :host
  :host(p)
  :host(:hover)
  :active
but that the following:
  p
would not match.

And if :active on the host element works, why shouldn't authors
expect it to also work on ancestors of the host element (which
doesn't work, since those ancestors aren't considered at all)?

-David

-- 
𝄞   L. David Baron                         http://dbaron.org/   𝄂
𝄢   Mozilla                          https://www.mozilla.org/   𝄂
             Before I built a wall I'd ask to know
             What I was walling in or walling out,
             And to whom I was like to give offense.
               - Robert Frost, Mending Wall (1914)

Received on Wednesday, 8 April 2015 00:00:20 UTC

This archive was generated by hypermail 2.3.1 : Monday, 2 May 2016 14:39:30 UTC