Re: [css3-cascade] 'default' and defining origins precisely

On Tue, Dec 18, 2012 at 2:39 PM, L. David Baron <dbaron@dbaron.org> wrote:
> In the past we've been able to be fuzzy about what was a separate
> origin in terms of cascading versus what was the result of order.
> For example, implementations of CSS prior to css3-cascade could
> treat HTML presentational hints, style attributes, CSS animations,
> and CSS transitions as separate origins, or could implement them in
> terms of order, and the difference would not be distinguishable
> without examining the code.
>
> However, http://dev.w3.org/csswg/css3-cascade/#default introduces
> the new 'default' keyword, whose definition says:
>   # If the cascaded value is the ‘default’ keyword, then the origin
>   # level to which it belongs is discarded from the cascade,
>   # resulting in a new cascaded value. This continues until the
>   # cascaded value is not ‘default’ or until the output of the
>   # cascade is empty.
>
> This exposes the semantics of what is an origin.
>
> Furthermore, I tend to suspect that the origin concept that we want
> to expose here is actually just UA-user-author, without any of the
> other pieces (i.e., all of the extra pieces fall into the author
> category).  For example, I tend to think that use of the 'default'
> keyword within an animation should yield a computed value that comes
> from the UA and user levels, and should not include the values from
> the author level.
>
> If we agree we want this behavior, it could be defined in multiple
> ways:  e.g., by defining a concept of a major origin and minor
> origin, or by restructuring more heavily.

I agree that 'default' probably wants to strip away things in the
broad strokes you've laid out, rather than strictly per origin as we
have it defined.  That probably matches author intent better, and lets
us remain fuzzy about exactly what origins there are.

~TJ

Received on Wednesday, 19 December 2012 03:47:49 UTC