Files
servo/tests/wpt/css-tests/css21_dev/html4/chapter-4.htm

4634 lines
188 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
<title>Syntax and basic data types - CSS 2.1 Conformance Test Suite</title>
<style type="text/css">
@import "http://www.w3.org/StyleSheets/TR/base.css";
@import "../indices.css";
</style>
</head>
<body>
<h1>CSS 2.1 Conformance Test Suite</h1>
<h2>Syntax and basic data types (431 tests)</h2>
<table width="100%">
<col id="test-column">
<col id="refs-column">
<col id="flags-column">
<col id="info-column">
<thead>
<tr>
<th>Test</th>
<th><abbr title="Rendering References">Refs</abbr></th>
<th>Flags</th>
<th>Info</th>
</tr>
</thead>
<tbody id="s4">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#q4.0">4 Syntax and basic data types</a></th></tr>
<!-- 0 tests -->
</tbody>
<tbody id="s4.#annoying-warning">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.1">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#syntax">4.1 Syntax</a></th></tr>
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.#x0">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.1">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.1.1">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#tokenization">4.1.1 Tokenization</a></th></tr>
<!-- 6 tests -->
<tr id="attribute-token-selector-002-4.1.1" class="">
<td>
<a href="attribute-token-selector-002.htm">attribute-token-selector-002</a></td>
<td><a href="reference/attribute-token-selector-002-ref.htm">=</a> </td>
<td></td>
<td>[attr~=&quot;&quot;]Attribute Selectors with Empty String Values
<ul class="assert">
<li>[attr~=''] is valid but matches nothing.</li>
</ul>
</td>
</tr>
<tr id="core-syntax-009-4.1.1" class="">
<td>
<a href="core-syntax-009.htm">core-syntax-009</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td></td>
<td>Syntactic White Space
<ul class="assert">
<li>Only the characters U+0020, U+0009, U+000A, U+000D, and U+000C are considered white space.</li>
</ul>
</td>
</tr>
<tr id="list-style-020-4.1.1" class="">
<td>
<a href="list-style-020.htm">list-style-020</a></td>
<td><a href="reference/list-style-020-ref.htm">=</a> </td>
<td></td>
<td>'list-style' shorthand and 'none' values
<ul class="assert">
<li></li>
</ul>
</td>
</tr>
<tr id="uri-013-4.1.1" class="invalid">
<td>
<a href="uri-013.htm">uri-013</a></td>
<td><a href="reference/uri-013-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>handling of invalid url() functions
</td>
</tr>
<tr id="whitespace-001-4.1.1" class="">
<td>
<a href="whitespace-001.htm">whitespace-001</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td></td>
<td>White space - em-space (U+2003)
<ul class="assert">
<li>Em-space is not treated as white space.</li>
</ul>
</td>
</tr>
<tr id="whitespace-002-4.1.1" class="">
<td>
<a href="whitespace-002.htm">whitespace-002</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td></td>
<td>White space - ideographic space (U+3000)
<ul class="assert">
<li>Ideographic space is not treated as white space.</li>
</ul>
</td>
</tr>
</tbody>
<tbody id="s4.1.1.#comment">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.1.#whitespace">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.2">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.1.2">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#keywords">4.1.2 Keywords</a></th></tr>
<!-- 4 tests -->
<tr id="keywords-000-4.1.2" class="">
<td>
<a href="keywords-000.htm">keywords-000</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td></td>
<td>Keywords v. Strings (background)
</td>
</tr>
<tr id="keywords-001-4.1.2" class="">
<td>
<a href="keywords-001.htm">keywords-001</a></td>
<td><a href="reference/keywords-001-ref.htm">=</a> </td>
<td></td>
<td>Keywords v. Strings (width)
</td>
</tr>
<tr id="quoted-keywords-001-4.1.2" class="invalid">
<td>
<a href="quoted-keywords-001.htm">quoted-keywords-001</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing single quoted property keywords
<ul class="assert">
<li>Rules with property keywords which are surrounded by single quotes are ignored.</li>
</ul>
</td>
</tr>
<tr id="quoted-keywords-002-4.1.2" class="invalid">
<td>
<a href="quoted-keywords-002.htm">quoted-keywords-002</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing double quoted value keywords
<ul class="assert">
<li>Rules with value keywords which are surrounded by double quotes are ignored.</li>
</ul>
</td>
</tr>
</tbody>
<tbody id="s4.1.2.1">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.1.2.1">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#vendor-keywords">4.1.2.1 Vendor-specific extensions</a></th></tr>
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.2.2">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.1.2.2">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#vendor-keyword-history">4.1.2.2 Informative Historical Notes</a></th></tr>
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.3">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.1.3">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#characters">4.1.3 Characters and case</a></th></tr>
<!-- 48 tests -->
<tr id="case-sensitive-000-4.1.3" class="">
<td>
<a href="case-sensitive-000.htm">case-sensitive-000</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td></td>
<td>Case-sensitivity of Properties and Keywords (background)
</td>
</tr>
<tr id="case-sensitive-001-4.1.3" class="">
<td>
<a href="case-sensitive-001.htm">case-sensitive-001</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td></td>
<td>Case-sensitivity of At-rules (@media)
</td>
</tr>
<tr id="case-sensitive-003-4.1.3" class="">
<td>
<a href="case-sensitive-003.htm">case-sensitive-003</a></td>
<td><a href="reference/case-sensitive-003-ref.htm">=</a> </td>
<td></td>
<td>Case-sensitivity of pseudo-classes and pseudo-elements
<ul class="assert">
<li>Pseudo-class and pseudo-element names are ASCII case-insensitive.</li>
</ul>
</td>
</tr>
<tr id="case-sensitive-004-4.1.3" class="">
<td>
<a href="case-sensitive-004.htm">case-sensitive-004</a></td>
<td><a href="reference/case-sensitive-003-ref.htm">=</a> </td>
<td></td>
<td>Case-sensitivity of :lang() arguments
<ul class="assert">
<li>The argument to :lang() is ASCII case-insensitive.</li>
</ul>
</td>
</tr>
<tr id="case-sensitive-005-4.1.3" class="">
<td>
<a href="case-sensitive-005.htm">case-sensitive-005</a></td>
<td><a href="reference/case-sensitive-005-ref.htm">=</a> </td>
<td></td>
<td>Case-sensitivity of counter names
<ul class="assert">
<li>Counter names are case-sensitive.</li>
</ul>
</td>
</tr>
<tr id="case-sensitive-006-4.1.3" class="HTMLonly">
<td>
<a href="case-sensitive-006.htm">case-sensitive-006</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Case sensitivity with element selectors
<ul class="assert">
<li>Element selectors are case-insensitive in HTML.</li>
</ul>
</td>
</tr>
<tr id="case-sensitive-008-4.1.3" class="">
<td>
<a href="case-sensitive-008.htm">case-sensitive-008</a></td>
<td></td>
<td></td>
<td>Case sensitive attributes
<ul class="assert">
<li>CSS style sheets parts that are not under the control of CSS are case dependant on the language being used.</li>
</ul>
</td>
</tr>
<tr id="escaped-ident-001-4.1.3" class="">
<td>
<a href="escaped-ident-001.htm">escaped-ident-001</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Parsing escaped identifiers as selectors, property and value
<ul class="assert">
<li>Escaped identifiers are parsed and applied.</li>
</ul>
</td>
</tr>
<tr id="escaped-ident-002-4.1.3" class="">
<td>
<a href="escaped-ident-002.htm">escaped-ident-002</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Parsing escaped special CSS characters
<ul class="assert">
<li>Escaped special CSS characters are no longer meaningful.</li>
</ul>
</td>
</tr>
<tr id="escaped-ident-003-4.1.3" class="invalid">
<td>
<a href="escaped-ident-003.htm">escaped-ident-003</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing escaped newlines within identifiers
<ul class="assert">
<li>Newlines cannot be escaped within identifiers.</li>
</ul>
</td>
</tr>
<tr id="escaped-ident-004-4.1.3" class="">
<td>
<a href="escaped-ident-004.htm">escaped-ident-004</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td></td>
<td>Parsing escaped chars in the range of 0-9a-f
<ul class="assert">
<li>The {unicode} chars are not treated like {escape} chars.</li>
</ul>
</td>
</tr>
<tr id="escaped-ident-char-001-4.1.3" class="">
<td>
<a href="escaped-ident-char-001.htm">escaped-ident-char-001</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Parsing escaped characters as selector and property
<ul class="assert">
<li>Escaped characters are treated as normal characters.</li>
</ul>
</td>
</tr>
<tr id="escaped-ident-spaces-001-4.1.3" class="">
<td>
<a href="escaped-ident-spaces-001.htm">escaped-ident-spaces-001</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Parsing escaped identifiers with spaces
<ul class="assert">
<li>Escaped identifiers are parsed and spaces between them are ignored.</li>
</ul>
</td>
</tr>
<tr id="escaped-ident-spaces-002-4.1.3" class="">
<td>
<a href="escaped-ident-spaces-002.htm">escaped-ident-spaces-002</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Termination of escaped character sequences with white space
<ul class="assert">
<li>Escaped character sequences are terminated by white space.</li>
</ul>
</td>
</tr>
<tr id="escaped-ident-spaces-003-4.1.3" class="">
<td>
<a href="escaped-ident-spaces-003.htm">escaped-ident-spaces-003</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Termination of escaped character sequences with six digits
<ul class="assert">
<li>Escaped character sequences are terminated by exactly six hex digits.</li>
</ul>
</td>
</tr>
<tr id="escaped-ident-spaces-004-4.1.3" class="">
<td>
<a href="escaped-ident-spaces-004.htm">escaped-ident-spaces-004</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Termination of escaped character sequences with six digits and white space
<ul class="assert">
<li>Escaped character sequences are terminated by exactly six hex digits and white space.</li>
</ul>
</td>
</tr>
<tr id="escaped-ident-spaces-005-4.1.3" class="">
<td>
<a href="escaped-ident-spaces-005.htm">escaped-ident-spaces-005</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Termination of escaped character sequences with less than 6 digits and white space
<ul class="assert">
<li>Escaped character sequences are terminated by white space.</li>
</ul>
</td>
</tr>
<tr id="escaped-ident-spaces-006-4.1.3" class="">
<td>
<a href="escaped-ident-spaces-006.htm">escaped-ident-spaces-006</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Termination of escaped character sequences with two digits terminated by white space
<ul class="assert">
<li>Escaped character sequences (two hex digits) are terminated by white space.</li>
</ul>
</td>
</tr>
<tr id="escaped-ident-spaces-007-4.1.3" class="">
<td>
<a href="escaped-ident-spaces-007.htm">escaped-ident-spaces-007</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Termination of escaped character sequences with less than six digits terminated by linefeeds and tabs
<ul class="assert">
<li>Escaped character sequences (less than six hex digits) are terminated by white space, tabs and linefeeds.</li>
</ul>
</td>
</tr>
<tr id="escapes-000-4.1.3" class="">
<td>
<a href="escapes-000.htm">escapes-000</a></td>
<td><a href="reference/escapes-000-ref.htm">=</a> </td>
<td></td>
<td>Escaped Newline in String
</td>
</tr>
<tr id="escapes-001-4.1.3" class="">
<td>
<a href="escapes-001.htm">escapes-001</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td></td>
<td>Escaped Quote Marks in String
</td>
</tr>
<tr id="escapes-002-4.1.3" class="">
<td>
<a href="escapes-002.htm">escapes-002</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td></td>
<td>Invalid Punctuation Escapes
</td>
</tr>
<tr id="escapes-003-4.1.3" class="">
<td>
<a href="escapes-003.htm">escapes-003</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td></td>
<td>Class and Keyword Letter Escapes
</td>
</tr>
<tr id="escapes-004-4.1.3" class="">
<td>
<a href="escapes-004.htm">escapes-004</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td></td>
<td>Unicode Escapes
</td>
</tr>
<tr id="escapes-005-4.1.3" class="">
<td>
<a href="escapes-005.htm">escapes-005</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td></td>
<td>Unicode Escapes and Case Insensitivity
</td>
</tr>
<tr id="escapes-006-4.1.3" class="">
<td>
<a href="escapes-006.htm">escapes-006</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td></td>
<td>Incorrect Letter Escape (Class Selector)
</td>
</tr>
<tr id="escapes-007-4.1.3" class="">
<td>
<a href="escapes-007.htm">escapes-007</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td></td>
<td>Space-terminated Unicode Escapes
</td>
</tr>
<tr id="escapes-008-4.1.3" class="invalid">
<td>
<a href="escapes-008.htm">escapes-008</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Invalid Space-terminated Character Escapes
</td>
</tr>
<tr id="escapes-009-4.1.3" class="invalid">
<td>
<a href="escapes-009.htm">escapes-009</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Characters and case: Escaping a character inside a keyword
<ul class="assert">
<li>Browsers should be able to ignore the keyword</li>
</ul>
</td>
</tr>
<tr id="escapes-010-4.1.3" class="invalid">
<td>
<a href="escapes-010.htm">escapes-010</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Unicode-escaped Braces
<ul class="assert">
<li>Unicode escapes cannot substitute for '{' or '}' in CSS syntax.</li>
</ul>
</td>
</tr>
<tr id="escapes-012-4.1.3" class="">
<td>
<a href="escapes-012.htm">escapes-012</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td></td>
<td>CSS Parsing: Escaped keywords
</td>
</tr>
<tr id="font-family-valid-characters-001-4.1.3" class="ahem">
<td>
<a href="font-family-valid-characters-001.htm">font-family-valid-characters-001</a></td>
<td><a href="reference/font-family-valid-characters-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>Valid characters in font-family values
<ul class="assert">
<li>Valid characters in font family names.</li>
</ul>
</td>
</tr>
<tr id="ident-000-4.1.3" class="">
<td>
<a href="ident-000.htm">ident-000</a></td>
<td><a href="reference/ident-000-ref.htm">=</a> </td>
<td></td>
<td>Valid Identifiers (a-z) as Classes and IDs
</td>
</tr>
<tr id="ident-001-4.1.3" class="">
<td>
<a href="ident-001.htm">ident-001</a></td>
<td><a href="reference/ident-000-ref.htm">=</a> </td>
<td></td>
<td>Valid Identifiers (-_a-zA-Z0-9) as Classes and IDs
</td>
</tr>
<tr id="ident-002-4.1.3" class="">
<td>
<a href="ident-002.htm">ident-002</a></td>
<td><a href="reference/ident-000-ref.htm">=</a> </td>
<td></td>
<td>Valid Identifiers (starting with _) as Classes and IDs
</td>
</tr>
<tr id="ident-003-4.1.3" class="invalid">
<td>
<a href="ident-003.htm">ident-003</a></td>
<td><a href="reference/ident-000-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Valid Identifiers (starting with -) as Classes and IDs
</td>
</tr>
<tr id="ident-004-4.1.3" class="">
<td>
<a href="ident-004.htm">ident-004</a></td>
<td><a href="reference/ident-000-ref.htm">=</a> </td>
<td></td>
<td>Valid Identifiers (starting with ideographic) as Classes and IDs
</td>
</tr>
<tr id="ident-005-4.1.3" class="">
<td>
<a href="ident-005.htm">ident-005</a></td>
<td><a href="reference/ident-000-ref.htm">=</a> </td>
<td></td>
<td>Valid Identifiers (including ideographic) as Classes and IDs
</td>
</tr>
<tr id="ident-006-4.1.3" class="">
<td>
<a href="ident-006.htm">ident-006</a></td>
<td><a href="reference/ident-000-ref.htm">=</a> </td>
<td></td>
<td>Valid Identifiers (starting with escape) as Classes and IDs
</td>
</tr>
<tr id="ident-007-4.1.3" class="">
<td>
<a href="ident-007.htm">ident-007</a></td>
<td><a href="reference/ident-000-ref.htm">=</a> </td>
<td></td>
<td>Valid Identifiers (including escape) as Classes and IDs
</td>
</tr>
<tr id="ident-008-4.1.3" class="invalid">
<td>
<a href="ident-008.htm">ident-008</a></td>
<td><a href="reference/ident-000-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Invalid Identifiers (starting with digit) as Classes and IDs
</td>
</tr>
<tr id="ident-009-4.1.3" class="">
<td>
<a href="ident-009.htm">ident-009</a></td>
<td><a href="reference/ident-000-ref.htm">=</a> </td>
<td></td>
<td>Valid Identifiers (including digits) as Classes and IDs
</td>
</tr>
<tr id="ident-010-4.1.3" class="">
<td>
<a href="ident-010.htm">ident-010</a></td>
<td><a href="reference/ident-000-ref.htm">=</a> </td>
<td></td>
<td>Valid Identifiers (starting with escape) as Classes and IDs
</td>
</tr>
<tr id="ident-011-4.1.3" class="">
<td>
<a href="ident-011.htm">ident-011</a></td>
<td><a href="reference/ident-000-ref.htm">=</a> </td>
<td></td>
<td>Valid Identifiers (including escapes) as Classes and IDs
</td>
</tr>
<tr id="ident-012-4.1.3" class="">
<td>
<a href="ident-012.htm">ident-012</a></td>
<td><a href="reference/ident-012-ref.htm">=</a> </td>
<td></td>
<td>Valid Identifiers (starting with escaped digits, control codes) as Classes and IDs
</td>
</tr>
<tr id="ident-013-4.1.3" class="">
<td>
<a href="ident-013.htm">ident-013</a></td>
<td><a href="reference/ident-000-ref.htm">=</a> </td>
<td></td>
<td>Valid Identifiers (starting with escaped -) as Classes and IDs
</td>
</tr>
<tr id="ident-020-4.1.3" class="invalid">
<td>
<a href="ident-020.htm">ident-020</a></td>
<td><a href="reference/ident-000-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Invalid Identifiers (starting with double -) as Classes and IDs
</td>
</tr>
</tbody>
<tbody id="s4.1.3.#escaped-characters">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.3.#value-def-identifier">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.3.#x1">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.4">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.1.4">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#statements">4.1.4 Statements</a></th></tr>
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.4.#x5">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.4.#x6">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.4.#x7">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.5">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.1.5">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#at-rules">4.1.5 At-rules</a></th></tr>
<!-- 13 tests -->
<tr id="at-import-009-4.1.5" class="invalid">
<td>
<a href="at-import-009.htm">at-import-009</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>@import following a known but invalid @rule
<ul class="assert">
<li>@import is respected after known but ignored @rule.</li>
</ul>
</td>
</tr>
<tr id="at-import-010-4.1.5" class="invalid">
<td>
<a href="at-import-010.htm">at-import-010</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>@import following an invalid selector
<ul class="assert">
<li>@import is respected after invalid (ignored) rule set</li>
</ul>
</td>
</tr>
<tr id="at-import-011-4.1.5" class="invalid">
<td>
<a href="at-import-011.htm">at-import-011</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>@import following garbage
<ul class="assert">
<li>@import is parsed as part of invalid ruleset after garbage.</li>
</ul>
</td>
</tr>
<tr id="at-keywords-000-4.1.5" class="">
<td>
<a href="at-keywords-000.htm">at-keywords-000</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td></td>
<td>At-rules
</td>
</tr>
<tr id="at-keywords-001-4.1.5" class="">
<td>
<a href="at-keywords-001.htm">at-keywords-001</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td></td>
<td>At-rules
</td>
</tr>
<tr id="at-keywords-002-4.1.5" class="invalid">
<td>
<a href="at-keywords-002.htm">at-keywords-002</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>At-rules
</td>
</tr>
<tr id="at-rules-000-4.1.5" class="invalid">
<td>
<a href="at-rules-000.htm">at-rules-000</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>At-rules
</td>
</tr>
<tr id="at-rules-001-4.1.5" class="">
<td>
<a href="at-rules-001.htm">at-rules-001</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td></td>
<td>At-rules
</td>
</tr>
<tr id="at-rules-002-4.1.5" class="">
<td>
<a href="at-rules-002.htm">at-rules-002</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td></td>
<td>At-rules
</td>
</tr>
<tr id="at-rules-003-4.1.5" class="">
<td>
<a href="at-rules-003.htm">at-rules-003</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td></td>
<td>At-rules
</td>
</tr>
<tr id="at-rules-004-4.1.5" class="">
<td>
<a href="at-rules-004.htm">at-rules-004</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td></td>
<td>At-rules
</td>
</tr>
<tr id="import-000-4.1.5" class="invalid">
<td>
<a href="import-000.htm">import-000</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>At-rules
</td>
</tr>
<tr id="import-001-4.1.5" class="invalid">
<td>
<a href="import-001.htm">import-001</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>At-rules
</td>
</tr>
</tbody>
<tbody id="s4.1.5.#x10">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.5.#x11">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.5.#x9">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.6">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.1.6">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#block">4.1.6 Blocks</a></th></tr>
<!-- 6 tests -->
<tr id="blocks-001-4.1.6" class="invalid">
<td>
<a href="blocks-001.htm">blocks-001</a></td>
<td><a href="reference/blocks-001-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing nested blocks and strings in style blocks
<ul class="assert">
<li>Blocks and strings are parsed with matching terminating pairs.</li>
</ul>
</td>
</tr>
<tr id="blocks-002-4.1.6" class="">
<td>
<a href="blocks-002.htm">blocks-002</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Empty declaration block
<ul class="assert">
<li>Declaration blocks that are empty have no effect on later declarations.</li>
</ul>
</td>
</tr>
<tr id="blocks-004-4.1.6" class="invalid">
<td>
<a href="blocks-004.htm">blocks-004</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing square bracket blocks
<ul class="assert">
<li>Blocks and strings are parsed with matching terminating pairs of square brackets.</li>
</ul>
</td>
</tr>
<tr id="blocks-005-4.1.6" class="invalid">
<td>
<a href="blocks-005.htm">blocks-005</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing curly bracket blocks
<ul class="assert">
<li>Blocks and strings are parsed with matching terminating pairs of curly brackets.</li>
</ul>
</td>
</tr>
<tr id="blocks-006-4.1.6" class="invalid">
<td>
<a href="blocks-006.htm">blocks-006</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing parentheses blocks
<ul class="assert">
<li>Blocks and strings are parsed with matching terminating pairs of parentheses.</li>
</ul>
</td>
</tr>
<tr id="blocks-and-strings-001-4.1.6" class="invalid">
<td>
<a href="blocks-and-strings-001.htm">blocks-and-strings-001</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing blocks and strings in style blocks
<ul class="assert">
<li>Nested blocks and strings are parsed accordingly.</li>
</ul>
</td>
</tr>
</tbody>
<tbody id="s4.1.6.#x12">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.6.#x13">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.7">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.1.7">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#rule-sets">4.1.7 Rule sets, declaration blocks, and selectors</a></th></tr>
<!-- 8 tests -->
<tr id="bad-selector-001-4.1.7" class="invalid">
<td>
<a href="bad-selector-001.htm">bad-selector-001</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing of bad selectors
<ul class="assert">
<li>Declarations with bad selectors are ignored.</li>
</ul>
</td>
</tr>
<tr id="cursor-022-4.1.7" class="interact invalid">
<td>
<a href="cursor-022.htm">cursor-022</a></td>
<td></td>
<td><abbr class="interact" title="Requires user interaction">Interact</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>cursor - set to an invalid value
<ul class="assert">
<li>The property 'cursor', when set to an invalid value or an illegal value, must be ignored. Then, instead, the cursor to display should be based on the current context.</li>
</ul>
</td>
</tr>
<tr id="escapes-011-4.1.7" class="">
<td>
<a href="escapes-011.htm">escapes-011</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td></td>
<td>CSS Parsing: Escaped keywords
</td>
</tr>
<tr id="escapes-013-4.1.7" class="">
<td>
<a href="escapes-013.htm">escapes-013</a></td>
<td><a href="reference/escapes-013-ref.htm">=</a> </td>
<td></td>
<td>Escaping and spaces with classes
</td>
</tr>
<tr id="escapes-014-4.1.7" class="">
<td>
<a href="escapes-014.htm">escapes-014</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td></td>
<td>Escaping and spaces with declarations
</td>
</tr>
<tr id="escapes-015-4.1.7" class="invalid">
<td>
<a href="escapes-015.htm">escapes-015</a></td>
<td><a href="reference/ref-if-there-is-no-red.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Escape of non-printable characters within declarations, applying to property values
<ul class="assert">
<li>red is a reserved (color name) keyword while red\9 is not a reserved keyword. red\9 is made of red with an escaped horizontal tab. That is why the parsing of the declaration should fail. Same thing with the other 23 tests (see test escapes-016).</li>
</ul>
</td>
</tr>
<tr id="escapes-016-4.1.7" class="invalid">
<td>
<a href="escapes-016.htm">escapes-016</a></td>
<td><a href="reference/ref-if-there-is-no-red.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Escape of non-printable characters within declarations, applying to property values
<ul class="assert">
<li>red is a reserved (color name) keyword while red\9 is not a reserved keyword. red\9 is made of red with an escaped horizontal tab. That is why the parsing of the declaration should fail. Same thing with the other 23 tests (see test escapes-015).</li>
</ul>
</td>
</tr>
<tr id="font-family-008-4.1.7" class="ahem invalid">
<td>
<a href="font-family-008.htm">font-family-008</a></td>
<td><a href="reference/font-family-008-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>font-family - unquoted font-family names with parentheses or curly braces
<ul class="assert">
<li>Unquoted font-family names must not contain unescaped parentheses or unescaped curly braces</li>
</ul>
</td>
</tr>
</tbody>
<tbody id="s4.1.7.#x14">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.7.#x15">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.7.#x16">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.7.#x17">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.7.#x18">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.8">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.1.8">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#declaration">4.1.8 Declarations and properties</a></th></tr>
<!-- 8 tests -->
<tr id="declaration-whitespace-001-4.1.8" class="">
<td>
<a href="declaration-whitespace-001.htm">declaration-whitespace-001</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Parsing white space in style declaration
<ul class="assert">
<li>Various white space are allowed anywhere within the declaration and are ignored.</li>
</ul>
</td>
</tr>
<tr id="ignored-rules-001-4.1.8" class="invalid">
<td>
<a href="ignored-rules-001.htm">ignored-rules-001</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing invalid rules that precede good rules
<ul class="assert">
<li>Bad rules are ignored while following good rules are applied.</li>
</ul>
</td>
</tr>
<tr id="ignored-rules-002-4.1.8" class="invalid">
<td>
<a href="ignored-rules-002.htm">ignored-rules-002</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing invalid rules that follow good rules
<ul class="assert">
<li>Good rules are applied while following bad rules are ignored.</li>
</ul>
</td>
</tr>
<tr id="ignored-rules-003-4.1.8" class="invalid">
<td>
<a href="ignored-rules-003.htm">ignored-rules-003</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing invalid values
<ul class="assert">
<li>Invalid values are ignored while valid properties are applied.</li>
</ul>
</td>
</tr>
<tr id="ignored-rules-004-4.1.8" class="invalid">
<td>
<a href="ignored-rules-004.htm">ignored-rules-004</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing invalid values with spaces
<ul class="assert">
<li>Invalid values with spaces are ignored while valid properties are applied.</li>
</ul>
</td>
</tr>
<tr id="ignored-rules-005-4.1.8" class="invalid">
<td>
<a href="ignored-rules-005.htm">ignored-rules-005</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing invalid values that start with a valid value name
<ul class="assert">
<li>Invalid values that begin with a valid keyword are ignored while valid properties are applied.</li>
</ul>
</td>
</tr>
<tr id="ignored-rules-006-4.1.8" class="invalid">
<td>
<a href="ignored-rules-006.htm">ignored-rules-006</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing invalid values with slashes
<ul class="assert">
<li>Invalid values with slashes are ignored while valid properties are applied.</li>
</ul>
</td>
</tr>
<tr id="ignored-rules-007-4.1.8" class="invalid">
<td>
<a href="ignored-rules-007.htm">ignored-rules-007</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing invalid values that are functions
<ul class="assert">
<li>Invalid values that are functions are ignored while valid properties are applied.</li>
</ul>
</td>
</tr>
</tbody>
<tbody id="s4.1.8.#properties">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.8.#x19">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.8.#x20">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.8.#x21">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.8.#x22">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.8.#x23">
<!-- 0 tests -->
</tbody>
<tbody id="s4.1.9">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.1.9">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#comments">4.1.9 Comments</a></th></tr>
<!-- 15 tests -->
<tr id="c11-import-000-4.1.9" class="">
<td>
<a href="c11-import-000.htm">c11-import-000</a></td>
<td><a href="reference/c11-import-000-ref.htm">=</a> </td>
<td></td>
<td>Basic Containment
</td>
</tr>
<tr id="c17-comments-000-4.1.9" class="">
<td>
<a href="c17-comments-000.htm">c17-comments-000</a></td>
<td><a href="reference/c17-comments-000-ref.htm">=</a> </td>
<td></td>
<td>Comments
</td>
</tr>
<tr id="c17-comments-001-4.1.9" class="">
<td>
<a href="c17-comments-001.htm">c17-comments-001</a></td>
<td><a href="reference/c17-comments-001-ref.htm">=</a> </td>
<td></td>
<td>Comments
</td>
</tr>
<tr id="comments-001-4.1.9" class="">
<td>
<a href="comments-001.htm">comments-001</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Parsing comments within style tag
<ul class="assert">
<li>Comments are allowed anywhere within a style tag declaration and are ignored.</li>
</ul>
</td>
</tr>
<tr id="comments-002-4.1.9" class="invalid">
<td>
<a href="comments-002.htm">comments-002</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Nested comments
<ul class="assert">
<li>Comments cannot be nested.</li>
</ul>
</td>
</tr>
<tr id="comments-003-4.1.9" class="invalid">
<td>
<a href="comments-003.htm">comments-003</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>HTML comments and CSS comments
<ul class="assert">
<li>SGML comment delimiters do not delimit CSS comments.</li>
</ul>
</td>
</tr>
<tr id="comments-004-4.1.9" class="invalid">
<td>
<a href="comments-004.htm">comments-004</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing of invalid comments
<ul class="assert">
<li>Comments that are invalid are ignored.</li>
</ul>
</td>
</tr>
<tr id="comments-005-4.1.9" class="">
<td>
<a href="comments-005.htm">comments-005</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Parsing of escaped &quot;/&quot; within a valid comment
<ul class="assert">
<li>A slash '/' escaped with a backslash will remove its special meaning.</li>
</ul>
</td>
</tr>
<tr id="comments-006-4.1.9" class="invalid">
<td>
<a href="comments-006.htm">comments-006</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing of escaped &quot;*&quot; within a valid comment
<ul class="assert">
<li>A star '*' escaped with a backslash will not remove its special meaning.</li>
</ul>
</td>
</tr>
<tr id="comments-007-4.1.9" class="invalid">
<td>
<a href="comments-007.htm">comments-007</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing of valid comment that is empty
<ul class="assert">
<li>Empty comments do not affect parsing of rule.</li>
</ul>
</td>
</tr>
<tr id="comments-008-4.1.9" class="invalid">
<td>
<a href="comments-008.htm">comments-008</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing of escaped opening comment
<ul class="assert">
<li>Escaping a slash '/' for an opening comment makes the comment invalid.</li>
</ul>
</td>
</tr>
<tr id="comments-009-4.1.9" class="invalid">
<td>
<a href="comments-009.htm">comments-009</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing of invalid escaped &quot;*&quot; in open comment
<ul class="assert">
<li>Escaping a star '*' for an opening comment makes the comment invalid.</li>
</ul>
</td>
</tr>
<tr id="sgml-comments-000-4.1.9" class="">
<td>
<a href="sgml-comments-000.htm">sgml-comments-000</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td></td>
<td>SGML comments
<ul class="assert">
<li>UAs must ignore SGML comment delimiters between statements.</li>
</ul>
</td>
</tr>
<tr id="sgml-comments-001-4.1.9" class="">
<td>
<a href="sgml-comments-001.htm">sgml-comments-001</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Parsing SGML comments
<ul class="assert">
<li>SGML comment tokens are parsed and ignored.</li>
</ul>
</td>
</tr>
<tr id="sgml-comments-002-4.1.9" class="">
<td>
<a href="sgml-comments-002.htm">sgml-comments-002</a></td>
<td><a href="reference/sgml-comments-002-ref.htm">=</a> </td>
<td></td>
<td>Parsing of CDO/CDC in stylesheets
</td>
</tr>
</tbody>
<tbody id="s4.1.9.#x24">
<!-- 0 tests -->
</tbody>
<tbody id="s4.2">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.2">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#parsing-errors">4.2 Rules for handling parsing errors</a></th></tr>
<!-- 80 tests -->
<tr id="at-rule-001-4.2" class="invalid">
<td>
<a href="at-rule-001.htm">at-rule-001</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parser error handling with invalid at-rules: @ invalid selector
<ul class="assert">
<li>At-Rules start with an at-keyword (@ followed immediately by an identifier).</li>
</ul>
</td>
</tr>
<tr id="at-rule-002-4.2" class="invalid">
<td>
<a href="at-rule-002.htm">at-rule-002</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing of invalid @rules
<ul class="assert">
<li>An at-rule consists of everything up to and including the next semi-colon or the next block.</li>
</ul>
</td>
</tr>
<tr id="at-rule-003-4.2" class="invalid">
<td>
<a href="at-rule-003.htm">at-rule-003</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing of invalid @rules with blocks
<ul class="assert">
<li>An at-rule consists of everything up to and including the next semi-colon or the next block.</li>
</ul>
</td>
</tr>
<tr id="at-rule-004-4.2" class="invalid">
<td>
<a href="at-rule-004.htm">at-rule-004</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>@import inside block
<ul class="assert">
<li>@import is ignored if inside a block.</li>
</ul>
</td>
</tr>
<tr id="at-rule-005-4.2" class="invalid">
<td>
<a href="at-rule-005.htm">at-rule-005</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>@import following @charset
<ul class="assert">
<li>@import is ignored if inside a block or after any valid statement except @charset.</li>
</ul>
</td>
</tr>
<tr id="at-rule-006-4.2" class="invalid">
<td>
<a href="at-rule-006.htm">at-rule-006</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>@import following valid statements
<ul class="assert">
<li>@import is ignored if after any valid statement except @charset.</li>
</ul>
</td>
</tr>
<tr id="at-rule-007-4.2" class="invalid">
<td>
<a href="at-rule-007.htm">at-rule-007</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>@import following an invalid statement
<ul class="assert">
<li>@import is ignored if inside a block or after any valid statement except @charset.</li>
</ul>
</td>
</tr>
<tr id="at-rule-008-4.2" class="invalid">
<td>
<a href="at-rule-008.htm">at-rule-008</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>@import following a bad @rule
<ul class="assert">
<li>@import is ignored after invalid @rule.</li>
</ul>
</td>
</tr>
<tr id="at-rule-009-4.2" class="invalid">
<td>
<a href="at-rule-009.htm">at-rule-009</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>@import after a bad selector and rule block
<ul class="assert">
<li>@import is not ignored if after bad selector.</li>
</ul>
</td>
</tr>
<tr id="at-rule-010-4.2" class="">
<td>
<a href="at-rule-010.htm">at-rule-010</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>@rules and white space
<ul class="assert">
<li>White space does not affect the validity of @rules.</li>
</ul>
</td>
</tr>
<tr id="at-rule-011-4.2" class="invalid">
<td>
<a href="at-rule-011.htm">at-rule-011</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parser error handling with invalid at-rules: @ invalid selector with a number
<ul class="assert">
<li>At-Rules are ignored if they start with an at-keyword (@ followed immediately by an identifier).</li>
</ul>
</td>
</tr>
<tr id="at-rule-012-4.2" class="invalid">
<td>
<a href="at-rule-012.htm">at-rule-012</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parser error handling with invalid at-rules: @ invalid selector with a hyphen
<ul class="assert">
<li>At-Rules are ignored it they start with an at-keyword (@ followed immediately by an identifier).</li>
</ul>
</td>
</tr>
<tr id="at-rule-013-4.2" class="invalid">
<td>
<a href="at-rule-013.htm">at-rule-013</a></td>
<td><a href="reference/at-rule-013-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Ignoring at-rules inside @media blocks
<ul class="assert">
<li>At-rules inside @media blocks are ignored up to up to the end of the block that contains the invalid at-keyword, or up to and including the next semicolon (;) or up to and including the next block ({...}), whichever comes first.</li>
</ul>
</td>
</tr>
<tr id="background-image-005-4.2" class="invalid">
<td>
<a href="background-image-005.htm">background-image-005</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing 'background-image'
</td>
</tr>
<tr id="blocks-003-4.2" class="">
<td>
<a href="blocks-003.htm">blocks-003</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Rule blocks and white space
<ul class="assert">
<li>White space around rule blocks do not affect the validity of the rule block.</li>
</ul>
</td>
</tr>
<tr id="c71-fwd-parsing-000-4.2" class="invalid">
<td>
<a href="c71-fwd-parsing-000.htm">c71-fwd-parsing-000</a></td>
<td><a href="reference/c71-fwd-parsing-000-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Forward-Compatible Parsing
</td>
</tr>
<tr id="c71-fwd-parsing-001-4.2" class="invalid">
<td>
<a href="c71-fwd-parsing-001.htm">c71-fwd-parsing-001</a></td>
<td><a href="reference/c71-fwd-parsing-001-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Forward-Compatible Parsing
</td>
</tr>
<tr id="c71-fwd-parsing-002-4.2" class="invalid">
<td>
<a href="c71-fwd-parsing-002.htm">c71-fwd-parsing-002</a></td>
<td><a href="reference/c71-fwd-parsing-002-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Forward-Compatible Parsing
</td>
</tr>
<tr id="c71-fwd-parsing-003-4.2" class="invalid">
<td>
<a href="c71-fwd-parsing-003.htm">c71-fwd-parsing-003</a></td>
<td><a href="reference/c71-fwd-parsing-003-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Forward-Compatible Parsing
</td>
</tr>
<tr id="c71-fwd-parsing-004-4.2" class="invalid">
<td>
<a href="c71-fwd-parsing-004.htm">c71-fwd-parsing-004</a></td>
<td><a href="reference/c71-fwd-parsing-004-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Forward-Compatible Parsing
</td>
</tr>
<tr id="core-syntax-001-4.2" class="">
<td>
<a href="core-syntax-001.htm">core-syntax-001</a></td>
<td><a href="reference/core-syntax-001-ref.htm">=</a> </td>
<td></td>
<td>Nested blocks in unexpected places
</td>
</tr>
<tr id="core-syntax-002-4.2" class="">
<td>
<a href="core-syntax-002.htm">core-syntax-002</a></td>
<td><a href="reference/core-syntax-002-ref.htm">=</a> </td>
<td></td>
<td>Nested blocks in unexpected places
</td>
</tr>
<tr id="core-syntax-003-4.2" class="">
<td>
<a href="core-syntax-003.htm">core-syntax-003</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td></td>
<td>Nested blocks in unexpected places (with no whitespace)
</td>
</tr>
<tr id="core-syntax-004-4.2" class="">
<td>
<a href="core-syntax-004.htm">core-syntax-004</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td></td>
<td>Nested blocks in unexpected places (with no whitespace)
</td>
</tr>
<tr id="core-syntax-006-4.2" class="">
<td>
<a href="core-syntax-006.htm">core-syntax-006</a></td>
<td><a href="reference/core-syntax-006-ref.htm">=</a> </td>
<td></td>
<td>Parsing invalid '!' declarations
</td>
</tr>
<tr id="core-syntax-007-4.2" class="">
<td>
<a href="core-syntax-007.htm">core-syntax-007</a></td>
<td><a href="reference/core-syntax-007-ref.htm">=</a> </td>
<td></td>
<td>Parsing invalid '!' declarations
</td>
</tr>
<tr id="core-syntax-008-4.2" class="">
<td>
<a href="core-syntax-008.htm">core-syntax-008</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td></td>
<td>Parsing invalid '!' declarations
</td>
</tr>
<tr id="counters-003-4.2" class="">
<td>
<a href="counters-003.htm">counters-003</a></td>
<td><a href="reference/counters-003-ref.htm">=</a> </td>
<td></td>
<td>Parsing counter() function with no white space
<ul class="assert">
<li>The counter function can be parsed with no white space separating the function values.</li>
</ul>
</td>
</tr>
<tr id="counters-004-4.2" class="">
<td>
<a href="counters-004.htm">counters-004</a></td>
<td><a href="reference/counters-004-ref.htm">=</a> </td>
<td></td>
<td>Parsing counters() function with no white space and two function values
<ul class="assert">
<li>The counters function can be parsed with no white space separating the two function values.</li>
</ul>
</td>
</tr>
<tr id="counters-005-4.2" class="">
<td>
<a href="counters-005.htm">counters-005</a></td>
<td><a href="reference/counters-003-ref.htm">=</a> </td>
<td></td>
<td>Parsing counters() function with no white space and three function values
<ul class="assert">
<li>The counters function can be parsed with no white space separating the three function values.</li>
</ul>
</td>
</tr>
<tr id="counters-006-4.2" class="">
<td>
<a href="counters-006.htm">counters-006</a></td>
<td><a href="reference/counters-004-ref.htm">=</a> </td>
<td></td>
<td>Parsing counter() function with white space
<ul class="assert">
<li>The counter function can be parsed with white space separating the function value.</li>
</ul>
</td>
</tr>
<tr id="counters-007-4.2" class="">
<td>
<a href="counters-007.htm">counters-007</a></td>
<td><a href="reference/counters-003-ref.htm">=</a> </td>
<td></td>
<td>Parsing counter() function with white space and two function values
<ul class="assert">
<li>The counter function can be parsed with white space separating the two function values.</li>
</ul>
</td>
</tr>
<tr id="counters-008-4.2" class="">
<td>
<a href="counters-008.htm">counters-008</a></td>
<td><a href="reference/counters-004-ref.htm">=</a> </td>
<td></td>
<td>Parsing counters() function with white space and two function values
<ul class="assert">
<li>The counters function can be parsed with white space separating the two function values.</li>
</ul>
</td>
</tr>
<tr id="counters-009-4.2" class="">
<td>
<a href="counters-009.htm">counters-009</a></td>
<td><a href="reference/counters-003-ref.htm">=</a> </td>
<td></td>
<td>Parsing counters() function with white space and three function values
<ul class="assert">
<li>The counters function can be parsed with white space separating the three function values.</li>
</ul>
</td>
</tr>
<tr id="counters-010-4.2" class="">
<td>
<a href="counters-010.htm">counters-010</a></td>
<td><a href="reference/counters-010-ref.htm">=</a> </td>
<td></td>
<td>Parsing counters() functions
<ul class="assert">
<li>To refer to a sequence of nested counters of the same name, the notation is 'counters(identifier, string)' or 'counters(identifier, string, list-style-type)'.</li>
</ul>
</td>
</tr>
<tr id="cursor-022-4.2" class="interact invalid">
<td>
<a href="cursor-022.htm">cursor-022</a></td>
<td></td>
<td><abbr class="interact" title="Requires user interaction">Interact</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>cursor - set to an invalid value
<ul class="assert">
<li>The property 'cursor', when set to an invalid value or an illegal value, must be ignored. Then, instead, the cursor to display should be based on the current context.</li>
</ul>
</td>
</tr>
<tr id="declaration-001-4.2" class="invalid">
<td>
<a href="declaration-001.htm">declaration-001</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>malformed declaration missing ':', value, part 1
</td>
</tr>
<tr id="declaration-002-4.2" class="invalid">
<td>
<a href="declaration-002.htm">declaration-002</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>malformed declaration missing ':', value, part 2
</td>
</tr>
<tr id="declaration-003-4.2" class="invalid">
<td>
<a href="declaration-003.htm">declaration-003</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>malformed declaration missing value, part 1
</td>
</tr>
<tr id="declaration-004-4.2" class="invalid">
<td>
<a href="declaration-004.htm">declaration-004</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>malformed declaration missing value, part 2
</td>
</tr>
<tr id="declaration-005-4.2" class="invalid">
<td>
<a href="declaration-005.htm">declaration-005</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>malformed declaration: unexpected tokens { }, part 1
</td>
</tr>
<tr id="declaration-006-4.2" class="invalid">
<td>
<a href="declaration-006.htm">declaration-006</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>malformed declaration: unexpected tokens { }, part 2
</td>
</tr>
<tr id="declarations-009-4.2" class="invalid">
<td>
<a href="declarations-009.htm">declarations-009</a></td>
<td><a href="reference/declarations-009-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Ignoring at-rules inside declaration blocks
<ul class="assert">
<li>At-rules inside declaration blocks are parsed as malformed declarations.</li>
</ul>
</td>
</tr>
<tr id="eof-001-4.2" class="invalid">
<td>
<a href="eof-001.htm">eof-001</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing unexpected end of declaration block
<ul class="assert">
<li>The parser implicitly terminates the block and applies the styles if the declaration block is not terminated.</li>
</ul>
</td>
</tr>
<tr id="eof-002-4.2" class="invalid">
<td>
<a href="eof-002.htm">eof-002</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing unexpected end of function
<ul class="assert">
<li>User agents close all open parentheses at the end of the style sheet.</li>
</ul>
</td>
</tr>
<tr id="eof-003-4.2" class="invalid">
<td>
<a href="eof-003.htm">eof-003</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing unexpected end of string
<ul class="assert">
<li>Close all open strings at the end of the style sheet.</li>
</ul>
</td>
</tr>
<tr id="eof-004-4.2" class="invalid">
<td>
<a href="eof-004.htm">eof-004</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing unexpected end of @media block
<ul class="assert">
<li>User agents close all open blocks at the end of the style sheet.</li>
</ul>
</td>
</tr>
<tr id="eof-005-4.2" class="invalid">
<td>
<a href="eof-005.htm">eof-005</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing unexpected end of @import
<ul class="assert">
<li>User agents close all open rules at the end of the style sheet.</li>
</ul>
</td>
</tr>
<tr id="eof-006-4.2" class="invalid">
<td>
<a href="eof-006.htm">eof-006</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing unexpected end of @import with closed quote
<ul class="assert">
<li>User agents close all open quotes at the end of the style sheet.</li>
</ul>
</td>
</tr>
<tr id="eof-007-4.2" class="invalid">
<td>
<a href="eof-007.htm">eof-007</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing unexpected end of shorthand rule
<ul class="assert">
<li>User agents close all open rules at the end of the style sheet.</li>
</ul>
</td>
</tr>
<tr id="font-family-invalid-characters-001-4.2" class="ahem invalid">
<td>
<a href="font-family-invalid-characters-001.htm">font-family-invalid-characters-001</a></td>
<td><a href="reference/font-family-invalid-characters-001-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Invalid characters in font-family values
<ul class="assert">
<li>Invalid characters in font family names invalidate entire declaration.</li>
</ul>
</td>
</tr>
<tr id="font-family-invalid-characters-002-4.2" class="ahem invalid">
<td>
<a href="font-family-invalid-characters-002.htm">font-family-invalid-characters-002</a></td>
<td><a href="reference/font-family-invalid-characters-002-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Invalid parenthesis and pair matching
<ul class="assert">
<li>Invalid characters in font family names.</li>
</ul>
</td>
</tr>
<tr id="font-family-invalid-characters-003-4.2" class="ahem invalid">
<td>
<a href="font-family-invalid-characters-003.htm">font-family-invalid-characters-003</a></td>
<td><a href="reference/font-family-invalid-characters-002-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Invalid curly brackets and pair matching
<ul class="assert">
<li>Invalid characters in font family names.</li>
</ul>
</td>
</tr>
<tr id="font-family-invalid-characters-004-4.2" class="ahem invalid">
<td>
<a href="font-family-invalid-characters-004.htm">font-family-invalid-characters-004</a></td>
<td><a href="reference/font-family-invalid-characters-002-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Invalid square brackets and pair matching
<ul class="assert">
<li>Invalid characters in font family names.</li>
</ul>
</td>
</tr>
<tr id="font-family-invalid-characters-005-4.2" class="ahem invalid">
<td>
<a href="font-family-invalid-characters-005.htm">font-family-invalid-characters-005</a></td>
<td><a href="reference/font-family-invalid-characters-005-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Invalid quotes and pair matching
<ul class="assert">
<li>Invalid characters in font family names.</li>
</ul>
</td>
</tr>
<tr id="font-family-invalid-characters-006-4.2" class="ahem invalid">
<td>
<a href="font-family-invalid-characters-006.htm">font-family-invalid-characters-006</a></td>
<td><a href="reference/font-family-invalid-characters-006-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Invalid single quotes and pair matching
<ul class="assert">
<li>Invalid characters in font family names.</li>
</ul>
</td>
</tr>
<tr id="invalid-at-rule-001-4.2" class="invalid">
<td>
<a href="invalid-at-rule-001.htm">invalid-at-rule-001</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parser error handling with invalid at-rules: @ invalid selector invalidates entire block
<ul class="assert">
<li>The entire block of an invalid at-rule is ignored.</li>
</ul>
</td>
</tr>
<tr id="invalid-decl-at-rule-001-4.2" class="invalid">
<td>
<a href="invalid-decl-at-rule-001.htm">invalid-decl-at-rule-001</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing invalid declarations in at-rules where valid declaration precedes an invalid rule
<ul class="assert">
<li>Invalid declarations at the end of at-rules are ignored while the remaining preceding valid declarations are applied.</li>
</ul>
</td>
</tr>
<tr id="invalid-decl-at-rule-002-4.2" class="invalid">
<td>
<a href="invalid-decl-at-rule-002.htm">invalid-decl-at-rule-002</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing invalid declarations in at-rules where valid declaration follows invalid rule
<ul class="assert">
<li>Invalid declarations at the beginning of at-rules are ignored while the remaining following valid declarations are applied.</li>
</ul>
</td>
</tr>
<tr id="malformed-decl-001-4.2" class="invalid">
<td>
<a href="malformed-decl-001.htm">malformed-decl-001</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing malformed rules: Property with no value and no ending semicolon
<ul class="assert">
<li>Malformed rules (property with no value and no ending semicolon) are ignored while valid rules are applied.</li>
</ul>
</td>
</tr>
<tr id="malformed-decl-002-4.2" class="invalid">
<td>
<a href="malformed-decl-002.htm">malformed-decl-002</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing malformed rules: Property with no value assigned
<ul class="assert">
<li>Malformed rules (property with no value) are ignored while valid ones are applied.</li>
</ul>
</td>
</tr>
<tr id="malformed-decl-003-4.2" class="invalid">
<td>
<a href="malformed-decl-003.htm">malformed-decl-003</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing malformed rules: No value and no semi-colon
<ul class="assert">
<li>Malformed rules with no value or semi-colon are ignored while valid rules are applied.</li>
</ul>
</td>
</tr>
<tr id="malformed-decl-004-4.2" class="invalid">
<td>
<a href="malformed-decl-004.htm">malformed-decl-004</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing malformed rules: No value with property
<ul class="assert">
<li>Malformed rules with no value are ignored while valid rules are applied.</li>
</ul>
</td>
</tr>
<tr id="malformed-decl-005-4.2" class="invalid">
<td>
<a href="malformed-decl-005.htm">malformed-decl-005</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing malformed rules: Semi-colon before property
<ul class="assert">
<li>Malformed rules with semi-colon before property are ignored while valid rules are applied.</li>
</ul>
</td>
</tr>
<tr id="malformed-decl-006-4.2" class="invalid">
<td>
<a href="malformed-decl-006.htm">malformed-decl-006</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing malformed rules: Valid rule after malformed rule
<ul class="assert">
<li>Malformed rules are ignored while valid rules are applied.</li>
</ul>
</td>
</tr>
<tr id="malformed-decl-007-4.2" class="invalid">
<td>
<a href="malformed-decl-007.htm">malformed-decl-007</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing malformed rules: Double colon separating property and value
<ul class="assert">
<li>Malformed rules with double colons between property and value are ignored while valid rules are applied.</li>
</ul>
</td>
</tr>
<tr id="malformed-decl-008-4.2" class="invalid">
<td>
<a href="malformed-decl-008.htm">malformed-decl-008</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing malformed rules: Missing property
<ul class="assert">
<li>Malformed rules with missing property names are ignored while valid rules are applied.</li>
</ul>
</td>
</tr>
<tr id="matching-brackets-001-4.2" class="invalid">
<td>
<a href="matching-brackets-001.htm">matching-brackets-001</a></td>
<td><a href="reference/matching-brackets-001-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Matching brackets and quotes for @rules
<ul class="assert">
<li>User agents must handle unexpected tokens encountered while parsing an at-rule by reading until the end of the statement, while observing the rules for matching pairs of brackets and quotes, and correctly handling escapes.</li>
</ul>
</td>
</tr>
<tr id="matching-brackets-002-4.2" class="invalid">
<td>
<a href="matching-brackets-002.htm">matching-brackets-002</a></td>
<td><a href="reference/matching-brackets-002-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Matching brackets and quotes for declarations
<ul class="assert">
<li>User agents must handle unexpected tokens encountered while parsing a declaration by reading until the end of the statement, while observing the rules for matching pairs of brackets and quotes, and correctly handling escapes.</li>
</ul>
</td>
</tr>
<tr id="matching-brackets-003-4.2" class="invalid">
<td>
<a href="matching-brackets-003.htm">matching-brackets-003</a></td>
<td><a href="reference/matching-brackets-001-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Matching brackets and quotes for selectors
<ul class="assert">
<li>User agents must handle unexpected tokens encountered while parsing a declaration by reading until the end of the statement, while observing the rules for matching pairs of brackets and quotes, and correctly handling escapes.</li>
</ul>
</td>
</tr>
<tr id="position-006-4.2" class="invalid">
<td>
<a href="position-006.htm">position-006</a></td>
<td><a href="reference/position-006-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing 'position'
</td>
</tr>
<tr id="selectors-parsing-001-4.2" class="">
<td>
<a href="selectors-parsing-001.htm">selectors-parsing-001</a></td>
<td><a href="reference/selectors-parsing-001-ref.htm">=</a> </td>
<td></td>
<td>CSS: Selector Parsing and Invalid Pseudo-Elements
</td>
</tr>
<tr id="square-brackets-001-4.2" class="invalid">
<td>
<a href="square-brackets-001.htm">square-brackets-001</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parser recovery after invalid '['
<ul class="assert">
<li>When an invalid '[' is encountered where a selector is expected, the CSS parser skips to the matching ']' and then ignores the following ruleset.</li>
</ul>
</td>
</tr>
<tr id="unterminated-string-001-4.2" class="invalid">
<td>
<a href="unterminated-string-001.htm">unterminated-string-001</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Error handling of unterminated strings
<ul class="assert">
<li>When the parser encounters an unterminated string, the parser drops everything up to the next ';'.</li>
</ul>
</td>
</tr>
<tr id="uri-013-4.2" class="invalid">
<td>
<a href="uri-013.htm">uri-013</a></td>
<td><a href="reference/uri-013-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>handling of invalid url() functions
</td>
</tr>
<tr id="uri-017-4.2" class="image invalid">
<td>
<a href="uri-017.htm">uri-017</a></td>
<td><a href="reference/uri-017-ref.htm">=</a> </td>
<td><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Unclosed URI Token at EOF (in declaration)
<ul class="assert">
<li>User agents must close open URI constructs and style rules at the end of the style sheet.</li>
</ul>
</td>
</tr>
<tr id="uri-018-4.2" class="image invalid">
<td>
<a href="uri-018.htm">uri-018</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Unclosed URI Token at EOF (in @import)
<ul class="assert">
<li>User agents must close open URI constructs and statements at the end of the style sheet.</li>
</ul>
</td>
</tr>
<tr id="z-index-015-4.2" class="invalid">
<td>
<a href="z-index-015.htm">z-index-015</a></td>
<td><a href="reference/ref-filled-green-100px-square.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>z-index - integer value
<ul class="assert">
<li>Besides 'auto' and 'inherit' keyword values, z-index property can only accept an integer value. An integer consists of one or more digits '0' to '9'.</li>
</ul>
</td>
</tr>
<tr id="z-index-016-4.2" class="invalid">
<td>
<a href="z-index-016.htm">z-index-016</a></td>
<td><a href="reference/ref-filled-green-100px-square.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>z-index - integer value
<ul class="assert">
<li>Besides 'auto' and 'inherit' keyword values, z-index property can only accept an integer value. An integer consists of one or more digits '0' to '9'.</li>
</ul>
</td>
</tr>
<tr id="z-index-017-4.2" class="invalid">
<td>
<a href="z-index-017.htm">z-index-017</a></td>
<td><a href="reference/ref-filled-green-100px-square.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>z-index - integer value
<ul class="assert">
<li>Besides 'auto' and 'inherit' keyword values, z-index property can only accept an integer value. An integer consists of one or more digits '0' to '9'.</li>
</ul>
</td>
</tr>
</tbody>
<tbody id="s4.2.#ignore">
<!-- 0 tests -->
</tbody>
<tbody id="s4.2.#illegalvalues">
<!-- 0 tests -->
</tbody>
<tbody id="s4.2.#unexpected-eof">
<!-- 0 tests -->
</tbody>
<tbody id="s4.2.#x26">
<!-- 0 tests -->
</tbody>
<tbody id="s4.2.#x27">
<!-- 0 tests -->
</tbody>
<tbody id="s4.2.#x28">
<!-- 0 tests -->
</tbody>
<tbody id="s4.2.#x29">
<!-- 0 tests -->
</tbody>
<tbody id="s4.2.#x30">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.3">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#values">4.3 Values</a></th></tr>
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.1">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.3.1">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#numbers">4.3.1 Integers and real numbers</a></th></tr>
<!-- 9 tests -->
<tr id="numbers-units-001-4.3.1" class="invalid">
<td>
<a href="numbers-units-001.htm">numbers-units-001</a></td>
<td><a href="reference/no-red-on-blank-page-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing invalid numbers - alphanumeric characters
<ul class="assert">
<li>An integer cannot have alphanumeric characters within it.</li>
</ul>
</td>
</tr>
<tr id="numbers-units-002-4.3.1" class="">
<td>
<a href="numbers-units-002.htm">numbers-units-002</a></td>
<td></td>
<td></td>
<td>Parsing decimal values - decimal with multiple decimal digits
<ul class="assert">
<li>A number can be zero or more digits followed by a dot (.) followed by multiple digits.</li>
</ul>
</td>
</tr>
<tr id="numbers-units-003-4.3.1" class="invalid">
<td>
<a href="numbers-units-003.htm">numbers-units-003</a></td>
<td><a href="reference/no-red-on-blank-page-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing invalid decimal values - alphanumeric characters within number
<ul class="assert">
<li>An alphanumeric character cannot be within the number value.</li>
</ul>
</td>
</tr>
<tr id="numbers-units-004-4.3.1" class="">
<td>
<a href="numbers-units-004.htm">numbers-units-004</a></td>
<td><a href="reference/ref-filled-black-96px-square.htm">=</a> </td>
<td></td>
<td>Parsing integer numbers with '+'
<ul class="assert">
<li>Integers can be preceded by '+'.</li>
</ul>
</td>
</tr>
<tr id="z-index-015-4.3.1" class="invalid">
<td>
<a href="z-index-015.htm">z-index-015</a></td>
<td><a href="reference/ref-filled-green-100px-square.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>z-index - integer value
<ul class="assert">
<li>Besides 'auto' and 'inherit' keyword values, z-index property can only accept an integer value. An integer consists of one or more digits '0' to '9'.</li>
</ul>
</td>
</tr>
<tr id="z-index-016-4.3.1" class="invalid">
<td>
<a href="z-index-016.htm">z-index-016</a></td>
<td><a href="reference/ref-filled-green-100px-square.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>z-index - integer value
<ul class="assert">
<li>Besides 'auto' and 'inherit' keyword values, z-index property can only accept an integer value. An integer consists of one or more digits '0' to '9'.</li>
</ul>
</td>
</tr>
<tr id="z-index-017-4.3.1" class="invalid">
<td>
<a href="z-index-017.htm">z-index-017</a></td>
<td><a href="reference/ref-filled-green-100px-square.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>z-index - integer value
<ul class="assert">
<li>Besides 'auto' and 'inherit' keyword values, z-index property can only accept an integer value. An integer consists of one or more digits '0' to '9'.</li>
</ul>
</td>
</tr>
<tr id="z-index-018-4.3.1" class="32bit">
<td>
<a href="z-index-018.htm">z-index-018</a></td>
<td><a href="reference/ref-filled-green-100px-square.htm">=</a> </td>
<td><abbr class="32bit" title="Requires 32 bit signed integers">32</abbr></td>
<td>z-index - negative values
<ul class="assert">
<li>Integers should range from -2,147,483,648 to 2,147,483,647 according to C Language Specification</li>
</ul>
</td>
</tr>
<tr id="z-index-019-4.3.1" class="32bit">
<td>
<a href="z-index-019.htm">z-index-019</a></td>
<td><a href="reference/ref-filled-green-100px-square.htm">=</a> </td>
<td><abbr class="32bit" title="Requires 32 bit signed integers">32</abbr></td>
<td>z-index - negative values
<ul class="assert">
<li>Integers should range from -2,147,483,648 to 2,147,483,647 according to C Language Specification</li>
</ul>
</td>
</tr>
</tbody>
<tbody id="s4.3.1.#value-def-integer">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.1.#value-def-number">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.2">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.3.2">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#length-units">4.3.2 Lengths</a></th></tr>
<!-- 36 tests -->
<tr id="background-position-001-4.3.2" class="ahem image">
<td>
<a href="background-position-001.htm">background-position-001</a></td>
<td><a href="reference/background-position-001-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr></td>
<td>background-position - ex unit
<ul class="assert">
<li>ex unit is the 'x-height' of the relevant font. 'em' and 'ex' length values when defining 'font-size' property refer to the computed font size of the parent element.</li>
</ul>
</td>
</tr>
<tr id="background-position-002-4.3.2" class="ahem image">
<td>
<a href="background-position-002.htm">background-position-002</a></td>
<td><a href="reference/background-position-002-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr></td>
<td>background-position - ex unit
<ul class="assert">
<li>ex unit is the 'x-height' of the relevant font. 'em' and 'ex' length values when defining 'font-size' property refer to the computed font size of the parent element.</li>
</ul>
</td>
</tr>
<tr id="border-width-009-4.3.2" class="invalid">
<td>
<a href="border-width-009.htm">border-width-009</a></td>
<td><a href="reference/border-width-009-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>CSS Parsing: Negative Border Widths
</td>
</tr>
<tr id="border-width-010-4.3.2" class="invalid">
<td>
<a href="border-width-010.htm">border-width-010</a></td>
<td><a href="reference/border-width-010-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>CSS Parsing: Negative Border Widths
</td>
</tr>
<tr id="c547-indent-000-4.3.2" class="ahem">
<td>
<a href="c547-indent-000.htm">c547-indent-000</a></td>
<td><a href="reference/c547-indent-000-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>text-indent
</td>
</tr>
<tr id="c5506-padn-t-000-4.3.2" class="ahem invalid">
<td>
<a href="c5506-padn-t-000.htm">c5506-padn-t-000</a></td>
<td><a href="reference/c5506-padn-t-000-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>padding-top
</td>
</tr>
<tr id="c5509-padn-l-000-4.3.2" class="ahem image">
<td>
<a href="c5509-padn-l-000.htm">c5509-padn-l-000</a></td>
<td><a href="reference/c5507-padn-r-000-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr></td>
<td>padding-left
</td>
</tr>
<tr id="c5510-padn-000-4.3.2" class="ahem image">
<td>
<a href="c5510-padn-000.htm">c5510-padn-000</a></td>
<td><a href="reference/c5510-padn-000-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr></td>
<td>padding
</td>
</tr>
<tr id="c61-ex-len-000-4.3.2" class="ahem">
<td>
<a href="c61-ex-len-000.htm">c61-ex-len-000</a></td>
<td><a href="reference/c61-ex-len-000-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>Length Units
</td>
</tr>
<tr id="c61-rel-len-000-4.3.2" class="ahem image">
<td>
<a href="c61-rel-len-000.htm">c61-rel-len-000</a></td>
<td><a href="reference/c61-rel-len-000-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr></td>
<td>Length Units
</td>
</tr>
<tr id="font-size-123-4.3.2" class="invalid">
<td>
<a href="font-size-123.htm">font-size-123</a></td>
<td><a href="reference/font-size-123-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>CSS Parsing: Negative Font-Size
<ul class="assert">
<li>If a negative length value is set into a font-size declaration, then such declaration is ignored.</li>
</ul>
</td>
</tr>
<tr id="font-size-124-4.3.2" class="ahem">
<td>
<a href="font-size-124.htm">font-size-124</a></td>
<td><a href="reference/ref-filled-green-100px-square.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>inheritance of computed font-size across fonts
<ul class="assert">
<li>ex unit is the 'x-height' of the relevant font. 'em' and 'ex' length values when defining 'font-size' property refer to the computed font size of the parent element.</li>
</ul>
</td>
</tr>
<tr id="margin-em-inherit-001-4.3.2" class="image">
<td>
<a href="margin-em-inherit-001.htm">margin-em-inherit-001</a></td>
<td><a href="reference/margin-em-inherit-001-ref.htm">=</a> </td>
<td><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr></td>
<td>inherit applied on margin set with em
<ul class="assert">
<li>The 'em' unit is equal to the computed value of the 'font-size' property of the element on which it is used. When inherit keyword is used, the property takes the same computed value - a length value in this testcase - as the property for the element's parent.</li>
</ul>
</td>
</tr>
<tr id="numbers-units-005-4.3.2" class="">
<td>
<a href="numbers-units-005.htm">numbers-units-005</a></td>
<td><a href="reference/no-red-on-blank-page-ref.htm">=</a> </td>
<td></td>
<td>Optional unit identifier after 0
<ul class="assert">
<li>After a zero length, the unit identifier is not necessary.</li>
</ul>
</td>
</tr>
<tr id="numbers-units-006-4.3.2" class="invalid">
<td>
<a href="numbers-units-006.htm">numbers-units-006</a></td>
<td><a href="reference/ref-filled-black-96px-square.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Unsupported negative values
<ul class="assert">
<li>If a negative length value is set on a property that does not allow negative length values, the declaration is ignored.</li>
</ul>
</td>
</tr>
<tr id="numbers-units-007-4.3.2" class="ahem">
<td>
<a href="numbers-units-007.htm">numbers-units-007</a></td>
<td><a href="reference/numbers-units-007-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>Em sizes
<ul class="assert">
<li>The 'em' unit is equal to the computed value of the 'font-size' property (default) of the element on which it is used.</li>
</ul>
</td>
</tr>
<tr id="numbers-units-009-4.3.2" class="ahem">
<td>
<a href="numbers-units-009.htm">numbers-units-009</a></td>
<td><a href="reference/numbers-units-009-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>Em size with the font-size set to px size
<ul class="assert">
<li>The 'em' unit is equal to the computed value of the 'font-size' property (pixels) of the element on which it is used.</li>
</ul>
</td>
</tr>
<tr id="numbers-units-010-4.3.2" class="ahem">
<td>
<a href="numbers-units-010.htm">numbers-units-010</a></td>
<td><a href="reference/numbers-units-010-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>Em size with font-size set to inch
<ul class="assert">
<li>The 'em' unit is equal to the computed value of the 'font-size' property (inches) of the element on which it is used.</li>
</ul>
</td>
</tr>
<tr id="numbers-units-011-4.3.2" class="ahem">
<td>
<a href="numbers-units-011.htm">numbers-units-011</a></td>
<td><a href="reference/numbers-units-011-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>Em size with font-size set to em
<ul class="assert">
<li>When 'em' is assigned in the value of the 'font-size' property itself, it uses the font size of the parent element.</li>
</ul>
</td>
</tr>
<tr id="numbers-units-012-4.3.2" class="ahem">
<td>
<a href="numbers-units-012.htm">numbers-units-012</a></td>
<td><a href="reference/numbers-units-012-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>Em size with font-size set to ex
<ul class="assert">
<li>The 'em' unit is equal to the computed value of the 'font-size' property (ex) of the element on which it is used.</li>
</ul>
</td>
</tr>
<tr id="numbers-units-013-4.3.2" class="ahem">
<td>
<a href="numbers-units-013.htm">numbers-units-013</a></td>
<td><a href="reference/numbers-units-013-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>Em size with font-size set to percentage
<ul class="assert">
<li>The 'em' unit is equal to the computed value of the 'font-size' property of the element on which it is used.</li>
</ul>
</td>
</tr>
<tr id="numbers-units-015-4.3.2" class="ahem should">
<td>
<a href="numbers-units-015.htm">numbers-units-015</a></td>
<td><a href="reference/numbers-units-015-ref-a.htm">=</a> <a href="reference/numbers-units-015-ref-b.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr><abbr class="should" title="Behavior tested is recommended but not required">Recommend</abbr></td>
<td>Height of EX
<ul class="assert">
<li>In the cases where it is impossible or impractical to determine the x-height, a value of 0.5em should be used.</li>
</ul>
</td>
</tr>
<tr id="numbers-units-018-4.3.2" class="ahem">
<td>
<a href="numbers-units-018.htm">numbers-units-018</a></td>
<td><a href="reference/numbers-units-018-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>Specifying em/ex on the root element
<ul class="assert">
<li>Units 'em' and 'ex' refer to the initial value of the property when specified on the root element of a document.</li>
</ul>
</td>
</tr>
<tr id="numbers-units-019-4.3.2" class="ahem">
<td>
<a href="numbers-units-019.htm">numbers-units-019</a></td>
<td><a href="reference/numbers-units-019-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>First available font defines the 'ex' unit size
<ul class="assert">
<li>The 'ex' unit size is defined by the element's first available font.</li>
</ul>
</td>
</tr>
<tr id="numbers-units-021-4.3.2" class="96dpi ahem">
<td>
<a href="numbers-units-021.htm">numbers-units-021</a></td>
<td><a href="reference/numbers-units-021-ref.htm">=</a> </td>
<td><abbr class="96dpi" title="Only valid on 96dpi displays">96</abbr><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>Root element and the 'em' unit size
<ul class="assert">
<li>The 'em' unit refers to the property's initial value when specified on the root element.</li>
</ul>
</td>
</tr>
<tr id="padding-009-4.3.2" class="invalid">
<td>
<a href="padding-009.htm">padding-009</a></td>
<td><a href="reference/padding-009-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>CSS Parsing: Negative Padding
</td>
</tr>
<tr id="padding-em-inherit-001-4.3.2" class="image">
<td>
<a href="padding-em-inherit-001.htm">padding-em-inherit-001</a></td>
<td><a href="reference/padding-em-inherit-001-ref.htm">=</a> </td>
<td><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr></td>
<td>inherit applied on padding set with em
<ul class="assert">
<li>The 'em' unit is equal to the computed value of the 'font-size' property of the element on which it is used. When inherit keyword is used, the property takes the same computed value - a length value in this testcase - as the property for the element's parent.</li>
</ul>
</td>
</tr>
<tr id="position-absolute-percentage-inherit-001-4.3.2" class="">
<td>
<a href="position-absolute-percentage-inherit-001.htm">position-absolute-percentage-inherit-001</a></td>
<td><a href="reference/position-absolute-percentage-inherit-001-ref.htm">=</a> </td>
<td></td>
<td>position absolute - dimensions and position given by offset percentages and inherit
<ul class="assert">
<li>Absolutely positioned boxes can be dimensioned and positioned solely by setting offset 'top', 'right', 'bottom' and 'left' property values with percentage unit and then with inherit keyword. 'inherit' on a offset property makes such offset property take the same computed value as the offset property of the nearest positioned ancestor; in the case of a percentage value - like in this testcase - , the computed value is the specified percentage value of such nearest positioned ancestor.</li>
</ul>
</td>
</tr>
<tr id="units-001-4.3.2" class="ahem">
<td>
<a href="units-001.htm">units-001</a></td>
<td><a href="reference/units-001-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>Units: Equivalence
</td>
</tr>
<tr id="units-002-4.3.2" class="ahem">
<td>
<a href="units-002.htm">units-002</a></td>
<td><a href="reference/units-002-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>Units: ex
</td>
</tr>
<tr id="units-003-4.3.2" class="ahem">
<td>
<a href="units-003.htm">units-003</a></td>
<td><a href="reference/units-003-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>Units: ex
</td>
</tr>
<tr id="units-004-4.3.2" class="ahem">
<td>
<a href="units-004.htm">units-004</a></td>
<td><a href="reference/units-004-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>Units: ex
</td>
</tr>
<tr id="units-005-4.3.2" class="">
<td>
<a href="units-005.htm">units-005</a></td>
<td><a href="reference/units-005-ref.htm">=</a> </td>
<td></td>
<td>Units: em (0.87em floats)
</td>
</tr>
<tr id="units-006-4.3.2" class="ahem">
<td>
<a href="units-006.htm">units-006</a></td>
<td><a href="reference/units-006-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>Units: px and font-size
</td>
</tr>
<tr id="units-008-4.3.2" class="ahem">
<td>
<a href="units-008.htm">units-008</a></td>
<td><a href="reference/units-006-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>Units: px and inherited font-size
</td>
</tr>
<tr id="units-009-4.3.2" class="ahem">
<td>
<a href="units-009.htm">units-009</a></td>
<td><a href="reference/units-006-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr></td>
<td>Units: px and dependent font-size
</td>
</tr>
</tbody>
<tbody id="s4.3.2.#absrel-units">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.2.#em-width">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.2.#ex">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.2.#img-pixel1">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.2.#img-pixel2">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.2.#value-def-length">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.2.#x34">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.2.#x39">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.2.#x40">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.3">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.3.3">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#percentage-units">4.3.3 Percentages</a></th></tr>
<!-- 3 tests -->
<tr id="c62-percent-000-4.3.3" class="ahem image">
<td>
<a href="c62-percent-000.htm">c62-percent-000</a></td>
<td><a href="reference/c62-percent-000-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr></td>
<td>Percentage Units
</td>
</tr>
<tr id="numbers-units-016-4.3.3" class="invalid">
<td>
<a href="numbers-units-016.htm">numbers-units-016</a></td>
<td><a href="reference/no-red-on-blank-page-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing invalid percentage values - decimal value with multiple decimals
<ul class="assert">
<li>Percentage assignments with more than one decimal are invalid.</li>
</ul>
</td>
</tr>
<tr id="numbers-units-017-4.3.3" class="">
<td>
<a href="numbers-units-017.htm">numbers-units-017</a></td>
<td><a href="reference/no-red-on-blank-page-ref.htm">=</a> </td>
<td></td>
<td>Parsing of percentage values - 0%
<ul class="assert">
<li>Percentage of 0% is valid and calculates to 0.</li>
</ul>
</td>
</tr>
</tbody>
<tbody id="s4.3.3.#value-def-percentage">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.3.#x43">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.4">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.3.4">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#uri">4.3.4 URLs and URIs</a></th></tr>
<!-- 17 tests -->
<tr id="c11-import-000-4.3.4" class="">
<td>
<a href="c11-import-000.htm">c11-import-000</a></td>
<td><a href="reference/c11-import-000-ref.htm">=</a> </td>
<td></td>
<td>Basic Containment
</td>
</tr>
<tr id="c64-uri-000-4.3.4" class="image">
<td>
<a href="c64-uri-000.htm">c64-uri-000</a></td>
<td><a href="reference/c64-uri-000-ref.htm">=</a> </td>
<td><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr></td>
<td>URLs
</td>
</tr>
<tr id="uri-001-4.3.4" class="">
<td>
<a href="uri-001.htm">uri-001</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Parsing valid URIs with white space and no quotes
<ul class="assert">
<li>A url function is valid if it is 'url(', followed by the URI, followed by ')', even with white space between.</li>
</ul>
</td>
</tr>
<tr id="uri-002-4.3.4" class="invalid">
<td>
<a href="uri-002.htm">uri-002</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing URL with an invalid space
<ul class="assert">
<li>URL functions with invalid spaces are ignored.</li>
</ul>
</td>
</tr>
<tr id="uri-003-4.3.4" class="image invalid">
<td>
<a href="uri-003.htm">uri-003</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>URL with missing closing parenthesis
<ul class="assert">
<li>Url functions with missing closing parenthesis are ignored.</li>
</ul>
</td>
</tr>
<tr id="uri-004-4.3.4" class="image">
<td>
<a href="uri-004.htm">uri-004</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr></td>
<td>URL function with URI that has escaped special chars
<ul class="assert">
<li>URI escapes are allowed in URL functions.</li>
</ul>
</td>
</tr>
<tr id="uri-005-4.3.4" class="image">
<td>
<a href="uri-005.htm">uri-005</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr></td>
<td>URL function with escaped special chars - single quote
<ul class="assert">
<li>Single quote characters appearing in an unquoted URI need to be escaped with a backslash so that the resulting URI value is a URI token.</li>
</ul>
</td>
</tr>
<tr id="uri-006-4.3.4" class="image invalid">
<td>
<a href="uri-006.htm">uri-006</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Invalid character (*) after URL function values
<ul class="assert">
<li>Special CSS characters following URL strings invalidate the entire url assignment.</li>
</ul>
</td>
</tr>
<tr id="uri-007-4.3.4" class="image invalid">
<td>
<a href="uri-007.htm">uri-007</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Invalid character (&amp;) after URL functions values
<ul class="assert">
<li>Invalid characters following URL strings invalidate the entire url assignment.</li>
</ul>
</td>
</tr>
<tr id="uri-008-4.3.4" class="image invalid">
<td>
<a href="uri-008.htm">uri-008</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Invalid characters (alpha) before URL function values
<ul class="assert">
<li>Alpha characters preceding URL strings invalidate the entire url assignment.</li>
</ul>
</td>
</tr>
<tr id="uri-009-4.3.4" class="image invalid">
<td>
<a href="uri-009.htm">uri-009</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Invalid character (/) before URL functions
<ul class="assert">
<li>A slash character preceding URL string invalidates the entire url assignment.</li>
</ul>
</td>
</tr>
<tr id="uri-010-4.3.4" class="image invalid">
<td>
<a href="uri-010.htm">uri-010</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Invalid character (_) before URL functions
<ul class="assert">
<li>An underscore character preceding URL string invalidates the entire url assignment.</li>
</ul>
</td>
</tr>
<tr id="uri-011-4.3.4" class="image invalid">
<td>
<a href="uri-011.htm">uri-011</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Invalid character (=) before URL functions
<ul class="assert">
<li>An equal sign character preceding URL string invalidates the entire url assignment.</li>
</ul>
</td>
</tr>
<tr id="uri-012-4.3.4" class="invalid">
<td>
<a href="uri-012.htm">uri-012</a></td>
<td><a href="reference/uri-012-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Error handling of broken url() - balancing braces
</td>
</tr>
<tr id="uri-014-4.3.4" class="">
<td>
<a href="uri-014.htm">uri-014</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td></td>
<td>Unquoted commas in url()
<ul class="assert">
<li>Unquoted commas inside url() are valid.</li>
</ul>
</td>
</tr>
<tr id="uri-015-4.3.4" class="">
<td>
<a href="uri-015.htm">uri-015</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td></td>
<td>Escaped url() functional notation
<ul class="assert">
<li>url() notation is case-insensitive and can be escaped.</li>
</ul>
</td>
</tr>
<tr id="uri-016-4.3.4" class="">
<td>
<a href="uri-016.htm">uri-016</a></td>
<td><a href="reference/uri-016-ref.htm">=</a> </td>
<td></td>
<td>Error handling of broken url() with open /*
<ul class="assert">
<li>Comments are just regular tokens inside unquoted URLs.</li>
</ul>
</td>
</tr>
</tbody>
<tbody id="s4.3.4.#value-def-uri">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.5">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.3.5">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#counter">4.3.5 Counters</a></th></tr>
<!-- 58 tests -->
<tr id="content-counter-000-4.3.5" class="">
<td>
<a href="content-counter-000.htm">content-counter-000</a></td>
<td><a href="reference/content-counter-000-ref.htm">=</a> </td>
<td></td>
<td>content: counter(c)
</td>
</tr>
<tr id="content-counter-001-4.3.5" class="">
<td>
<a href="content-counter-001.htm">content-counter-001</a></td>
<td><a href="reference/content-counter-001-ref.htm">=</a> </td>
<td></td>
<td>content: counter(c, none)
</td>
</tr>
<tr id="content-counter-002-4.3.5" class="">
<td>
<a href="content-counter-002.htm">content-counter-002</a></td>
<td><a href="reference/content-counter-002-ref.htm">=</a> </td>
<td></td>
<td>content: counter(c, disc)
</td>
</tr>
<tr id="content-counter-003-4.3.5" class="">
<td>
<a href="content-counter-003.htm">content-counter-003</a></td>
<td><a href="reference/content-counter-003-ref.htm">=</a> </td>
<td></td>
<td>content: counter(c, circle)
</td>
</tr>
<tr id="content-counter-004-4.3.5" class="">
<td>
<a href="content-counter-004.htm">content-counter-004</a></td>
<td><a href="reference/content-counter-004-ref.htm">=</a> </td>
<td></td>
<td>content: counter(c, square)
</td>
</tr>
<tr id="content-counter-005-4.3.5" class="">
<td>
<a href="content-counter-005.htm">content-counter-005</a></td>
<td><a href="reference/content-counter-000-ref.htm">=</a> </td>
<td></td>
<td>content: counter(c, decimal)
</td>
</tr>
<tr id="content-counter-006-4.3.5" class="">
<td>
<a href="content-counter-006.htm">content-counter-006</a></td>
<td><a href="reference/content-counter-006-ref.htm">=</a> </td>
<td></td>
<td>content: counter(c, decimal-leading-zero)
</td>
</tr>
<tr id="content-counter-007-4.3.5" class="">
<td>
<a href="content-counter-007.htm">content-counter-007</a></td>
<td><a href="reference/content-counter-007-ref.htm">=</a> </td>
<td></td>
<td>content: counter(c, lower-roman)
</td>
</tr>
<tr id="content-counter-008-4.3.5" class="">
<td>
<a href="content-counter-008.htm">content-counter-008</a></td>
<td><a href="reference/content-counter-008-ref.htm">=</a> </td>
<td></td>
<td>content: counter(c, upper-roman)
</td>
</tr>
<tr id="content-counter-009-4.3.5" class="">
<td>
<a href="content-counter-009.htm">content-counter-009</a></td>
<td><a href="reference/content-counter-009-ref.htm">=</a> </td>
<td></td>
<td>content: counter(c, georgian)
</td>
</tr>
<tr id="content-counter-010-4.3.5" class="">
<td>
<a href="content-counter-010.htm">content-counter-010</a></td>
<td><a href="reference/content-counter-010-ref.htm">=</a> </td>
<td></td>
<td>content: counter(c, armenian)
</td>
</tr>
<tr id="content-counter-011-4.3.5" class="">
<td>
<a href="content-counter-011.htm">content-counter-011</a></td>
<td><a href="reference/content-counter-011-ref.htm">=</a> </td>
<td></td>
<td>content: counter(c, lower-latin)
</td>
</tr>
<tr id="content-counter-012-4.3.5" class="">
<td>
<a href="content-counter-012.htm">content-counter-012</a></td>
<td><a href="reference/content-counter-011-ref.htm">=</a> </td>
<td></td>
<td>content: counter(c, lower-alpha)
</td>
</tr>
<tr id="content-counter-013-4.3.5" class="">
<td>
<a href="content-counter-013.htm">content-counter-013</a></td>
<td><a href="reference/content-counter-013-ref.htm">=</a> </td>
<td></td>
<td>content: counter(c, upper-latin)
</td>
</tr>
<tr id="content-counter-014-4.3.5" class="">
<td>
<a href="content-counter-014.htm">content-counter-014</a></td>
<td><a href="reference/content-counter-013-ref.htm">=</a> </td>
<td></td>
<td>content: counter(c, upper-alpha)
</td>
</tr>
<tr id="content-counter-015-4.3.5" class="">
<td>
<a href="content-counter-015.htm">content-counter-015</a></td>
<td><a href="reference/content-counter-015-ref.htm">=</a> </td>
<td></td>
<td>content: counter(c, lower-greek)
</td>
</tr>
<tr id="content-counter-016-4.3.5" class="invalid">
<td>
<a href="content-counter-016.htm">content-counter-016</a></td>
<td><a href="reference/content-counter-000-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>content: counter() error cases
</td>
</tr>
<tr id="content-counters-000-4.3.5" class="">
<td>
<a href="content-counters-000.htm">content-counters-000</a></td>
<td></td>
<td></td>
<td>content: counters(c, &quot;.&quot;)
</td>
</tr>
<tr id="content-counters-001-4.3.5" class="">
<td>
<a href="content-counters-001.htm">content-counters-001</a></td>
<td></td>
<td></td>
<td>content: counters(c, &quot;.&quot;, none)
</td>
</tr>
<tr id="content-counters-002-4.3.5" class="">
<td>
<a href="content-counters-002.htm">content-counters-002</a></td>
<td></td>
<td></td>
<td>content: counters(c, &quot;.&quot;, disc)
</td>
</tr>
<tr id="content-counters-003-4.3.5" class="">
<td>
<a href="content-counters-003.htm">content-counters-003</a></td>
<td></td>
<td></td>
<td>content: counters(c, &quot;.&quot;, circle)
</td>
</tr>
<tr id="content-counters-004-4.3.5" class="">
<td>
<a href="content-counters-004.htm">content-counters-004</a></td>
<td></td>
<td></td>
<td>content: counters(c, &quot;.&quot;, square)
</td>
</tr>
<tr id="content-counters-005-4.3.5" class="">
<td>
<a href="content-counters-005.htm">content-counters-005</a></td>
<td></td>
<td></td>
<td>content: counters(c, &quot;.&quot;, decimal)
</td>
</tr>
<tr id="content-counters-006-4.3.5" class="">
<td>
<a href="content-counters-006.htm">content-counters-006</a></td>
<td></td>
<td></td>
<td>content: counters(c, &quot;.&quot;, decimal-leading-zero)
</td>
</tr>
<tr id="content-counters-007-4.3.5" class="">
<td>
<a href="content-counters-007.htm">content-counters-007</a></td>
<td></td>
<td></td>
<td>content: counters(c, &quot;.&quot;, lower-roman)
</td>
</tr>
<tr id="content-counters-008-4.3.5" class="">
<td>
<a href="content-counters-008.htm">content-counters-008</a></td>
<td></td>
<td></td>
<td>content: counters(c, &quot;.&quot;, upper-roman)
</td>
</tr>
<tr id="content-counters-009-4.3.5" class="">
<td>
<a href="content-counters-009.htm">content-counters-009</a></td>
<td></td>
<td></td>
<td>content: counters(c, &quot;.&quot;, georgian)
</td>
</tr>
<tr id="content-counters-010-4.3.5" class="">
<td>
<a href="content-counters-010.htm">content-counters-010</a></td>
<td></td>
<td></td>
<td>content: counters(c, &quot;.&quot;, armenian)
</td>
</tr>
<tr id="content-counters-011-4.3.5" class="">
<td>
<a href="content-counters-011.htm">content-counters-011</a></td>
<td></td>
<td></td>
<td>content: counters(c, &quot;.&quot;, lower-latin)
</td>
</tr>
<tr id="content-counters-012-4.3.5" class="">
<td>
<a href="content-counters-012.htm">content-counters-012</a></td>
<td></td>
<td></td>
<td>content: counters(c, &quot;.&quot;, lower-alpha)
</td>
</tr>
<tr id="content-counters-013-4.3.5" class="">
<td>
<a href="content-counters-013.htm">content-counters-013</a></td>
<td></td>
<td></td>
<td>content: counters(c, &quot;.&quot;, upper-latin)
</td>
</tr>
<tr id="content-counters-014-4.3.5" class="">
<td>
<a href="content-counters-014.htm">content-counters-014</a></td>
<td></td>
<td></td>
<td>content: counters(c, &quot;.&quot;, upper-alpha)
</td>
</tr>
<tr id="content-counters-015-4.3.5" class="">
<td>
<a href="content-counters-015.htm">content-counters-015</a></td>
<td></td>
<td></td>
<td>content: counters(c, &quot;.&quot;, lower-greek)
</td>
</tr>
<tr id="content-counters-016-4.3.5" class="">
<td>
<a href="content-counters-016.htm">content-counters-016</a></td>
<td></td>
<td></td>
<td>content: counters() string argument
</td>
</tr>
<tr id="content-counters-017-4.3.5" class="">
<td>
<a href="content-counters-017.htm">content-counters-017</a></td>
<td></td>
<td></td>
<td>content: counters() string argument
</td>
</tr>
<tr id="content-counters-018-4.3.5" class="invalid">
<td>
<a href="content-counters-018.htm">content-counters-018</a></td>
<td></td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>content: counters() error cases
</td>
</tr>
<tr id="counter-increment-000-4.3.5" class="dom">
<td>
<a href="counter-increment-000.htm">counter-increment-000</a></td>
<td></td>
<td><abbr class="dom" title="Requires Document Object Model support">DOM/JS</abbr></td>
<td>dynamic changes to 'counter-increment'
</td>
</tr>
<tr id="counter-increment-001-4.3.5" class="dom">
<td>
<a href="counter-increment-001.htm">counter-increment-001</a></td>
<td></td>
<td><abbr class="dom" title="Requires Document Object Model support">DOM/JS</abbr></td>
<td>dynamic changes to 'counter-increment'
</td>
</tr>
<tr id="counter-increment-002-4.3.5" class="dom">
<td>
<a href="counter-increment-002.htm">counter-increment-002</a></td>
<td></td>
<td><abbr class="dom" title="Requires Document Object Model support">DOM/JS</abbr></td>
<td>dynamic changes to 'counter-increment'
</td>
</tr>
<tr id="counter-reset-000-4.3.5" class="dom">
<td>
<a href="counter-reset-000.htm">counter-reset-000</a></td>
<td></td>
<td><abbr class="dom" title="Requires Document Object Model support">DOM/JS</abbr></td>
<td>dynamic changes to 'counter-increment'
</td>
</tr>
<tr id="counter-reset-001-4.3.5" class="dom">
<td>
<a href="counter-reset-001.htm">counter-reset-001</a></td>
<td></td>
<td><abbr class="dom" title="Requires Document Object Model support">DOM/JS</abbr></td>
<td>dynamic changes to 'counter-increment'
</td>
</tr>
<tr id="counter-reset-002-4.3.5" class="dom">
<td>
<a href="counter-reset-002.htm">counter-reset-002</a></td>
<td></td>
<td><abbr class="dom" title="Requires Document Object Model support">DOM/JS</abbr></td>
<td>dynamic changes to 'counter-increment'
</td>
</tr>
<tr id="counters-hidden-000-4.3.5" class="">
<td>
<a href="counters-hidden-000.htm">counters-hidden-000</a></td>
<td></td>
<td></td>
<td>Counter properties on 'content: none' pseudo-elements
</td>
</tr>
<tr id="counters-hidden-001-4.3.5" class="">
<td>
<a href="counters-hidden-001.htm">counters-hidden-001</a></td>
<td></td>
<td></td>
<td>Counter properties on 'display: none' elements
</td>
</tr>
<tr id="counters-hidden-002-4.3.5" class="">
<td>
<a href="counters-hidden-002.htm">counters-hidden-002</a></td>
<td></td>
<td></td>
<td>Counter properties on 'visibility: hidden' elements
</td>
</tr>
<tr id="counters-multi-000-4.3.5" class="">
<td>
<a href="counters-multi-000.htm">counters-multi-000</a></td>
<td></td>
<td></td>
<td>Multiple resets for same counter
</td>
</tr>
<tr id="counters-multi-001-4.3.5" class="">
<td>
<a href="counters-multi-001.htm">counters-multi-001</a></td>
<td></td>
<td></td>
<td>Multiple increments and resets
</td>
</tr>
<tr id="counters-order-000-4.3.5" class="">
<td>
<a href="counters-order-000.htm">counters-order-000</a></td>
<td></td>
<td></td>
<td>Order of 'counter-reset', 'counter-increment', and counter use, including pseudo-elements
</td>
</tr>
<tr id="counters-order-001-4.3.5" class="">
<td>
<a href="counters-order-001.htm">counters-order-001</a></td>
<td></td>
<td></td>
<td>Order of counters in out-of-flow content
</td>
</tr>
<tr id="counters-root-000-4.3.5" class="">
<td>
<a href="counters-root-000.htm">counters-root-000</a></td>
<td></td>
<td></td>
<td>counters on the root element
</td>
</tr>
<tr id="counters-scope-000-4.3.5" class="">
<td>
<a href="counters-scope-000.htm">counters-scope-000</a></td>
<td></td>
<td></td>
<td>Counter scope
</td>
</tr>
<tr id="counters-scope-001-4.3.5" class="">
<td>
<a href="counters-scope-001.htm">counters-scope-001</a></td>
<td></td>
<td></td>
<td>Counter scope and nesting on elements
</td>
</tr>
<tr id="counters-scope-002-4.3.5" class="">
<td>
<a href="counters-scope-002.htm">counters-scope-002</a></td>
<td></td>
<td></td>
<td>Counter scope and nesting on :before
</td>
</tr>
<tr id="counters-scope-003-4.3.5" class="">
<td>
<a href="counters-scope-003.htm">counters-scope-003</a></td>
<td></td>
<td></td>
<td>Counter scope and nesting on :after
</td>
</tr>
<tr id="counters-scope-004-4.3.5" class="">
<td>
<a href="counters-scope-004.htm">counters-scope-004</a></td>
<td></td>
<td></td>
<td>Counter scope and nesting
</td>
</tr>
<tr id="counters-scope-implied-000-4.3.5" class="">
<td>
<a href="counters-scope-implied-000.htm">counters-scope-implied-000</a></td>
<td></td>
<td></td>
<td>Implied counter scopes with no 'counter-increment' or 'counter-reset'
</td>
</tr>
<tr id="counters-scope-implied-001-4.3.5" class="">
<td>
<a href="counters-scope-implied-001.htm">counters-scope-implied-001</a></td>
<td></td>
<td></td>
<td>Implied counter scopes by counter use
</td>
</tr>
<tr id="counters-scope-implied-002-4.3.5" class="">
<td>
<a href="counters-scope-implied-002.htm">counters-scope-implied-002</a></td>
<td></td>
<td></td>
<td>Implied counter scopes by 'counter-increment'
</td>
</tr>
</tbody>
<tbody id="s4.3.5.#value-def-counter">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.5.#x46">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.6">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.3.6">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#color-units">4.3.6 Colors</a></th></tr>
<!-- 9 tests -->
<tr id="c63-color-000-4.3.6" class="ahem image">
<td>
<a href="c63-color-000.htm">c63-color-000</a></td>
<td><a href="reference/c63-color-000-ref.htm">=</a> </td>
<td><abbr class="ahem" title="Requires Ahem font">Ahem</abbr><abbr class="image" title="Requires bitmap graphic support">Bitmaps</abbr></td>
<td>Color Units
</td>
</tr>
<tr id="color-000-4.3.6" class="invalid">
<td>
<a href="color-000.htm">color-000</a></td>
<td><a href="reference/color-000-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>RGB color syntax error handling
</td>
</tr>
<tr id="colors-001-4.3.6" class="">
<td>
<a href="colors-001.htm">colors-001</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Parsing rgb color values with white space
<ul class="assert">
<li>White space is allowed in the color rgb declaration.</li>
</ul>
</td>
</tr>
<tr id="colors-002-4.3.6" class="invalid">
<td>
<a href="colors-002.htm">colors-002</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing invalid hexadecimal RGB units - white space in hexadecimal values
<ul class="assert">
<li>White space is not allowed in a hexadecimal color assignment.</li>
</ul>
</td>
</tr>
<tr id="colors-003-4.3.6" class="invalid">
<td>
<a href="colors-003.htm">colors-003</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing invalid RGB functional notation - two values
<ul class="assert">
<li>An RGB value is invalid if it has only two values.</li>
</ul>
</td>
</tr>
<tr id="colors-004-4.3.6" class="invalid">
<td>
<a href="colors-004.htm">colors-004</a></td>
<td><a href="reference/no-red-filler-text-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Parsing invalid RGB functional notation - Percentages and Numbers
<ul class="assert">
<li>An RGB value is invalid if it has both percentages and number assignments.</li>
</ul>
</td>
</tr>
<tr id="colors-005-4.3.6" class="">
<td>
<a href="colors-005.htm">colors-005</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Clipping of RGB color values
<ul class="assert">
<li>Values outside the device gamut are clipped: the red, green, and blue values are changed to fall within the range supported by the device.</li>
</ul>
</td>
</tr>
<tr id="colors-006-4.3.6" class="">
<td>
<a href="colors-006.htm">colors-006</a></td>
<td><a href="reference/colors-006-ref.htm">=</a> </td>
<td></td>
<td>Comparing color keywords and hex values
<ul class="assert">
<li>Color matching of keywords and hex values.</li>
</ul>
</td>
</tr>
<tr id="colors-007-4.3.6" class="invalid">
<td>
<a href="colors-007.htm">colors-007</a></td>
<td><a href="reference/colors-007-ref.htm">=</a> </td>
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
<td>Color keyword syntax
</td>
</tr>
</tbody>
<tbody id="s4.3.6.#TanteksColorDiagram20020613">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.6.#value-def-color">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.7">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.3.7">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#strings">4.3.7 Strings</a></th></tr>
<!-- 6 tests -->
<tr id="escaped-newline-001-4.3.7" class="">
<td>
<a href="escaped-newline-001.htm">escaped-newline-001</a></td>
<td><a href="reference/escaped-newline-001-ref.htm">=</a> </td>
<td></td>
<td>Parsing strings with escaped newlines
<ul class="assert">
<li>Strings with escaped newlines are treated as a single whole string.</li>
</ul>
</td>
</tr>
<tr id="quoted-string-001-4.3.7" class="">
<td>
<a href="quoted-string-001.htm">quoted-string-001</a></td>
<td><a href="reference/quoted-string-001-ref.htm">=</a> </td>
<td></td>
<td>Parsing of single quotes inside double quotes
<ul class="assert">
<li>Single quotes are allowed in strings that are double quoted.</li>
</ul>
</td>
</tr>
<tr id="quoted-string-002-4.3.7" class="">
<td>
<a href="quoted-string-002.htm">quoted-string-002</a></td>
<td><a href="reference/quoted-string-002-ref.htm">=</a> </td>
<td></td>
<td>Parsing of double quotes inside single quotes
<ul class="assert">
<li>Double quotes are allowed in strings that are single quoted.</li>
</ul>
</td>
</tr>
<tr id="quoted-string-003-4.3.7" class="">
<td>
<a href="quoted-string-003.htm">quoted-string-003</a></td>
<td><a href="reference/quoted-string-001-ref.htm">=</a> </td>
<td></td>
<td>Parsing of escaped quotes (single within single)
<ul class="assert">
<li>Single quotes cannot occur inside single quotes unless escaped.</li>
</ul>
</td>
</tr>
<tr id="quoted-string-004-4.3.7" class="">
<td>
<a href="quoted-string-004.htm">quoted-string-004</a></td>
<td><a href="reference/quoted-string-002-ref.htm">=</a> </td>
<td></td>
<td>Parsing of escaped double quotes
<ul class="assert">
<li>Double quotes cannot occur inside double quotes unless escaped.</li>
</ul>
</td>
</tr>
<tr id="strings-000-4.3.7" class="">
<td>
<a href="strings-000.htm">strings-000</a></td>
<td><a href="reference/ref-this-text-should-be-green.htm">=</a> </td>
<td></td>
<td>Newlines in strings
</td>
</tr>
</tbody>
<tbody id="s4.3.7.#value-def-string">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.7.#x49">
<!-- 0 tests -->
</tbody>
<tbody id="s4.3.8">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.3.8">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#unsupported-values">4.3.8 Unsupported Values</a></th></tr>
<!-- 0 tests -->
</tbody>
<tbody id="s4.4">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.4">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#charset">4.4 CSS style sheet representation</a></th></tr>
<!-- 110 tests -->
<tr id="at-charset-001-4.4" class="http">
<td>
<a href="at-charset-001.htm">at-charset-001</a></td>
<td><a href="reference/at-charset-001-ref.htm">=</a> </td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>HTTP Charset vs BOM
<ul class="assert">
<li>The Byte Order Mark in the stylesheet overrides the HTTP charset setting.</li>
</ul>
</td>
</tr>
<tr id="at-charset-002-4.4" class="http">
<td>
<a href="at-charset-002.htm">at-charset-002</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>HTTP Charset over @charset
<ul class="assert">
<li>The HTTP charset setting overrides the @charset designation in the stylesheet.</li>
</ul>
</td>
</tr>
<tr id="at-charset-003-4.4" class="http">
<td>
<a href="at-charset-003.htm">at-charset-003</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>HTTP charset over link charset
<ul class="assert">
<li>The HTTP charset setting overrides the charset designation in the link tag.</li>
</ul>
</td>
</tr>
<tr id="at-charset-004-4.4" class="http">
<td>
<a href="at-charset-004.htm">at-charset-004</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>HTTP charset over set referring code page (UTF-8)
<ul class="assert">
<li>The HTTP charset setting overrides the referring document's code page.</li>
</ul>
</td>
</tr>
<tr id="at-charset-005-4.4" class="http">
<td>
<a href="at-charset-005.htm">at-charset-005</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>HTTP charset over set referring code page (windows-1252)
<ul class="assert">
<li>The HTTP charset setting overrides the charset designation in the referring document's meta tag.</li>
</ul>
</td>
</tr>
<tr id="at-charset-006-4.4" class="http">
<td>
<a href="at-charset-006.htm">at-charset-006</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>HTTP charset over referring code page (not set)
<ul class="assert">
<li>The HTTP charset setting overrides the charset of referring document.</li>
</ul>
</td>
</tr>
<tr id="at-charset-007-4.4" class="">
<td>
<a href="at-charset-007.htm">at-charset-007</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>@charset over link charset attribute
<ul class="assert">
<li>The @charset setting in the stylesheet overrides the charset attribute of the link element.</li>
</ul>
</td>
</tr>
<tr id="at-charset-008-4.4" class="">
<td>
<a href="at-charset-008.htm">at-charset-008</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>@charset over referring document's code page (set)
<ul class="assert">
<li>The @charset setting in the stylesheet overrides the referring document's set code page.</li>
</ul>
</td>
</tr>
<tr id="at-charset-009-4.4" class="">
<td>
<a href="at-charset-009.htm">at-charset-009</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>@charset over referring document's code page (unset)
<ul class="assert">
<li>The @charset setting in the stylesheet overrides the referring document's unset code page.</li>
</ul>
</td>
</tr>
<tr id="at-charset-010-4.4" class="">
<td>
<a href="at-charset-010.htm">at-charset-010</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>Link charset attribute over referring document's codepage (set)
<ul class="assert">
<li>The stylesheet's encoding is determined by the link element's charset attribute and not the referring document's code page.</li>
</ul>
</td>
</tr>
<tr id="at-charset-011-4.4" class="">
<td>
<a href="at-charset-011.htm">at-charset-011</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>Link charset attribute over referring document's codepage (not set)
<ul class="assert">
<li>The stylesheet's encoding is determined by the link element's charset attribute and not the referring document's code page.</li>
</ul>
</td>
</tr>
<tr id="at-charset-012-4.4" class="">
<td>
<a href="at-charset-012.htm">at-charset-012</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>Stylesheet encoding via the referring document's encoding (set)
<ul class="assert">
<li>The stylesheet's encoding is determined by the set encoding of the referring document.</li>
</ul>
</td>
</tr>
<tr id="at-charset-013-4.4" class="HTMLonly interact">
<td>
<a href="at-charset-013.htm">at-charset-013</a></td>
<td></td>
<td><abbr class="interact" title="Requires user interaction">Interact</abbr></td>
<td>Stylesheet encoding via the referring document's encoding (user set)
<ul class="assert">
<li>The stylesheet's encoding is determined by the user set referring document's encoding.</li>
</ul>
</td>
</tr>
<tr id="at-charset-014-4.4" class="">
<td>
<a href="at-charset-014.htm">at-charset-014</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>Matching BOM and @charset (utf-8)
<ul class="assert">
<li>The encoding is correctly interpreted from the matched BOM and @charset.</li>
</ul>
</td>
</tr>
<tr id="at-charset-015-4.4" class="">
<td>
<a href="at-charset-015.htm">at-charset-015</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>Matching BOM and @charset (utf-16 LE)
<ul class="assert">
<li>The encoding is correctly interpreted from the matched BOM and @charset.</li>
</ul>
</td>
</tr>
<tr id="at-charset-016-4.4" class="">
<td>
<a href="at-charset-016.htm">at-charset-016</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>Matching BOM and @charset (utf-16 BE)
<ul class="assert">
<li>The encoding is correctly interpreted from the matched BOM and @charset.</li>
</ul>
</td>
</tr>
<tr id="at-charset-019-4.4" class="">
<td>
<a href="at-charset-019.htm">at-charset-019</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>BOM with no @charset (utf-8)
<ul class="assert">
<li>The stylesheet is correctly interpreted as utf-8.</li>
</ul>
</td>
</tr>
<tr id="at-charset-020-4.4" class="">
<td>
<a href="at-charset-020.htm">at-charset-020</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>BOM with no @charset (utf-16LE)
<ul class="assert">
<li>The stylesheet is correctly interpreted as utf-16LE.</li>
</ul>
</td>
</tr>
<tr id="at-charset-021-4.4" class="">
<td>
<a href="at-charset-021.htm">at-charset-021</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>BOM with no @charset (utf-16BE)
<ul class="assert">
<li>The stylesheet is correctly interpreted as utf-16BE.</li>
</ul>
</td>
</tr>
<tr id="at-charset-024-4.4" class="">
<td>
<a href="at-charset-024.htm">at-charset-024</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>@charset specified (windows-1252)
<ul class="assert">
<li>The stylesheet is correctly interpreted as windows-1252.</li>
</ul>
</td>
</tr>
<tr id="at-charset-025-4.4" class="">
<td>
<a href="at-charset-025.htm">at-charset-025</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>@charset specified (Shift-JIS)
<ul class="assert">
<li>The stylesheet is correctly interpreted as Shift-JIS.</li>
</ul>
</td>
</tr>
<tr id="at-charset-026-4.4" class="">
<td>
<a href="at-charset-026.htm">at-charset-026</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>@charset specified (ISO-8859-6)
<ul class="assert">
<li>The stylesheet is correctly interpreted as ISO-8859-6.</li>
</ul>
</td>
</tr>
<tr id="at-charset-027-4.4" class="">
<td>
<a href="at-charset-027.htm">at-charset-027</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>@charset specified (Big5)
<ul class="assert">
<li>The stylesheet is correctly interpreted as Big5.</li>
</ul>
</td>
</tr>
<tr id="at-charset-028-4.4" class="">
<td>
<a href="at-charset-028.htm">at-charset-028</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>@charset specified (UTF-8)
<ul class="assert">
<li>The stylesheet is correctly interpreted as UTF-8.</li>
</ul>
</td>
</tr>
<tr id="at-charset-029-4.4" class="">
<td>
<a href="at-charset-029.htm">at-charset-029</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>@charset specified (UTF-16LE)
<ul class="assert">
<li>The stylesheet is not interpreted as UTF-16LE.</li>
</ul>
</td>
</tr>
<tr id="at-charset-030-4.4" class="">
<td>
<a href="at-charset-030.htm">at-charset-030</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>@charset specified (UTF-16BE)
<ul class="assert">
<li>The stylesheet is not interpreted as UTF-16BE.</li>
</ul>
</td>
</tr>
<tr id="at-charset-033-4.4" class="">
<td>
<a href="at-charset-033.htm">at-charset-033</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Non-matching BOM (windows-1252 with UTF-8 BOM)
<ul class="assert">
<li>The stylesheet is thrown out due to the BOM not matching the actual encoding.</li>
</ul>
</td>
</tr>
<tr id="at-charset-034-4.4" class="">
<td>
<a href="at-charset-034.htm">at-charset-034</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Non-matching BOM (UTF-8 with UTF-16LE BOM)
<ul class="assert">
<li>The stylesheet is thrown out due to the BOM not matching the actual encoding.</li>
</ul>
</td>
</tr>
<tr id="at-charset-035-4.4" class="">
<td>
<a href="at-charset-035.htm">at-charset-035</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Non-matching BOM (UTF-16LE with UTF-8 BOM)
<ul class="assert">
<li>The stylesheet is thrown out due to the BOM not matching the actual encoding.</li>
</ul>
</td>
</tr>
<tr id="at-charset-036-4.4" class="">
<td>
<a href="at-charset-036.htm">at-charset-036</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Non-matching BOM (UTF-32BE with UTF-16LE BOM)
<ul class="assert">
<li>The stylesheet is thrown out due to the BOM not matching the actual encoding.</li>
</ul>
</td>
</tr>
<tr id="at-charset-037-4.4" class="">
<td>
<a href="at-charset-037.htm">at-charset-037</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Non-matching @charset (Shift-JIS with 1252 @charset)
<ul class="assert">
<li>The selector does not match due to the mismatched @charset.</li>
</ul>
</td>
</tr>
<tr id="at-charset-038-4.4" class="">
<td>
<a href="at-charset-038.htm">at-charset-038</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>Non-matching @charset (Big5 with Shift-JIS @charset)
<ul class="assert">
<li>The selector does not match due to the mismatched @charset.</li>
</ul>
</td>
</tr>
<tr id="at-charset-039-4.4" class="">
<td>
<a href="at-charset-039.htm">at-charset-039</a></td>
<td></td>
<td></td>
<td>Matching BOM and @charset (utf-8)
<ul class="assert">
<li>The encoding is correctly interpreted from the matched BOM and @charset.</li>
</ul>
</td>
</tr>
<tr id="at-charset-040-4.4" class="">
<td>
<a href="at-charset-040.htm">at-charset-040</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>Non-matching @charset (UTF-16BE with UTF-8 @charset)
<ul class="assert">
<li>The stylesheet is thrown out due to the mismatched @charset.</li>
</ul>
</td>
</tr>
<tr id="at-charset-041-4.4" class="">
<td>
<a href="at-charset-041.htm">at-charset-041</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>Non-matching @charset (UTF-32LE with UTF-16BE @charset)
<ul class="assert">
<li>The stylesheet is thrown out due to the mismatched @charset.</li>
</ul>
</td>
</tr>
<tr id="at-charset-042-4.4" class="">
<td>
<a href="at-charset-042.htm">at-charset-042</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>@charset does not match BOM (UTF8 encoding and BOM with UTF-16BE @charset)
<ul class="assert">
<li>The stylesheet is interpreted as UTF-8.</li>
</ul>
</td>
</tr>
<tr id="at-charset-043-4.4" class="">
<td>
<a href="at-charset-043.htm">at-charset-043</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>@charset does not match BOM (UTF-16LE encoding and BOM with UTF-8 @charset)
<ul class="assert">
<li>The stylesheet is interpreted as UTF-8.</li>
</ul>
</td>
</tr>
<tr id="at-charset-044-4.4" class="">
<td>
<a href="at-charset-044.htm">at-charset-044</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>@charset does not match BOM (UTF-32BE encoding and BOM with UTF-16BE @charset)
<ul class="assert">
<li>UTF-32 is not supported.</li>
</ul>
</td>
</tr>
<tr id="at-charset-045-4.4" class="">
<td>
<a href="at-charset-045.htm">at-charset-045</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>Mismatched endianness in @charset (UTF-16LE encoding and BOM with UTF-16BE @charset)
<ul class="assert">
<li>The stylesheet is interpreted as UTF-16LE.</li>
</ul>
</td>
</tr>
<tr id="at-charset-046-4.4" class="">
<td>
<a href="at-charset-046.htm">at-charset-046</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>Mismatched endianness in @charset (UTF-16BE encoding and BOM with UTF-16LE @charset)
<ul class="assert">
<li>The stylesheet is interpreted as UTF16BE.</li>
</ul>
</td>
</tr>
<tr id="at-charset-047-4.4" class="">
<td>
<a href="at-charset-047.htm">at-charset-047</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>Endianness not specified (UTF-16LE encoding with UTF-16 @charset)
<ul class="assert">
<li>The stylesheet is not interpreted as UTF-16LE.</li>
</ul>
</td>
</tr>
<tr id="at-charset-048-4.4" class="">
<td>
<a href="at-charset-048.htm">at-charset-048</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>Endianness not specified (UTF-16BE encoding with UTF-16 @charset)
<ul class="assert">
<li>The stylesheet is not interpreted as UTF16-BE.</li>
</ul>
</td>
</tr>
<tr id="at-charset-049-4.4" class="">
<td>
<a href="at-charset-049.htm">at-charset-049</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>@charset preceded by a newline
<ul class="assert">
<li>The selector does not match due to the @charset being ignored.</li>
</ul>
</td>
</tr>
<tr id="at-charset-050-4.4" class="">
<td>
<a href="at-charset-050.htm">at-charset-050</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>@charset preceded by a space
<ul class="assert">
<li>The selector does not match due to the @charset being ignored.</li>
</ul>
</td>
</tr>
<tr id="at-charset-051-4.4" class="">
<td>
<a href="at-charset-051.htm">at-charset-051</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>@charset preceded by a declaration
<ul class="assert">
<li>The selector does not match due to the @charset being ignored.</li>
</ul>
</td>
</tr>
<tr id="at-charset-052-4.4" class="">
<td>
<a href="at-charset-052.htm">at-charset-052</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>@charset preceded by another @charset
<ul class="assert">
<li>The selector does not match due to the second @charset being ignored.</li>
</ul>
</td>
</tr>
<tr id="at-charset-053-4.4" class="">
<td>
<a href="at-charset-053.htm">at-charset-053</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>@charset immediately followed by a declaration block
<ul class="assert">
<li>The declaration block is interpreted and applied correctly.</li>
</ul>
</td>
</tr>
<tr id="at-charset-054-4.4" class="">
<td>
<a href="at-charset-054.htm">at-charset-054</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>@charset in uppercase
<ul class="assert">
<li>The selector does not match due to the @charset being ignored.</li>
</ul>
</td>
</tr>
<tr id="at-charset-055-4.4" class="">
<td>
<a href="at-charset-055.htm">at-charset-055</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>@charset without quotes
<ul class="assert">
<li>The selector does not match due to the @charset being ignored.</li>
</ul>
</td>
</tr>
<tr id="at-charset-056-4.4" class="">
<td>
<a href="at-charset-056.htm">at-charset-056</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>@charset missing a space
<ul class="assert">
<li>The selector does not match due to the @charset being ignored.</li>
</ul>
</td>
</tr>
<tr id="at-charset-057-4.4" class="">
<td>
<a href="at-charset-057.htm">at-charset-057</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>@charset escaped numerically
<ul class="assert">
<li>The selector does not match due to the @charset being ignored.</li>
</ul>
</td>
</tr>
<tr id="at-charset-058-4.4" class="">
<td>
<a href="at-charset-058.htm">at-charset-058</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>@charset escaped char
<ul class="assert">
<li>The selector does not match due to the @charset being ignored.</li>
</ul>
</td>
</tr>
<tr id="at-charset-059-4.4" class="">
<td>
<a href="at-charset-059.htm">at-charset-059</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>@charset missing semi-colon
<ul class="assert">
<li>The selector does not match due to the @charset being ignored.</li>
</ul>
</td>
</tr>
<tr id="at-charset-060-4.4" class="">
<td>
<a href="at-charset-060.htm">at-charset-060</a></td>
<td><a href="at-charset-001.htm">=</a> <a href="reference/at-charset-001-ref.htm">=</a> </td>
<td></td>
<td>@charset with bogus name
<ul class="assert">
<li>The stylesheet is interpreted as UTF-16LE based on BOM.</li>
</ul>
</td>
</tr>
<tr id="at-charset-061-4.4" class="">
<td>
<a href="at-charset-061.htm">at-charset-061</a></td>
<td><a href="reference/filler-text-below-green.htm">=</a> </td>
<td></td>
<td>@charset within style block
<ul class="assert">
<li>The selector does not match due to the @charset being ignored.</li>
</ul>
</td>
</tr>
<tr id="at-charset-071-4.4" class="http">
<td>
<a href="at-charset-071.htm">at-charset-071</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>Stylesheet encodings: ISO-8859-1
</td>
</tr>
<tr id="at-charset-072-4.4" class="http">
<td>
<a href="at-charset-072.htm">at-charset-072</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>Stylesheet encodings: ISO-8859-11
</td>
</tr>
<tr id="at-charset-073-4.4" class="http">
<td>
<a href="at-charset-073.htm">at-charset-073</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>Stylesheet encodings: ISO-8859-5
</td>
</tr>
<tr id="at-charset-074-4.4" class="http">
<td>
<a href="at-charset-074.htm">at-charset-074</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>Stylesheet encodings: ISO-8859-6
</td>
</tr>
<tr id="at-charset-075-4.4" class="http">
<td>
<a href="at-charset-075.htm">at-charset-075</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>Stylesheet encodings: ISO-8859-7
</td>
</tr>
<tr id="at-charset-076-4.4" class="http">
<td>
<a href="at-charset-076.htm">at-charset-076</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>Stylesheet encodings: ISO-8859-8
</td>
</tr>
<tr id="at-charset-077-4.4" class="http">
<td>
<a href="at-charset-077.htm">at-charset-077</a></td>
<td><a href="reference/ref-green-background.htm">=</a> </td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>Stylesheet encodings: KOI8-R
</td>
</tr>
<tr id="at-charset-quotes-001-4.4" class="">
<td>
<a href="at-charset-quotes-001.htm">at-charset-quotes-001</a></td>
<td><a href="reference/at-charset-ref.htm">=</a> </td>
<td></td>
<td>@charset quotes
</td>
</tr>
<tr id="at-charset-space-001-4.4" class="">
<td>
<a href="at-charset-space-001.htm">at-charset-space-001</a></td>
<td><a href="reference/at-charset-ref.htm">=</a> </td>
<td></td>
<td>@charset leading-space
</td>
</tr>
<tr id="at-charset-space-002-4.4" class="">
<td>
<a href="at-charset-space-002.htm">at-charset-space-002</a></td>
<td><a href="reference/at-charset-ref.htm">=</a> </td>
<td></td>
<td>@charset trailing-space
</td>
</tr>
<tr id="at-charset-utf16-be-001-4.4" class="">
<td>
<a href="at-charset-utf16-be-001.htm">at-charset-utf16-be-001</a></td>
<td><a href="reference/at-charset-ref.htm">=</a> </td>
<td></td>
<td>@charset utf-16-be-no-bom
</td>
</tr>
<tr id="at-charset-utf16-be-002-4.4" class="">
<td>
<a href="at-charset-utf16-be-002.htm">at-charset-utf16-be-002</a></td>
<td><a href="reference/at-charset-ref.htm">=</a> </td>
<td></td>
<td>@charset utf-16-be-bom
</td>
</tr>
<tr id="at-charset-utf16-be-003-4.4" class="">
<td>
<a href="at-charset-utf16-be-003.htm">at-charset-utf16-be-003</a></td>
<td><a href="reference/at-charset-ref.htm">=</a> </td>
<td></td>
<td>@charset utf-16-bom-be
</td>
</tr>
<tr id="at-charset-utf16-le-001-4.4" class="">
<td>
<a href="at-charset-utf16-le-001.htm">at-charset-utf16-le-001</a></td>
<td><a href="reference/at-charset-ref.htm">=</a> </td>
<td></td>
<td>@charset utf-16-le-no-bom
</td>
</tr>
<tr id="at-charset-utf16-le-002-4.4" class="">
<td>
<a href="at-charset-utf16-le-002.htm">at-charset-utf16-le-002</a></td>
<td><a href="reference/at-charset-ref.htm">=</a> </td>
<td></td>
<td>@charset utf-16-le-bom
</td>
</tr>
<tr id="at-charset-utf16-le-003-4.4" class="">
<td>
<a href="at-charset-utf16-le-003.htm">at-charset-utf16-le-003</a></td>
<td><a href="reference/at-charset-ref.htm">=</a> </td>
<td></td>
<td>@charset utf-16-bom-le
</td>
</tr>
<tr id="character-encoding-001-4.4" class="http">
<td>
<a href="character-encoding-001.htm">character-encoding-001</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>html utf8, css http iso1
<ul class="assert">
<li>The user agent respects the encoding of a css stylesheet declared in HTTP.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-002-4.4" class="http">
<td>
<a href="character-encoding-002.htm">character-encoding-002</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>html utf8, css http iso15
<ul class="assert">
<li>The user agent respects the encoding of a css stylesheet declared in HTTP.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-003-4.4" class="http">
<td>
<a href="character-encoding-003.htm">character-encoding-003</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>html iso1, css http utf8
<ul class="assert">
<li>The user agent respects the encoding of a css stylesheet declared in HTTP.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-004-4.4" class="http">
<td>
<a href="character-encoding-004.htm">character-encoding-004</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>html utf8, css @charset iso1
<ul class="assert">
<li>The user agent respects the encoding of a css stylesheet declared in an @charset rule.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-005-4.4" class="http">
<td>
<a href="character-encoding-005.htm">character-encoding-005</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>html utf8, css @charset iso15
<ul class="assert">
<li>The user agent respects the encoding of a css stylesheet declared in an @charset rule.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-006-4.4" class="http">
<td>
<a href="character-encoding-006.htm">character-encoding-006</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>html iso1, css @charset utf8
<ul class="assert">
<li>The user agent respects the encoding of a css stylesheet declared in an @charset rule.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-007-4.4" class="http">
<td>
<a href="character-encoding-007.htm">character-encoding-007</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>html utf8, link charset iso1
<ul class="assert">
<li>The user agent respects the encoding of a css stylesheet declared in a charset attribute on the HTML link.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-008-4.4" class="http">
<td>
<a href="character-encoding-008.htm">character-encoding-008</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>html utf8, link charset iso15
<ul class="assert">
<li>The user agent respects the encoding of a css stylesheet declared in a charset attribute on the HTML link.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-009-4.4" class="http">
<td>
<a href="character-encoding-009.htm">character-encoding-009</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>html iso-8859-1, link charset utf8
<ul class="assert">
<li>The user agent respects the encoding of a css stylesheet declared in a charset attribute on the HTML link.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-010-4.4" class="http">
<td>
<a href="character-encoding-010.htm">character-encoding-010</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>html iso1
<ul class="assert">
<li>The user agent applies the encoding of the HTML file to a css stylesheet whose encoding is not otherwise declared.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-011-4.4" class="http">
<td>
<a href="character-encoding-011.htm">character-encoding-011</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>html iso15
<ul class="assert">
<li>The user agent applies the encoding of the HTML file to a css stylesheet whose encoding is not otherwise declared.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-012-4.4" class="http">
<td>
<a href="character-encoding-012.htm">character-encoding-012</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>html utf8
<ul class="assert">
<li>The user agent applies the encoding of the HTML file to a css stylesheet whose encoding is not otherwise declared.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-013-4.4" class="http">
<td>
<a href="character-encoding-013.htm">character-encoding-013</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>html iso-8859-1, css bom
<ul class="assert">
<li>The user agent uses a UTF-8 signature without an @charset at the beginning of a css stylesheet to indicate that the encoding is UTF-8.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-014-4.4" class="http">
<td>
<a href="character-encoding-014.htm">character-encoding-014</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>html iso-8859-15, css bom
<ul class="assert">
<li>The user agent uses a UTF-8 signature without an @charset at the beginning of a css stylesheet to indicate that the encoding is UTF-8.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-015-4.4" class="http">
<td>
<a href="character-encoding-015.htm">character-encoding-015</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>html iso-8859-1, css bom and @charset utf8 (in lowercase)
<ul class="assert">
<li>When a stylesheet has a BOM and an @charset declaration that is for the right Unicode encoding, the stylesheet works.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-016-4.4" class="http">
<td>
<a href="character-encoding-016.htm">character-encoding-016</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>html iso-8859-1, css bom and @charset utf8 (in uppercase)
<ul class="assert">
<li>When a stylesheet has a BOM and an @charset declaration that is for the right Unicode encoding, the stylesheet works.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-017-4.4" class="http">
<td>
<a href="character-encoding-017.htm">character-encoding-017</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>html iso-8859-15, css bom and @charset iso15
<ul class="assert">
<li>When a stylesheet has a BOM, honor it.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-018-4.4" class="http">
<td>
<a href="character-encoding-018.htm">character-encoding-018</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>html utf-8, css @charset unknown
<ul class="assert">
<li>When a stylesheet has a @charset declaration with an unknown value, the declaration should be ignored.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-019-4.4" class="http">
<td>
<a href="character-encoding-019.htm">character-encoding-019</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>no semicolon at end of charset rule
<ul class="assert">
<li>If a @charset declaration is missing a final semicolon, the encoding declaration will not be recognised.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-020-4.4" class="http">
<td>
<a href="character-encoding-020.htm">character-encoding-020</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>extra spaces after @charset
<ul class="assert">
<li>If a @charset declaration has more than one space after 'charset', the encoding declaration will not be recognised.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-021-4.4" class="http">
<td>
<a href="character-encoding-021.htm">character-encoding-021</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>extra spaces before colon in charset rule
<ul class="assert">
<li>If a @charset declaration has spaces just before the colon, the encoding declaration will not be recognised.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-022-4.4" class="http">
<td>
<a href="character-encoding-022.htm">character-encoding-022</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>linebreak in middle of charset rule
<ul class="assert">
<li>If a @charset declaration has a line break in the middle, the encoding declaration will not be recognised.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-023-4.4" class="http">
<td>
<a href="character-encoding-023.htm">character-encoding-023</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>single quotes around charset name
<ul class="assert">
<li>If a @charset declaration value has single, rather than double, quotes around it, the encoding declaration will not be recognised.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-024-4.4" class="http">
<td>
<a href="character-encoding-024.htm">character-encoding-024</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>blank line before @charset
<ul class="assert">
<li>If a @charset declaration is not on the first line of the file, the encoding declaration will not be recognised.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-025-4.4" class="http">
<td>
<a href="character-encoding-025.htm">character-encoding-025</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>blank spaces before @charset
<ul class="assert">
<li>If a @charset declaration does not start at the beginning of the first line of the file (when there is no BOM), the encoding declaration will not be recognised.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-026-4.4" class="http">
<td>
<a href="character-encoding-026.htm">character-encoding-026</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>http vs. @charset
<ul class="assert">
<li>An HTTP encoding declaration for a stylesheet takes precedence over an @charset declaration.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-027-4.4" class="http">
<td>
<a href="character-encoding-027.htm">character-encoding-027</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>http vs. charset link
<ul class="assert">
<li>An HTTP encoding declaration for a stylesheet takes precedence over a charset attribute link declaration.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-028-4.4" class="http">
<td>
<a href="character-encoding-028.htm">character-encoding-028</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>http vs. bom
<ul class="assert">
<li>A UTF-8 signature for a stylesheet takes precedence over an HTTP encoding declaration.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-029-4.4" class="http">
<td>
<a href="character-encoding-029.htm">character-encoding-029</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>@charset vs. link charset
<ul class="assert">
<li>An HTTP encoding declaration for a stylesheet takes precedence over a UTF-8 signature.</li>
</ul>
</td>
</tr>
<tr id="character-encoding-031-4.4" class="http">
<td>
<a href="character-encoding-031.htm">character-encoding-031</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>Stylesheet encodings: ISO-8859-1
</td>
</tr>
<tr id="character-encoding-032-4.4" class="http">
<td>
<a href="character-encoding-032.htm">character-encoding-032</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>Stylesheet encodings: ISO-8859-11
</td>
</tr>
<tr id="character-encoding-033-4.4" class="http">
<td>
<a href="character-encoding-033.htm">character-encoding-033</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>Stylesheet encodings: ISO-8859-5
</td>
</tr>
<tr id="character-encoding-034-4.4" class="http">
<td>
<a href="character-encoding-034.htm">character-encoding-034</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>Stylesheet encodings: ISO-8859-6
</td>
</tr>
<tr id="character-encoding-035-4.4" class="http">
<td>
<a href="character-encoding-035.htm">character-encoding-035</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>Stylesheet encodings: ISO-8859-7
</td>
</tr>
<tr id="character-encoding-036-4.4" class="http">
<td>
<a href="character-encoding-036.htm">character-encoding-036</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>Stylesheet encodings: ISO-8859-8
</td>
</tr>
<tr id="character-encoding-037-4.4" class="http">
<td>
<a href="character-encoding-037.htm">character-encoding-037</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>Stylesheet encodings: KOI8-R
</td>
</tr>
<tr id="character-encoding-038-4.4" class="http">
<td>
<a href="character-encoding-038.htm">character-encoding-038</a></td>
<td></td>
<td><abbr class="http" title="Requires HTTP headers">HTTP</abbr></td>
<td>Stylesheet encodings: malformed UTF-8
</td>
</tr>
<tr id="charset-attr-001-4.4" class="">
<td>
<a href="charset-attr-001.htm">charset-attr-001</a></td>
<td><a href="reference/at-charset-ref.htm">=</a> </td>
<td></td>
<td>@charset test-attribute
</td>
</tr>
<tr id="first-letter-nested-006-4.4" class="">
<td>
<a href="first-letter-nested-006.htm">first-letter-nested-006</a></td>
<td><a href="reference/first-letter-nested-001-ref.htm">=</a> </td>
<td></td>
<td>:first-letter
</td>
</tr>
</tbody>
<tbody id="s4.4.#x50">
<!-- 0 tests -->
</tbody>
<tbody id="s4.4.#x51">
<!-- 0 tests -->
</tbody>
<tbody id="s4.4.#x52">
<!-- 0 tests -->
</tbody>
<tbody id="s4.4.#x54">
<!-- 0 tests -->
</tbody>
<tbody id="s4.4.#x55">
<!-- 0 tests -->
</tbody>
<tbody id="s4.4.#x56">
<!-- 0 tests -->
</tbody>
<tbody id="s4.4.#x57">
<!-- 0 tests -->
</tbody>
<tbody id="s4.4.#x58">
<!-- 0 tests -->
</tbody>
<tbody id="s4.4.1">
<tr><th colspan="4" scope="rowgroup">
<a href="#s4.4.1">+</a>
<a href="https://www.w3.org/TR/CSS21/syndata.html#escaping">4.4.1 Referring to characters not represented in a character encoding</a></th></tr>
<!-- 1 tests -->
<tr id="character-representation-001-4.4.1" class="">
<td>
<a href="character-representation-001.htm">character-representation-001</a></td>
<td></td>
<td></td>
<td>Character representation in other encoding
<ul class="assert">
<li>Characters in the stylesheet that cannot be represented in the current character encoding are written as escaped references to ISO 10646 characters.</li>
</ul>
</td>
</tr>
</tbody>
</table>
</body>
</html>