mirror of
https://github.com/servo/servo.git
synced 2025-06-23 16:44:33 +01:00
903 lines
No EOL
39 KiB
HTML
903 lines
No EOL
39 KiB
HTML
|
|
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
|
|
<html>
|
|
<head>
|
|
<title>Feature queries: the ‘@supports’ rule - CSS Conditional Rules Module Level 3 CR Test Suite</title>
|
|
<style type="text/css">
|
|
@import "http://www.w3.org/StyleSheets/TR/base.css";
|
|
@import "../indices.css";
|
|
</style>
|
|
</head>
|
|
|
|
<body>
|
|
|
|
<h1>CSS Conditional Rules Module Level 3 CR Test Suite</h1>
|
|
<h2>Feature queries: the ‘@supports’ rule (84 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="s6">
|
|
<tr><th colspan="4" scope="rowgroup">
|
|
<a href="#s6">+</a>
|
|
<a href="https://www.w3.org/TR/css3-conditional/#at-supports">6 Feature queries: the ‘@supports’ rule</a></th></tr>
|
|
<!-- 84 tests -->
|
|
<tr id="001-6" class="script">
|
|
<td>
|
|
<a href="001.htm">001</a></td>
|
|
<td></td>
|
|
<td><abbr class="script" title="Executes tests in script">Script</abbr></td>
|
|
<td>@supports rules OM support
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-001-6" class="">
|
|
<td>
|
|
<a href="at-supports-001.htm">at-supports-001</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td></td>
|
|
<td>Support for simple passing conditions in @supports
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-002-6" class="">
|
|
<td>
|
|
<a href="at-supports-002.htm">at-supports-002</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td></td>
|
|
<td>Support for @supports within @media
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-003-6" class="">
|
|
<td>
|
|
<a href="at-supports-003.htm">at-supports-003</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td></td>
|
|
<td>Support for @media within @supports
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-004-6" class="">
|
|
<td>
|
|
<a href="at-supports-004.htm">at-supports-004</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td></td>
|
|
<td>@supports within non-matching @media should not apply
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-005-6" class="">
|
|
<td>
|
|
<a href="at-supports-005.htm">at-supports-005</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td></td>
|
|
<td>non-matching @media within @supports should not apply
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-006-6" class="">
|
|
<td>
|
|
<a href="at-supports-006.htm">at-supports-006</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td></td>
|
|
<td>Nested parens around conditions in @supports should work
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-007-6" class="">
|
|
<td>
|
|
<a href="at-supports-007.htm">at-supports-007</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td></td>
|
|
<td>Conjunctions of passing simple conditions in @supports should pass
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-008-6" class="">
|
|
<td>
|
|
<a href="at-supports-008.htm">at-supports-008</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td></td>
|
|
<td>Disjunctions with at least a passing simple condition in @supports should pass
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-009-6" class="">
|
|
<td>
|
|
<a href="at-supports-009.htm">at-supports-009</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td></td>
|
|
<td>Negations of failing simple conditions in @supports should pass
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-010-6" class="">
|
|
<td>
|
|
<a href="at-supports-010.htm">at-supports-010</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td></td>
|
|
<td>Combinations of conjuctions, disjunctions, and negations of simple conditions in @supports should work
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-011-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-011.htm">at-supports-011</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Conditions not enclosed in parens in @supports should not work
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-012-6" class="">
|
|
<td>
|
|
<a href="at-supports-012.htm">at-supports-012</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td></td>
|
|
<td>Conjunctions with more than two terms in @supports should work
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-013-6" class="">
|
|
<td>
|
|
<a href="at-supports-013.htm">at-supports-013</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td></td>
|
|
<td>Disjunction with more than two terms in @supports should work
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-014-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-014.htm">at-supports-014</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Negations in @supports should not work if "not" isn't follow by a space
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-015-6" class="">
|
|
<td>
|
|
<a href="at-supports-015.htm">at-supports-015</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td></td>
|
|
<td>Bizarre syntax that still conforms to the core grammar should succesfully parse in @supports
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-016-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-016.htm">at-supports-016</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>In @supports, parens are required to mix conjunctions with disjunctions
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-017-6" class="">
|
|
<td>
|
|
<a href="at-supports-017.htm">at-supports-017</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td></td>
|
|
<td>In @supports, functions can be parsed successfully
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-018-6" class="">
|
|
<td>
|
|
<a href="at-supports-018.htm">at-supports-018</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td></td>
|
|
<td>In @supports conditions, the arguments of a function can begin with spaces
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-019-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-019.htm">at-supports-019</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax in @supports recovers properly
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-020-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-020.htm">at-supports-020</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax in @supports recovers properly
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-021-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-021.htm">at-supports-021</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax in @supports recovers properly
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-022-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-022.htm">at-supports-022</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax in @supports recovers properly
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-023-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-023.htm">at-supports-023</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax in nested @supports recovers properly
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-024-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-024.htm">at-supports-024</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax in @supports recovers properly
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-025-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-025.htm">at-supports-025</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax in @supports recovers properly
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-026-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-026.htm">at-supports-026</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax in @supports recovers properly
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-027-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-027.htm">at-supports-027</a></td>
|
|
<td><a href="reference/at-supports-027-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax in @supports recovers properly
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-028-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-028.htm">at-supports-028</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax in @supports recovers properly
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-029-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-029.htm">at-supports-029</a></td>
|
|
<td><a href="reference/at-supports-027-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax in @supports recovers properly
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-030-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-030.htm">at-supports-030</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax in @supports recovers properly
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-031-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-031.htm">at-supports-031</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax in @supports recovers properly
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-032-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-032.htm">at-supports-032</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax in @supports recovers properly
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-033-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-033.htm">at-supports-033</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax in @supports recovers properly
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-034-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-034.htm">at-supports-034</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax of supports condition
|
|
<ul class="assert">
|
|
<li>Each individual single supports condition must be enclosed by one opening parenthesis '(' and one closing parenthesis ')'.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-035-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-035.htm">at-supports-035</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax of supports condition
|
|
<ul class="assert">
|
|
<li>Each individual single supports condition must be enclosed by one opening parenthesis '(' and one closing parenthesis ')'.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-036-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-036.htm">at-supports-036</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax of supports condition
|
|
<ul class="assert">
|
|
<li>Each individual single supports condition must be enclosed by one opening parenthesis '(' and one closing parenthesis ')'.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-037-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-037.htm">at-supports-037</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>Incorrect syntax of supports condition
|
|
<ul class="assert">
|
|
<li>Each individual single supports condition must be enclosed by one opening parenthesis '(' and one closing parenthesis ')'.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-038-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-038.htm">at-supports-038</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>a supports condition declaration can not end with a semi-colon
|
|
<ul class="assert">
|
|
<li>Each individual single supports condition declaration can not end up with a semi-colon ';'. A semi-colon is a punctuation separator of multiple CSS declarations and thus is not part of an individual CSS declaration per se.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="at-supports-039-6" class="invalid">
|
|
<td>
|
|
<a href="at-supports-039.htm">at-supports-039</a></td>
|
|
<td><a href="reference/at-supports-001-ref.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>a supports condition declaration can not end with a semi-colon
|
|
<ul class="assert">
|
|
<li>Each individual single supports condition declaration can not end up with a semi-colon ';'. A semi-colon is a punctuation separator of multiple CSS declarations and thus is not part of an individual CSS declaration per se.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-001-6" class="">
|
|
<td>
|
|
<a href="css-supports-001.htm">css-supports-001</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax and a passing condition must apply rules inside it
|
|
<ul class="assert">
|
|
<li>An @supports rule condition with a single, valid property declaration for a supported property must cause the rules inside the @supports rule to apply.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-002-6" class="invalid">
|
|
<td>
|
|
<a href="css-supports-002.htm">css-supports-002</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>An @supports rule with invalid syntax must not apply rules inside it
|
|
<ul class="assert">
|
|
<li>Property declarations in an @supports rule condition must be surrounded by parentheses.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-003-6" class="">
|
|
<td>
|
|
<a href="css-supports-003.htm">css-supports-003</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax and a passing condition must apply rules inside it
|
|
<ul class="assert">
|
|
<li>Any subexpression in an @supports rule condition can be surrounded by an extra pair of parentheses.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-004-6" class="">
|
|
<td>
|
|
<a href="css-supports-004.htm">css-supports-004</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax and a passing condition must apply rules inside it
|
|
<ul class="assert">
|
|
<li>Property declarations in an @supports rule can have !important specified.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-005-6" class="">
|
|
<td>
|
|
<a href="css-supports-005.htm">css-supports-005</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax but a failing condition must not apply rules inside it
|
|
<ul class="assert">
|
|
<li>A supported property with an unsupported value must cause the @supports condition to fail.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-006-6" class="">
|
|
<td>
|
|
<a href="css-supports-006.htm">css-supports-006</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax and a passing condition must apply rules inside it
|
|
<ul class="assert">
|
|
<li>A disjunction of two @supports conditions must cause the @supports condition to pass if the left condition passes.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-007-6" class="">
|
|
<td>
|
|
<a href="css-supports-007.htm">css-supports-007</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax and a passing condition must apply rules inside it
|
|
<ul class="assert">
|
|
<li>A disjunction of two @supports conditions must cause the @supports condition to pass if the right condition passes.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-008-6" class="">
|
|
<td>
|
|
<a href="css-supports-008.htm">css-supports-008</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax and a passing condition must apply rules inside it
|
|
<ul class="assert">
|
|
<li>A conjunction of two @supports conditions must cause the @supports condition to pass if both sub-conditions pass.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-009-6" class="">
|
|
<td>
|
|
<a href="css-supports-009.htm">css-supports-009</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax but a failing condition must not apply rules inside it
|
|
<ul class="assert">
|
|
<li>A conjunction of two @supports conditions must cause the @supports condition to fail if the left sub-condition passes.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-010-6" class="">
|
|
<td>
|
|
<a href="css-supports-010.htm">css-supports-010</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax but a failing condition must not apply rules inside it
|
|
<ul class="assert">
|
|
<li>A conjunction of two @supports conditions must cause the @supports condition to fail if the right sub-condition passes.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-011-6" class="">
|
|
<td>
|
|
<a href="css-supports-011.htm">css-supports-011</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax and a passing condition must apply rules inside it
|
|
<ul class="assert">
|
|
<li>A disjunction of three @supports conditions must cause the @supports condition to pass if at least one of the sub-conditions passes.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-012-6" class="">
|
|
<td>
|
|
<a href="css-supports-012.htm">css-supports-012</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax and a passing condition must apply rules inside it
|
|
<ul class="assert">
|
|
<li>A conjunction of three @supports conditions must cause the @supports condition to pass if all three sub-conditions pass.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-013-6" class="invalid">
|
|
<td>
|
|
<a href="css-supports-013.htm">css-supports-013</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>An @supports rule with invalid syntax must not apply rules inside it
|
|
<ul class="assert">
|
|
<li>A disjunction and a conjunction of @supports conditions must not be combined unless one of the two is surrounded by parentheses.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-014-6" class="invalid">
|
|
<td>
|
|
<a href="css-supports-014.htm">css-supports-014</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>An @supports rule with invalid syntax must not apply rules inside it
|
|
<ul class="assert">
|
|
<li>A disjunction and a conjunction of @supports conditions must not be combined unless one of the two is surrounded by parentheses.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-015-6" class="">
|
|
<td>
|
|
<a href="css-supports-015.htm">css-supports-015</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax and a passing condition must apply rules inside it
|
|
<ul class="assert">
|
|
<li>There need not be any white space between the '@supports' and open brace of the rule set, nor between a declaration's property name and value.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-016-6" class="">
|
|
<td>
|
|
<a href="css-supports-016.htm">css-supports-016</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax and a passing condition must apply rules inside it
|
|
<ul class="assert">
|
|
<li>A negation of an @supports condition must pass if and only if the sub-condition fails. The sub-condition here is a supported property name with an unsupported value.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-017-6" class="invalid">
|
|
<td>
|
|
<a href="css-supports-017.htm">css-supports-017</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>An @supports rule with invalid syntax must not apply rules inside it
|
|
<ul class="assert">
|
|
<li>The sub-condition of a negation in an @supports condition must be in parentheses.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-018-6" class="">
|
|
<td>
|
|
<a href="css-supports-018.htm">css-supports-018</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax and a passing condition must apply rules inside it
|
|
<ul class="assert">
|
|
<li>The sub-condition of a negation in an @supports condition must be in parentheses.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-019-6" class="invalid">
|
|
<td>
|
|
<a href="css-supports-019.htm">css-supports-019</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>An @supports rule with invalid syntax must not apply rules inside it
|
|
<ul class="assert">
|
|
<li>A conjunction in an @supports condition must have both sub-conditions enclosed in parentheses.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-020-6" class="">
|
|
<td>
|
|
<a href="css-supports-020.htm">css-supports-020</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax but a failing condition must not apply rules inside it
|
|
<ul class="assert">
|
|
<li>An @supports condition that is a declaration with a supported property name with an unsupported value must fail.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-021-6" class="">
|
|
<td>
|
|
<a href="css-supports-021.htm">css-supports-021</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax but a failing condition must not apply rules inside it
|
|
<ul class="assert">
|
|
<li>A disjunction of two @supports conditions must cause the @supports condition to pass if one condition passes and the other fails due to being an unsupported property.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-022-6" class="">
|
|
<td>
|
|
<a href="css-supports-022.htm">css-supports-022</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with balanced invalid syntax within parentheses must evaluate to false
|
|
<ul class="assert">
|
|
<li>An @supports condition must successfully parse even if a declaration has an empty property value.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-023-6" class="">
|
|
<td>
|
|
<a href="css-supports-023.htm">css-supports-023</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with balanced invalid syntax within parentheses must evaluate to false
|
|
<ul class="assert">
|
|
<li>An @supports condition must successfully parse a parenthesized expression that has invalid syntax with balanced parentheses.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-024-6" class="">
|
|
<td>
|
|
<a href="css-supports-024.htm">css-supports-024</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax and a passing condition must apply rules inside it
|
|
<ul class="assert">
|
|
<li>A supported shorthand property declaration must be considered to pass.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-025-6" class="">
|
|
<td>
|
|
<a href="css-supports-025.htm">css-supports-025</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>A nested @supports rule with valid syntax and a passing condition must apply rules inside it
|
|
<ul class="assert">
|
|
<li>An inner @supports rule inside an outer @supports must apply its child rules only if both @supports conditions succeeded.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-026-6" class="">
|
|
<td>
|
|
<a href="css-supports-026.htm">css-supports-026</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>A nested @supports rule with valid syntax and a passing condition must apply rules inside it
|
|
<ul class="assert">
|
|
<li>An outer @supports rule with an inner @media rule must apply the rules inside the @media only if both the @supports and @media conditions pass.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-029-6" class="">
|
|
<td>
|
|
<a href="css-supports-029.htm">css-supports-029</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax and a passing condition must apply rules inside it
|
|
<ul class="assert">
|
|
<li>A disjunction in an @supports condition must have both sub-conditions enclosed in parentheses.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-030-6" class="">
|
|
<td>
|
|
<a href="css-supports-030.htm">css-supports-030</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with valid syntax and a passing condition must apply rules inside it
|
|
<ul class="assert">
|
|
<li>A disjunction in an @supports condition must have both sub-conditions enclosed in parentheses.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-031-6" class="">
|
|
<td>
|
|
<a href="css-supports-031.htm">css-supports-031</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with balanced invalid syntax within parentheses must evaluate to false
|
|
<ul class="assert">
|
|
<li>An @supports condition must successfully parse a parenthesized expression that has invalid syntax with balanced parentheses.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-032-6" class="">
|
|
<td>
|
|
<a href="css-supports-032.htm">css-supports-032</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with balanced invalid syntax must evaluate to false
|
|
<ul class="assert">
|
|
<li>An @supports condition must successfully parse and evaluate to false a parenthesized expression has invalid syntax.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-033-6" class="">
|
|
<td>
|
|
<a href="css-supports-033.htm">css-supports-033</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with balanced invalid syntax must evaluate to false
|
|
<ul class="assert">
|
|
<li>An @supports condition must successfully parse a parenthesized expression that has invalid syntax with balanced parentheses.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-034-6" class="">
|
|
<td>
|
|
<a href="css-supports-034.htm">css-supports-034</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with balanced invalid syntax must evaluate to false
|
|
<ul class="assert">
|
|
<li>An @supports condition must successfully parse a parenthesized expression that has invalid syntax with balanced parentheses.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-035-6" class="invalid">
|
|
<td>
|
|
<a href="css-supports-035.htm">css-supports-035</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>An @supports rule with unbalanced invalid syntax must fail to parse
|
|
<ul class="assert">
|
|
<li>An @supports condition with a parenthesized expression that has unbalanced parentheses must fail to parse.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-036-6" class="">
|
|
<td>
|
|
<a href="css-supports-036.htm">css-supports-036</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule with an unrecognized condition using functional notation must evaluate to false
|
|
<ul class="assert">
|
|
<li>An @supports condition with an unrecognized condition using functional notation must evaluate to false.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-037-6" class="invalid">
|
|
<td>
|
|
<a href="css-supports-037.htm">css-supports-037</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>An @supports rule with an unrecognized condition using functional notation with unbalanced parentheses must fail to parse
|
|
<ul class="assert">
|
|
<li>An @supports condition with an unrecognized condition using functional notation with unbalanced parentheses must fail to parse.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-038-6" class="">
|
|
<td>
|
|
<a href="css-supports-038.htm">css-supports-038</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>In an @supports rule "not(" must be parsed as a FUNCTION
|
|
<ul class="assert">
|
|
<li>An @supports condition with 'not(' must parse be parsed as a FUNCTION token.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-039-6" class="invalid">
|
|
<td>
|
|
<a href="css-supports-039.htm">css-supports-039</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td><abbr class="invalid" title="Tests invalid CSS">Invalid</abbr></td>
|
|
<td>In an @supports rule "or(" must be parsed as a FUNCTION
|
|
<ul class="assert">
|
|
<li>An @supports condition with 'or(' must parse be parsed as a FUNCTION token.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-040-6" class="">
|
|
<td>
|
|
<a href="css-supports-040.htm">css-supports-040</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule condition with empty parentheses should evaluates to false
|
|
<ul class="assert">
|
|
<li>An @supports rule condition that consists just of a pair of parentheses should evaluate to false.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-041-6" class="">
|
|
<td>
|
|
<a href="css-supports-041.htm">css-supports-041</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule condition with empty parentheses should evaluates to false
|
|
<ul class="assert">
|
|
<li>An @supports rule condition that consists just of a pair of parentheses should evaluate to false.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-042-6" class="">
|
|
<td>
|
|
<a href="css-supports-042.htm">css-supports-042</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule condition with an unexpected token before the closing paren of a supports_condition_in_parens should parse as a general_enclosed
|
|
<ul class="assert">
|
|
<li>An @supports rule condition that has an unexpected token before the closing paren of a supports_condition_in_parens should parse as a general_enclosed and evaluate to false rather than fail to parse.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-043-6" class="">
|
|
<td>
|
|
<a href="css-supports-043.htm">css-supports-043</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule condition with a bogus priority should evaluate to false
|
|
<ul class="assert">
|
|
<li>An @supports rule condition with a bogus priority should evaluate to false</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-044-6" class="">
|
|
<td>
|
|
<a href="css-supports-044.htm">css-supports-044</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule condition with tokens after the priority should evaluate to false
|
|
<ul class="assert">
|
|
<li>An @supports rule condition with tokens after the priority should evaluate to false</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-045-6" class="">
|
|
<td>
|
|
<a href="css-supports-045.htm">css-supports-045</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>An @supports rule condition with two priorities should evaluate to false
|
|
<ul class="assert">
|
|
<li>An @supports rule condition with two priorities should evaluate to false</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr id="css-supports-046-6" class="">
|
|
<td>
|
|
<a href="css-supports-046.htm">css-supports-046</a></td>
|
|
<td><a href="support/pass.htm">=</a> </td>
|
|
<td></td>
|
|
<td>A nested @supports rule with valid syntax and a passing condition must apply rules inside it
|
|
<ul class="assert">
|
|
<li>An outer @media rule with an inner @supports rule must apply the rules inside the @supports only if both the @supports and @media conditions pass.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
<tbody id="s6.#atsupports-rule">
|
|
<!-- 0 tests -->
|
|
</tbody>
|
|
<tbody id="s6.#general_enclosed">
|
|
<!-- 0 tests -->
|
|
</tbody>
|
|
<tbody id="s6.#or">
|
|
<!-- 0 tests -->
|
|
</tbody>
|
|
<tbody id="s6.#supports_condition">
|
|
<!-- 0 tests -->
|
|
</tbody>
|
|
<tbody id="s6.#supports_condition_in_parens">
|
|
<!-- 0 tests -->
|
|
</tbody>
|
|
<tbody id="s6.#supports_conjunction">
|
|
<!-- 0 tests -->
|
|
</tbody>
|
|
<tbody id="s6.#supports_declaration_condition">
|
|
<!-- 0 tests -->
|
|
</tbody>
|
|
<tbody id="s6.#supports_disjunction">
|
|
<!-- 0 tests -->
|
|
</tbody>
|
|
<tbody id="s6.#supports_negation">
|
|
<!-- 0 tests -->
|
|
</tbody>
|
|
<tbody id="s6.#supports_rule">
|
|
<!-- 0 tests -->
|
|
</tbody>
|
|
<tbody id="s6.#supports_sym">
|
|
<!-- 0 tests -->
|
|
</tbody>
|
|
<tbody id="s6.1">
|
|
<tr><th colspan="4" scope="rowgroup">
|
|
<a href="#s6.1">+</a>
|
|
<a href="https://www.w3.org/TR/css3-conditional/#support-definition">6.1 Definition of support</a></th></tr>
|
|
<!-- 0 tests -->
|
|
</tbody>
|
|
<tbody id="s6.1.#dfn-support">
|
|
<!-- 0 tests -->
|
|
</tbody>
|
|
</table>
|
|
|
|
</body>
|
|
</html> |