- From: Etan Wexler <ewexler@stickdog.com>
- Date: Sun, 10 Oct 2004 02:49:51 -0700
- To: www-style@w3.org
Björn Höhrmann ("Bjoern Hoehrmann") wrote to <mailto:www-style@w3.org> on 6 October 2004 in "Re: Possible CSS2/CSS2.1/CSS3 spec error in @media" (<mid:41670790.536500807@smtp.bjoern.hoehrmann.de>): > [The] generic error handling rules for illegal at-rules would apply, > i.e. the entire at-rule would be ignored. Where is the specification of generic error handling for illegal at-rules? I find two provisions. One is in section 4.1.5, "At-rules", in the CSS 2.1 specification (<http://www.w3.org/TR/CSS21/syndata.html#at-rules>): "A CSS user agent that encounters an unrecognized at-rule must ignore the whole of the at-rule and continue parsing after it." The other provision, noted by Jim Wilkinson (in <mid:opsfistbo0brj5zx@dial81-131-132-44.in-addr.btopenworld.com>), is in section 4.2, "Rules for handling parsing errors", in the CSS 2.1 specification (<http://www.w3.org/TR/CSS21/syndata.html#parsing-errors>): "User agents must ignore an invalid at-keyword together with everything following it, up to and including the next semicolon (;) or block ({...}), whichever comes first." Are the passages equivalent? Does the first say something that the second does not? What is "an unrecognized at-rule"? If an unrecognized at-rule is one which has some invalid part, then the following at-rule must be ignored entirely. @media screen { element-1 { font-size: 2em; margin: 1ex; error: error; } element-2 { border: thick; padding: 1ex; color: white; background: black; } } Further, if an unrecognized at-rule is one which has some invalid part, then an invalid medium identifier or query would invalidate an entire "@media" or "@import" at-rule. But section 7.3, "Recognized media types", in the CSS 2.1 specification (<http://www.w3.org/TR/CSS21/media.html#media-types>) states: "Unknown media type names should not result in the @media rule being ignored." I would suggest amending the CSS 2.1 specification, but I understand that at this point the Working Group is on a full charge towards Recommendation status. Therefore my compromise suggestion is that the Working Group issue a correction once the specification achieves Recommendation status. I also suggest that the policy for CSS level 3 and later be one of clear specification of error handling for each type of at-rule. The specification of error handling should go with the specification of proper grammar. -- Etan Wexler.
Received on Sunday, 10 October 2004 09:52:56 UTC