Re: [css3-conditional] @supports compounds with general_enclosed

On Mon, Jul 28, 2014 at 4:58 PM, Bear Travis <betravis@adobe.com> wrote:
> Hello,
>
> I was reading the section on @supports and the general_enclosed production.
> [1] The general_enclosed production is “always false. Additionally, style
> sheets must not write ‘@supports’ rules that match this grammar production.”
> What does the “must not write” portion entail? Can the general_enclosed
> production still be part of an overall true production, if combined using a
> disjunction and a true condition, or negated? I ask because some
> implementations maintain the general_production in CSSConditionalRule’s
> conditionText and cssText [2] for a production like "@supports((margin: 0)
> or (green))”, and I wasn’t sure if this counted as writing or not.

It's just an authoring conformance criteria - we defined
<general-enclosed> for future-compat, so that new things defined in a
future spec don't result in the entire rule failing to parse and
getting ignored in legacy UAs.  However, authors *must not* use
<general-enclosed> themselves; they must stick with the actual defined
stuff.  This isn't an onerous requirement, since <general-enclosed>
doesn't do anything.

So, implementations must support it, preserving it in their
representation and giving it the specified truth value (always false),
but authors must not use it in their stylesheets.

~TJ

Received on Tuesday, 29 July 2014 00:15:27 UTC