[whatwg] scoped style sheets and @-rules
Tab Atkins Jr.
jackalmage at gmail.com
Mon Jan 21 11:17:58 PST 2013
On Mon, Jan 21, 2013 at 6:39 AM, L. David Baron <dbaron at dbaron.org> wrote:
> I thought I'd brought this issue up before, but I can't seem to find
> a record of it.
> currently says that, inside scoped style sheets, @page rules are
> ignored, but other @-rules are honored, scoped either to the style
> sheet or to the subtree.
> I think it makes perfect sense to honor @-rules whose effects are
> scoped to the style sheet (@namespace, also @charset if it weren't
> already ignored) or @-rules whose effects are to condition the rules
> inside of them (all the rules in css3-conditional: @media,
> @supports) or import more rules (@import).
> But I think it's a large amount of extra implementation complexity
> to honor @-rules whose purpose is to build global dictionaries (in
> particular, @keyframes and @font-face), and I suspect the end result
> of honoring them would yield technology that's more confusing for
> authors. Anything that can be done by changing the meaning of an
> @keyframes or @font-face rule within a subtree could also be done by
> declaring a different animation rule or font-family within that
> subtree. I suspect the extra clarity from the latter makes it a
> better authoring practice anyway, so I don't think implementations
> should be required to add support for a feature that it's better to
> not use.
> Thus I think the specification should mandate that @keyframes and
> @font-face are ignored in scoped style sheets, just like @page.
> I think it would also be good if the specification left the effects
> of unknown @-rules undefined until whether they should be supported
> can be properly considered.
Should we ignore them entirely, or just ignore the scoped-ness and
have them fill in the global dictionary?
I think it makes sense to be able to create @keyframes and @font-face
rules inside of a Component's style sheet, which is implicitly scoped,
for example. Similar things (@counter-style, @text-transform, @image,
other imaginary things with similar effect) also make sense in the
However, I'd find it acceptable if authors had to make this explicit,
and put the rules inside of @host, which un-scopes its contained style
rules (or rather, transforms them from scope-contained to
(I plan to write the Scoped Styles spec in the next few weeks, so I
can define all of this there.)
More information about the whatwg