Section 4: Syntax and basic data types

Design notes

These tests follow the order of the specifications. The words Valid and Invalid mean that the relevant CSS will and won't validate, respectively. In the following tests, the red color indicates failure while the green color indicates that the test has been passed by the browser. The label Assertion explains the scope of the test.

Download

You can download all these tests in a single zip file.

Summary of tests
Name Title Flag Assertion
atrules0.html At-rules: Invalid at-rule Invalid Browsers should ignore an invalid at-rule
atrules1.html At-rules: Nested at-rule Invalid Browsers should ignore a nested at-rule
atrules2.html At-rules: Nested at-rule Invalid Browsers should ignore a nested at-rule
atrules3.html At-rules: Nested at-rule Invalid Browsers should ignore a nested at-rule
blocks0.html Blocks: Not-closed string Invalid Browsers should ignore an invalid block
blocks1.html Blocks: Nested curly braces Invalid Browsers should ignore an invalid block
blocks2.html Blocks: Nested round braces Invalid Browsers should ignore invalid blocks
blocks3.html Blocks: Invalid token sequence Invalid Browsers should ignore an invalid token sequence
char0.html Characters and case: Escaping of Unicode characters Valid Browsers should be able to read the correct escaping sequence
char1.html Characters and case: Escaping a character inside a keyword Invalid Browsers should be able to ignore the keyword
char2.html Characters and case: Invalid escaped tokens Invalid Browsers should be able to ignore invalid escaped tokens
char3.html Characters and case: Invalid id names Invalid Browsers should be able to ignore invalid id names
char4.html Characters and case: Valid id names Valid Browsers should be able to recognize valid id names
char5.html Characters and case: Valid id names Valid Browsers should be able to recognize valid id names
char6.html Characters and case: Invalid id names Invalid Browsers should ignore invalid id names
char7.html Characters and case: Invalid id names Invalid Browsers should ignore invalid id names
char8.html Characters and case: Escaped Unicode characters as id names Valid Browsers should be able to recognize escaped Unicode characters as id names
char9.html Characters and case: Invalid token sequence with escaped Unicode characters Invalid Browsers should ignore an invalid token sequence with escaped Unicode characters
char10.html Characters and case: Escaped Unicode characters in the exact match attribute selector Valid Browsers should be able to recognize escaped Unicode characters in the exact match attribute selector
char11.html Characters and case: Escaped Unicode characters in the exact match attribute selector Valid Browsers should be able to recognize escaped Unicode characters in the exact match attribute selector
char12.html Characters and case: Escaping a character next to a property value Invalid Browsers should ignore the property value
comments0.html Comments: Comment before a declaration Valid Browsers should ignore a comment before a declaration
comments1.html Comments: Comment inside a declaration Valid Browsers should ignore a comment inside a declaration
comments2.html Comments: Comment inside a declaration, with a space Valid Browsers should ignore a comment inside a declaration also when it is combined with a space
comments3.html Comments: Comment inside a declaration, with a space Valid Browsers should ignore a comment inside a declaration also when it is combined with a space
comments4.html Comments: Comments with a value inside Invalid Browsers should ignore a comment also when it contains a value
comments5.html Comments: SGML comments Valid Browsers should ignore a SGML comment
declaration0.html Declarations and properties: Invalid property Invalid Browsers should ignore a declaration with an invalid property
declaration1.html Declarations and properties: Invalid value Invalid Browsers should ignore a declaration with an invalid value
declaration2.html Declarations and properties: Invalid value Invalid Browsers should ignore a declaration with an invalid value
key.html Keywords: Invalid keyword (quoted) Invalid Browsers should ignore an invalid keyword
parsingerror0.html Rules for handling parsing errors: Invalid properties Invalid Browsers should ignore an invalid property
parsingerror1.html Rules for handling parsing errors: Illegal values Invalid Browsers should ignore an illegal value
parsingerror2.html Rules for handling parsing errors: Malformed declarations Invalid Browsers must handle unexpected tokens encountered while parsing a declaration by reading until the end of the declaration
parsingerror3.html Rules for handling parsing errors: Invalid at-keywords Invalid Browsers must ignore an invalid at-keyword
parsingerror4.html Rules for handling parsing errors: Unexpected end of style sheet Invalid Browsers must close all open constructs
parsingerror5.html Rules for handling parsing errors: Unexpected end of string Invalid Browsers must close strings upon reaching the end of a line, but then drop the construct in which the string was found
rulesets0.html Rule sets, declaration blocks, and selectors: Misplaced separator Invalid Browsers should ignore a declaration with a misplaced separator
rulesets1.html Rule sets, declaration blocks, and selectors: Unknown selector Invalid Browsers should ignore a declaration with an unknown selector
rulesets2.html Rule sets, declaration blocks, and selectors: Invalid selector Invalid Browsers should ignore a declaration with an invalid selector
unsupportedvalues0.html Values: Unsupported values Valid If a browser does not support a particular value, it should ignore that value when parsing style sheets, as if that value was an illegal value

Date: November 30 - December 1, 2007