Re: [css3-syntax] Error handling within known at-rules

> My interpretation is that the sheet consists of:
> 
> 1. An invalid and ignorable at-rule: @import "include.css" { color: red 
> }
> 2. Ill-formed, invalid, ignorable inter-rule junk: print;
> 3. A valid rule set: .red { color: red; }

I think I would agree.  I'd also point out that any ambiguities in error
recovery need to be viewed in the context of the general policy that underlies
error handling in CSS, which is that of backwards compatibility.

Any new rules and their error recovery should be such that the eror recovery
will delete no more than the new construct.  An error in a new construct
should not cause deletion of anything beyond the end of what would have been
deleted if the browser was totally unaware of the new construct.

A corollary of this, is that error recovery rules need not specify details
that don't affect backward compatibility, e.g. it doesn't actually matter 
whether a sub-rule, in an @media block, causes the whole @media block or
just the sub-rule to be deleted, even though it is fairly clear to me that
the spirit of the rules is that only the sub-rule be delete.  Both actions
are limited to the new construct, although future expandability is likely
to be better if the damage is strictly limited to the sub-rule.

Note, though, that the original question isn't really about error recovery
but about whether or not an empty media list is a valid construct, and,
if so, what does it mean. 

Received on Sunday, 10 October 2004 14:07:23 UTC