Explaination request: MS test (IE8, RC1) -- H4\at-rule-001.htm



Find below the test document.

Please notice that the @ and import identifier are separated by a space.


I expected that the invalid at-keyword would end at the ; after at-rule-red.css";


The specification says: “User agents must ignore <http://www.w3.org/TR/CSS21/syndata.html#ignore>  an invalid at-keyword together with everything following it, up to and including the next semicolon (;) or block ({...}), whichever comes first.”


This results in a red “Filler Text”, can somebody please give me an explanation why the div rule should be ignored as well?


Thanks in advance.


Best Regards,

Robert Stam




<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">


        <title>CSS Test: Parser error handling with invalid at-rules: @ invalid selector</title>

        <link rel="author" title="Microsoft" href="http://www.microsoft.com/" />

        <link rel="help" href="http://www.w3.org/TR/CSS21/syndata.html#parsing-errors" />

        <meta name="flags" content="invalid" />

        <meta name="assert" content="At-Rules start with an at-keyword (@ followed immediately by an identifier)." />

        <style type="text/css">

            @ import "../../../Support/at-rule-red.css";



                color: red;




                color: green;





        <p>Test passes if the "Filler Text" below is green.</p>

        <div>Filler Text</div>




Received on Thursday, 29 January 2009 10:16:37 UTC