summaryrefslogtreecommitdiffstats
path: root/layout/reftests/w3c-css/submitted/conditional3
diff options
context:
space:
mode:
Diffstat (limited to 'layout/reftests/w3c-css/submitted/conditional3')
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-001.xht18
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-002.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-003.xht18
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-004.xht18
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-005.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-006.xht18
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-007.xht18
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-008.xht18
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-009.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-010.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-011.xht18
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-012.xht18
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-013.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-014.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-015.xht18
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-016.xht18
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-017.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-018.xht18
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-019.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-020.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-021.xht18
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-022.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-023.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-024.xht18
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-025.xht20
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-026.xht21
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-027.xht21
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-028.xht20
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-029.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-030.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-031.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-032.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-033.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-034.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-035.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-036.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-037.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-038.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-039.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-040.xht18
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-041.xht18
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-042.xht18
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-043.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-044.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-045.xht19
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/css-supports-046.xht22
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/reftest-stylo.list47
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/reftest.list46
-rw-r--r--layout/reftests/w3c-css/submitted/conditional3/support/pass.xht12
49 files changed, 972 insertions, 0 deletions
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-001.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-001.xht
new file mode 100644
index 000000000..3f8782580
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-001.xht
@@ -0,0 +1,18 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="An @supports rule condition with a single, valid property declaration for a supported property must cause the rules inside the @supports rule to apply."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports (color: green) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-002.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-002.xht
new file mode 100644
index 000000000..48326acb7
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-002.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with invalid syntax must not apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="invalid" />
+ <meta name="assert" content="Property declarations in an @supports rule condition must be surrounded by parentheses."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: green }
+ @supports color: green {
+ html { background-color: red }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-003.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-003.xht
new file mode 100644
index 000000000..4e01f5369
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-003.xht
@@ -0,0 +1,18 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="Any subexpression in an @supports rule condition can be surrounded by an extra pair of parentheses."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports ((color: green)) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-004.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-004.xht
new file mode 100644
index 000000000..7c4ad818b
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-004.xht
@@ -0,0 +1,18 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="Property declarations in an @supports rule can have !important specified."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports (color: green !important) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-005.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-005.xht
new file mode 100644
index 000000000..c184d70df
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-005.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax but a failing condition must not apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="A supported property with an unsupported value must cause the @supports condition to fail."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: green }
+ @supports (color: rainbow) {
+ html { background-color: red }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-006.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-006.xht
new file mode 100644
index 000000000..faf8f68f6
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-006.xht
@@ -0,0 +1,18 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="A disjunction of two @supports conditions must cause the @supports condition to pass if the left condition passes."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports (color: rainbow) or (color: green) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-007.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-007.xht
new file mode 100644
index 000000000..716b15232
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-007.xht
@@ -0,0 +1,18 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="A disjunction of two @supports conditions must cause the @supports condition to pass if the right condition passes."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports (color: green) or (color: rainbow) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-008.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-008.xht
new file mode 100644
index 000000000..80596a9d4
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-008.xht
@@ -0,0 +1,18 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="A conjunction of two @supports conditions must cause the @supports condition to pass if both sub-conditions pass."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports (color: green) and (color: blue) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-009.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-009.xht
new file mode 100644
index 000000000..31fffbe71
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-009.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax but a failing condition must not apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="A conjunction of two @supports conditions must cause the @supports condition to fail if the left sub-condition passes."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: green }
+ @supports (color: rainbow) and (color: blue) {
+ html { background-color: red }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-010.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-010.xht
new file mode 100644
index 000000000..17b8810f1
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-010.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax but a failing condition must not apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="A conjunction of two @supports conditions must cause the @supports condition to fail if the right sub-condition passes."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: green }
+ @supports (color: blue) and (color: rainbow) {
+ html { background-color: red }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-011.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-011.xht
new file mode 100644
index 000000000..d70cc0054
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-011.xht
@@ -0,0 +1,18 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="A disjunction of three @supports conditions must cause the @supports condition to pass if at least one of the sub-conditions passes."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports (color: rainbow) or (color: iridescent) or (color: green) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-012.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-012.xht
new file mode 100644
index 000000000..c9ff483a5
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-012.xht
@@ -0,0 +1,18 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="A conjunction of three @supports conditions must cause the @supports condition to pass if all three sub-conditions pass."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports (color: red) and (color: green) and (color: blue) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-013.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-013.xht
new file mode 100644
index 000000000..2c0b62e61
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-013.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with invalid syntax must not apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="invalid" />
+ <meta name="assert" content="A disjunction and a conjunction of @supports conditions must not be combined unless one of the two is surrounded by parentheses."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: green }
+ @supports (color: green) and (color: green) or (color: green) {
+ html { background-color: red }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-014.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-014.xht
new file mode 100644
index 000000000..90c3bb4e3
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-014.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with invalid syntax must not apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="invalid" />
+ <meta name="assert" content="A disjunction and a conjunction of @supports conditions must not be combined unless one of the two is surrounded by parentheses."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: green }
+ @supports (color: green) or (color: green) and (color: green) {
+ html { background-color: red }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-015.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-015.xht
new file mode 100644
index 000000000..66c7edbe5
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-015.xht
@@ -0,0 +1,18 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="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."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports(color:green){
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-016.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-016.xht
new file mode 100644
index 000000000..bad605313
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-016.xht
@@ -0,0 +1,18 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="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."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports not (color: rainbow) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-017.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-017.xht
new file mode 100644
index 000000000..92b8d04e7
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-017.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with invalid syntax must not apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="invalid" />
+ <meta name="assert" content="The sub-condition of a negation in an @supports condition must be in parentheses."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: green }
+ @supports not not (color: green) {
+ html { background-color: red }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-018.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-018.xht
new file mode 100644
index 000000000..2019a2a7c
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-018.xht
@@ -0,0 +1,18 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="The sub-condition of a negation in an @supports condition must be in parentheses."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports not (not (color: green)) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-019.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-019.xht
new file mode 100644
index 000000000..109c8528b
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-019.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with invalid syntax must not apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="invalid" />
+ <meta name="assert" content="A conjunction in an @supports condition must have both sub-conditions enclosed in parentheses."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: green }
+ @supports not (color: rainbow) and not (color: iridescent) {
+ html { background-color: red }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-020.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-020.xht
new file mode 100644
index 000000000..e6d5a1111
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-020.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax but a failing condition must not apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="An @supports condition that is a declaration with a supported property name with an unsupported value must fail."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: green }
+ @supports (unknown: green) {
+ html { background-color: red }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-021.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-021.xht
new file mode 100644
index 000000000..df98d1206
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-021.xht
@@ -0,0 +1,18 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax but a failing condition must not apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="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."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports (unknown: green) or (color: green) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-022.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-022.xht
new file mode 100644
index 000000000..b2fb5ed27
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-022.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with balanced invalid syntax within parentheses must evaluate to false</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="An @supports condition must successfully parse even if a declaration has an empty property value."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: red }
+ @supports (unknown:) or (color: green) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-023.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-023.xht
new file mode 100644
index 000000000..e01f01842
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-023.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with balanced invalid syntax within parentheses must evaluate to false</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="An @supports condition must successfully parse a parenthesized expression that has invalid syntax with balanced parentheses."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: red }
+ @supports (unknown) or (color: green) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-024.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-024.xht
new file mode 100644
index 000000000..de2baf395
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-024.xht
@@ -0,0 +1,18 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="A supported shorthand property declaration must be considered to pass."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports (font: 16px serif) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-025.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-025.xht
new file mode 100644
index 000000000..7a766146e
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-025.xht
@@ -0,0 +1,20 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: A nested @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="An inner @supports rule inside an outer @supports must apply its child rules only if both @supports conditions succeeded."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports (color: green) {
+ @supports (color: blue) {
+ html { background-color: green }
+ }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-026.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-026.xht
new file mode 100644
index 000000000..920143e79
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-026.xht
@@ -0,0 +1,21 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: A nested @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-media" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="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."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports (color: green) {
+ @media all {
+ html { background-color: green }
+ }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-027.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-027.xht
new file mode 100644
index 000000000..b3d8349e9
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-027.xht
@@ -0,0 +1,21 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: A nested @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-document" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="An outer @document rule with an inner @supports rule must apply the rules inside the @supports only if both the @supports and @document conditions pass."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @-moz-document url-prefix("") {
+ @supports (color: green) {
+ html { background-color: green }
+ }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-028.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-028.xht
new file mode 100644
index 000000000..dd506dfcd
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-028.xht
@@ -0,0 +1,20 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: A nested @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="An inner @document rule with an outer @supports rule must apply the rules inside the @document only if both the @supports and @document conditions pass."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports (color: green) {
+ @-moz-document url-prefix("") {
+ html { background-color: green }
+ }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-029.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-029.xht
new file mode 100644
index 000000000..0d1bb589a
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-029.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="A disjunction in an @supports condition must have both sub-conditions enclosed in parentheses." />
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: green }
+ @supports not (color: rainbow) or (color: green) {
+ html { background-color: red }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-030.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-030.xht
new file mode 100644
index 000000000..6c087b8b0
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-030.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="A disjunction in an @supports condition must have both sub-conditions enclosed in parentheses." />
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: green }
+ @supports (not (color: rainbow) or (color: green)) {
+ html { background-color: red }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-031.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-031.xht
new file mode 100644
index 000000000..9ff7c14c4
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-031.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with balanced invalid syntax within parentheses must evaluate to false</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="An @supports condition must successfully parse a parenthesized expression that has invalid syntax with balanced parentheses."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: red }
+ @supports (color:) or (color: green) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-032.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-032.xht
new file mode 100644
index 000000000..baae56576
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-032.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with balanced invalid syntax must evaluate to false</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="An @supports condition must successfully parse and evaluate to false a parenthesized expression has invalid syntax."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: red }
+ @supports not (@page) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-033.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-033.xht
new file mode 100644
index 000000000..c6c0c39f3
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-033.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with balanced invalid syntax must evaluate to false</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="An @supports condition must successfully parse a parenthesized expression that has invalid syntax with balanced parentheses."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: red }
+ @supports not ({ something @with [ balanced ] parens }) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-034.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-034.xht
new file mode 100644
index 000000000..c6c0c39f3
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-034.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with balanced invalid syntax must evaluate to false</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="An @supports condition must successfully parse a parenthesized expression that has invalid syntax with balanced parentheses."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: red }
+ @supports not ({ something @with [ balanced ] parens }) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-035.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-035.xht
new file mode 100644
index 000000000..471a71513
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-035.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with unbalanced invalid syntax must fail to parse</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="invalid" />
+ <meta name="assert" content="An @supports condition with a parenthesized expression that has unbalanced parentheses must fail to parse."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: green }
+ @supports not ({ something @with (unbalanced parens }) {
+ html { background-color: red }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-036.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-036.xht
new file mode 100644
index 000000000..c18ba6629
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-036.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with an unrecognized condition using functional notation must evaluate to false</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="An @supports condition with an unrecognized condition using functional notation must evaluate to false."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: red }
+ @supports an-extension(of some kind) or (color: green) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-037.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-037.xht
new file mode 100644
index 000000000..137be1b59
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-037.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule with an unrecognized condition using functional notation with unbalanced parentheses must fail to parse</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="invalid" />
+ <meta name="assert" content="An @supports condition with an unrecognized condition using functional notation with unbalanced parentheses must fail to parse."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: green }
+ @supports (color: green) or an-extension(that is [unbalanced) {
+ html { background-color: red }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-038.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-038.xht
new file mode 100644
index 000000000..f6974a9b0
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-038.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: In an @supports rule "not(" must be parsed as a FUNCTION</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="An @supports condition with 'not(' must parse be parsed as a FUNCTION token."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: green }
+ @supports not(unknown: unknown) {
+ html { background-color: red }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-039.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-039.xht
new file mode 100644
index 000000000..1032263b1
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-039.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: In an @supports rule "or(" must be parsed as a FUNCTION</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="invalid" />
+ <meta name="assert" content="An @supports condition with 'or(' must parse be parsed as a FUNCTION token."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: green }
+ @supports (color: green) or(color: blue) {
+ html { background-color: red }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-040.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-040.xht
new file mode 100644
index 000000000..cda404996
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-040.xht
@@ -0,0 +1,18 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule condition with empty parentheses should evaluates to false</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="An @supports rule condition that consists just of a pair of parentheses should evaluate to false."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports not () {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-041.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-041.xht
new file mode 100644
index 000000000..c49c66abd
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-041.xht
@@ -0,0 +1,18 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule condition with empty parentheses should evaluates to false</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="An @supports rule condition that consists just of a pair of parentheses should evaluate to false."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports () or (color: green) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-042.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-042.xht
new file mode 100644
index 000000000..2b0f104d6
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-042.xht
@@ -0,0 +1,18 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule condition with an unexpected token before the closing paren of a supports_condition_in_parens should parse as a general_enclosed</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="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."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @supports ((color: green) bad) or (color: green) {
+ html { background-color: green }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-043.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-043.xht
new file mode 100644
index 000000000..3ec6f8ec2
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-043.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule condition with a bogus priority should evaluate to false</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="An @supports rule condition with a bogus priority should evaluate to false"/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: red; }
+ @supports not (color: green !bogus) {
+ html { background-color: green; }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-044.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-044.xht
new file mode 100644
index 000000000..f79e25d18
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-044.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule condition with tokens after the priority should evaluate to false</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="An @supports rule condition with tokens after the priority should evaluate to false"/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: red; }
+ @supports not (color: green !important green) {
+ html { background-color: green; }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-045.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-045.xht
new file mode 100644
index 000000000..e7bb2d46c
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-045.xht
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: An @supports rule condition with two priorities should evaluate to false</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="An @supports rule condition with two priorities should evaluate to false"/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ html { background-color: red; }
+ @supports not (color: green !important !important) {
+ html { background-color: green; }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/css-supports-046.xht b/layout/reftests/w3c-css/submitted/conditional3/css-supports-046.xht
new file mode 100644
index 000000000..3cd590059
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/css-supports-046.xht
@@ -0,0 +1,22 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: A nested @supports rule with valid syntax and a passing condition must apply rules inside it</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au" />
+ <link rel="author" title="L. David Baron" href="mailto:dbaron@dbaron.org" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" />
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-media" />
+ <meta name="flags" content="" />
+ <meta name="assert" content="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."/>
+ <link rel="match" href="support/pass.xht" />
+ <style type="text/css"><![CDATA[
+ @media all {
+ @supports (color: green) {
+ html { background-color: green }
+ }
+ }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/submitted/conditional3/reftest-stylo.list b/layout/reftests/w3c-css/submitted/conditional3/reftest-stylo.list
new file mode 100644
index 000000000..b357a920f
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/reftest-stylo.list
@@ -0,0 +1,47 @@
+# DO NOT EDIT! This is a auto-generated temporary list for Stylo testing
+== css-supports-001.xht css-supports-001.xht
+== css-supports-002.xht css-supports-002.xht
+== css-supports-003.xht css-supports-003.xht
+== css-supports-004.xht css-supports-004.xht
+== css-supports-005.xht css-supports-005.xht
+== css-supports-006.xht css-supports-006.xht
+== css-supports-007.xht css-supports-007.xht
+== css-supports-008.xht css-supports-008.xht
+== css-supports-009.xht css-supports-009.xht
+== css-supports-010.xht css-supports-010.xht
+== css-supports-011.xht css-supports-011.xht
+== css-supports-012.xht css-supports-012.xht
+== css-supports-013.xht css-supports-013.xht
+== css-supports-014.xht css-supports-014.xht
+== css-supports-015.xht css-supports-015.xht
+== css-supports-016.xht css-supports-016.xht
+== css-supports-017.xht css-supports-017.xht
+== css-supports-018.xht css-supports-018.xht
+== css-supports-019.xht css-supports-019.xht
+== css-supports-020.xht css-supports-020.xht
+== css-supports-021.xht css-supports-021.xht
+== css-supports-022.xht css-supports-022.xht
+== css-supports-023.xht css-supports-023.xht
+== css-supports-024.xht css-supports-024.xht
+== css-supports-025.xht css-supports-025.xht
+== css-supports-026.xht css-supports-026.xht
+== css-supports-027.xht css-supports-027.xht
+== css-supports-028.xht css-supports-028.xht
+== css-supports-029.xht css-supports-029.xht
+== css-supports-030.xht css-supports-030.xht
+== css-supports-031.xht css-supports-031.xht
+== css-supports-032.xht css-supports-032.xht
+== css-supports-033.xht css-supports-033.xht
+== css-supports-034.xht css-supports-034.xht
+== css-supports-035.xht css-supports-035.xht
+== css-supports-036.xht css-supports-036.xht
+== css-supports-037.xht css-supports-037.xht
+== css-supports-038.xht css-supports-038.xht
+== css-supports-039.xht css-supports-039.xht
+== css-supports-040.xht css-supports-040.xht
+== css-supports-041.xht css-supports-041.xht
+== css-supports-042.xht css-supports-042.xht
+skip == css-supports-043.xht css-supports-043.xht
+== css-supports-044.xht css-supports-044.xht
+== css-supports-045.xht css-supports-045.xht
+== css-supports-046.xht css-supports-046.xht
diff --git a/layout/reftests/w3c-css/submitted/conditional3/reftest.list b/layout/reftests/w3c-css/submitted/conditional3/reftest.list
new file mode 100644
index 000000000..f10bede79
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/reftest.list
@@ -0,0 +1,46 @@
+== css-supports-001.xht support/pass.xht
+== css-supports-002.xht support/pass.xht
+== css-supports-003.xht support/pass.xht
+== css-supports-004.xht support/pass.xht
+== css-supports-005.xht support/pass.xht
+== css-supports-006.xht support/pass.xht
+== css-supports-007.xht support/pass.xht
+== css-supports-008.xht support/pass.xht
+== css-supports-009.xht support/pass.xht
+== css-supports-010.xht support/pass.xht
+== css-supports-011.xht support/pass.xht
+== css-supports-012.xht support/pass.xht
+== css-supports-013.xht support/pass.xht
+== css-supports-014.xht support/pass.xht
+== css-supports-015.xht support/pass.xht
+== css-supports-016.xht support/pass.xht
+== css-supports-017.xht support/pass.xht
+== css-supports-018.xht support/pass.xht
+== css-supports-019.xht support/pass.xht
+== css-supports-020.xht support/pass.xht
+== css-supports-021.xht support/pass.xht
+== css-supports-022.xht support/pass.xht
+== css-supports-023.xht support/pass.xht
+== css-supports-024.xht support/pass.xht
+== css-supports-025.xht support/pass.xht
+== css-supports-026.xht support/pass.xht
+== css-supports-027.xht support/pass.xht
+== css-supports-028.xht support/pass.xht
+== css-supports-029.xht support/pass.xht
+== css-supports-030.xht support/pass.xht
+== css-supports-031.xht support/pass.xht
+== css-supports-032.xht support/pass.xht
+== css-supports-033.xht support/pass.xht
+== css-supports-034.xht support/pass.xht
+== css-supports-035.xht support/pass.xht
+== css-supports-036.xht support/pass.xht
+== css-supports-037.xht support/pass.xht
+== css-supports-038.xht support/pass.xht
+== css-supports-039.xht support/pass.xht
+== css-supports-040.xht support/pass.xht
+== css-supports-041.xht support/pass.xht
+== css-supports-042.xht support/pass.xht
+== css-supports-043.xht support/pass.xht
+== css-supports-044.xht support/pass.xht
+== css-supports-045.xht support/pass.xht
+== css-supports-046.xht support/pass.xht
diff --git a/layout/reftests/w3c-css/submitted/conditional3/support/pass.xht b/layout/reftests/w3c-css/submitted/conditional3/support/pass.xht
new file mode 100644
index 000000000..24dc3107e
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/conditional3/support/pass.xht
@@ -0,0 +1,12 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Reftest Reference</title>
+ <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au"/>
+ <style type="text/css"><![CDATA[
+ html { background-color: green }
+ ]]></style>
+ </head>
+ <body>
+ </body>
+</html>