summaryrefslogtreecommitdiff
path: root/layout/reftests/w3c-css/received/css-conditional-3
diff options
context:
space:
mode:
Diffstat (limited to 'layout/reftests/w3c-css/received/css-conditional-3')
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-media-whitespace-optional-001.html17
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-media-whitespace-optional-002.html17
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-001-ref.html19
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-001.html25
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-002.html27
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-003.html27
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-004.html28
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-005.html28
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-006.html25
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-007.html25
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-008.html25
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-009.html25
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-010.html25
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-011.html26
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-012.html25
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-013.html25
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-014.html28
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-015.html25
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-016.html26
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-017.html25
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-018.html25
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-019.html26
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-020.html26
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-021.html24
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-022.html26
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-023.html27
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-024.html24
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-025.html26
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-026.html26
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-027-ref.html19
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-027.html23
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-028.html24
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-029.html23
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-030.html25
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-031.html24
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-032.html24
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-033.html24
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-034.html42
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-035.html42
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-036.html45
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-037.html43
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-038.html42
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/at-supports-039.html42
-rw-r--r--layout/reftests/w3c-css/received/css-conditional-3/reference/background-lime.html14
44 files changed, 1179 insertions, 0 deletions
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-media-whitespace-optional-001.html b/layout/reftests/w3c-css/received/css-conditional-3/at-media-whitespace-optional-001.html
new file mode 100644
index 0000000000..49fd608dd7
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-media-whitespace-optional-001.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <title>CSS Test: DESCRIPTION OF TEST</title>
+ <link rel="author" title="L. David Baron" href="https://dbaron.org/">
+ <link rel="author" title="Mozilla Corporation" href="http://mozilla.com/">
+ <link rel="match" href="reference/background-lime.html">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-media">
+ <meta name="assert" content="Whitespace after the MEDIA_SYM token is optional (S*).">
+ <style>
+ @media{ body { background: lime; color: black; } }
+ </style>
+ </head>
+ <body>
+ This page should have a light green background.
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-media-whitespace-optional-002.html b/layout/reftests/w3c-css/received/css-conditional-3/at-media-whitespace-optional-002.html
new file mode 100644
index 0000000000..7ae37f5bf3
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-media-whitespace-optional-002.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <title>CSS Test: DESCRIPTION OF TEST</title>
+ <link rel="author" title="L. David Baron" href="https://dbaron.org/">
+ <link rel="author" title="Mozilla Corporation" href="http://mozilla.com/">
+ <link rel="match" href="reference/background-lime.html">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-media">
+ <meta name="assert" content="Whitespace after the MEDIA_SYM token is optional (S*).">
+ <style>
+ @media(min-width:0px){ body { background: lime; color: black; } }
+ </style>
+ </head>
+ <body>
+ This page should have a light green background.
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-001-ref.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-001-ref.html
new file mode 100644
index 0000000000..a8157aa752
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-001-ref.html
@@ -0,0 +1,19 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Reftest Reference</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <style>
+ div {
+ background-color:green;
+ height:100px;
+ width:100px;
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-001.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-001.html
new file mode 100644
index 0000000000..7e6b21f6d2
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-001.html
@@ -0,0 +1,25 @@
+<!doctype html>
+<head>
+ <title>CSS Test (Conditional Rules): Support for simple passing conditions in @supports</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports (margin: 0) {
+ div { background-color:green; }
+ }
+ </style>
+</head>
+<body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div>
+ </div>
+</body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-002.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-002.html
new file mode 100644
index 0000000000..d4b59ff36f
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-002.html
@@ -0,0 +1,27 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Support for @supports within @media</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @media all {
+ @supports (margin: 0) {
+ div { background-color:green; }
+ }
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-003.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-003.html
new file mode 100644
index 0000000000..c138bbc302
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-003.html
@@ -0,0 +1,27 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Support for @media within @supports</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports (margin: 0) {
+ @media all{
+ div { background-color:green; }
+ }
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-004.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-004.html
new file mode 100644
index 0000000000..6b9cf6f6b9
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-004.html
@@ -0,0 +1,28 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): @supports within non-matching @media should not apply</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports (margin:0) { div { background-color:green; } }
+ @media not all {
+ @supports (margin: 0) {
+ div { background-color:red; }
+ }
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-005.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-005.html
new file mode 100644
index 0000000000..67329e365f
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-005.html
@@ -0,0 +1,28 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): non-matching @media within @supports should not apply</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports (margin:0) { div { background-color:green; } }
+ @supports (margin: 0) {
+ @media not all {
+ div { background-color:red; }
+ }
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-006.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-006.html
new file mode 100644
index 0000000000..f5c6461069
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-006.html
@@ -0,0 +1,25 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Nested parens around conditions in @supports should work</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports ((margin: 0)) {
+ div { background-color:green; }
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-007.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-007.html
new file mode 100644
index 0000000000..a8184274fb
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-007.html
@@ -0,0 +1,25 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Conjunctions of passing simple conditions in @supports should pass</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports ((margin: 0) and (display:inline-block !important)) {
+ div { background-color:green; }
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-008.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-008.html
new file mode 100644
index 0000000000..f53b40c822
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-008.html
@@ -0,0 +1,25 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Disjunctions with at least a passing simple condition in @supports should pass</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports ((margin: 0) or (foo: 15em)) {
+ div { background-color:green; }
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-009.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-009.html
new file mode 100644
index 0000000000..ffe96f61a0
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-009.html
@@ -0,0 +1,25 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Negations of failing simple conditions in @supports should pass</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports (not (yadayada: x, calc( 2/3 ))) {
+ div { background-color:green; }
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-010.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-010.html
new file mode 100644
index 0000000000..d3716718cb
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-010.html
@@ -0,0 +1,25 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Combinations of conjuctions, disjunctions, and negations of simple conditions in @supports should work</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports ((yada: 2kg !trivial) or ((not (foo:bar)) and (((visibility:hidden))))) {
+ div { background-color:green; }
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-011.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-011.html
new file mode 100644
index 0000000000..02e744e4b8
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-011.html
@@ -0,0 +1,26 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Conditions not enclosed in parens in @supports should not work</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports (margin:0) { div { background-color:green; } }
+ @supports margin: 0 {
+ div { background-color:red; }
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-012.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-012.html
new file mode 100644
index 0000000000..8a30ead2fd
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-012.html
@@ -0,0 +1,25 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Conjunctions with more than two terms in @supports should work</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports ((margin: 0) and (background: blue) and (padding:inherit)) {
+ div { background-color:green; }
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-013.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-013.html
new file mode 100644
index 0000000000..619da84115
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-013.html
@@ -0,0 +1,25 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Disjunction with more than two terms in @supports should work</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports ((yoyo: yaya) or (margin: 0) or (answer: 42)) {
+ div { background-color:green; }
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-014.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-014.html
new file mode 100644
index 0000000000..c26d8057d4
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-014.html
@@ -0,0 +1,28 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Negations in @supports should not work if "not" isn't follow by a space</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports (width: 0) {
+ div { background-color:green; }
+ }
+ @supports not(foo: baz) {
+ div { background-color:red; }
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-015.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-015.html
new file mode 100644
index 0000000000..fe3d5e561e
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-015.html
@@ -0,0 +1,25 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Bizarre syntax that still conforms to the core grammar should succesfully parse in @supports</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports (not (foo: baz !unrelated $ ,/[&])) {
+ div { background-color:green; }
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-016.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-016.html
new file mode 100644
index 0000000000..f8feaa4700
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-016.html
@@ -0,0 +1,26 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): In @supports, parens are required to mix conjunctions with disjunctions</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <style>
+ div{
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports (margin:0) { div { background-color:green; } }
+ @supports ((margin: 0) and (display: inline) or (width:1em)) {
+ div { background-color:red; }
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-017.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-017.html
new file mode 100644
index 0000000000..81cbe45536
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-017.html
@@ -0,0 +1,25 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): In @supports, functions can be parsed successfully</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="">
+ <style>
+ div {
+ background:red;
+ height:100px;
+ width:100px;
+ }
+ @supports (background: url("http://www.example.com/foo.jpg")) {
+ div { background-color:green; }
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-018.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-018.html
new file mode 100644
index 0000000000..88bcedec9b
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-018.html
@@ -0,0 +1,25 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): In @supports conditions, the arguments of a function can begin with spaces</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="">
+ <style>
+ div {
+ background:red;
+ height:100px;
+ width:100px;
+ }
+ @supports (not (width:compute( 2px + 2px ))) {
+ div { background-color:green; }
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-019.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-019.html
new file mode 100644
index 0000000000..7e6bf448d7
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-019.html
@@ -0,0 +1,26 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Incorrect syntax in @supports recovers properly</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports (margin: ) {
+ div { background-color:red !important; }
+ }
+ @supports (margin:0) { div { background-color:green; } }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-020.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-020.html
new file mode 100644
index 0000000000..eed31e5ead
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-020.html
@@ -0,0 +1,26 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Incorrect syntax in @supports recovers properly</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports (margin: 2px) ) {
+ div { background-color:red !important; }
+ }
+ @supports (margin:0) { div { background-color:green; } }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-021.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-021.html
new file mode 100644
index 0000000000..a3fdc83ccb
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-021.html
@@ -0,0 +1,24 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Incorrect syntax in @supports recovers properly</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports (margin:0 );
+ @supports (margin:0) { div { background-color:green; } }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-022.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-022.html
new file mode 100644
index 0000000000..ec41734b42
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-022.html
@@ -0,0 +1,26 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Incorrect syntax in @supports recovers properly</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports [margin: 0] {
+ div { background-color:red !important; }
+ }
+ @supports (margin:0) { div { background-color:green; } }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-023.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-023.html
new file mode 100644
index 0000000000..e3df4f6f70
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-023.html
@@ -0,0 +1,27 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Incorrect syntax in nested @supports recovers properly</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @media all {
+ @supports (width: 0)) {}
+ @supports (margin:0) { div { background-color:green !important; } }
+ }
+ div { background-color:red; }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-024.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-024.html
new file mode 100644
index 0000000000..94827ff53b
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-024.html
@@ -0,0 +1,24 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Incorrect syntax in @supports recovers properly</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports;
+ @supports (margin:0) { div { background-color:green; } }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-025.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-025.html
new file mode 100644
index 0000000000..e7079ee5cb
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-025.html
@@ -0,0 +1,26 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Incorrect syntax in @supports recovers properly</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports ((margin:0) and [padding:0]) {
+ div { background-color:red !important; }
+ }
+ @supports (margin:0) { div { background-color:green; } }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-026.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-026.html
new file mode 100644
index 0000000000..842a0ad663
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-026.html
@@ -0,0 +1,26 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Incorrect syntax in @supports recovers properly</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports (margin: 0]) {
+ div { background-color:red !important; }
+ }
+ @supports (margin:0) { div { background-color:green; } }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-027-ref.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-027-ref.html
new file mode 100644
index 0000000000..9d1fbaaf47
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-027-ref.html
@@ -0,0 +1,19 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Reftest Reference</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <style>
+ div {
+ background-color:green;
+ height:100px;
+ width:100px;
+ }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-027.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-027.html
new file mode 100644
index 0000000000..11a0ed1f0f
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-027.html
@@ -0,0 +1,23 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Incorrect syntax in @supports recovers properly</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-027-ref.html">
+ <meta name="flags" content="invalid">
+ <style>
+ @supports (margin:0) { div { background-color:green; } }
+ div {
+ height:100px;
+ width:100px;
+ }
+ @supports (margin: 0)
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-028.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-028.html
new file mode 100644
index 0000000000..3abc95ebd0
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-028.html
@@ -0,0 +1,24 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Incorrect syntax in @supports recovers properly</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports (margin: 0)) {}
+ @supports (margin:0) { div { background-color:green; } }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-029.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-029.html
new file mode 100644
index 0000000000..b78a711fe9
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-029.html
@@ -0,0 +1,23 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Incorrect syntax in @supports recovers properly</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-027-ref.html">
+ <meta name="flags" content="invalid">
+ <style>
+ @supports (margin:0) { div { background-color:green; } }
+ div {
+ height:100px;
+ width:100px;
+ }
+ @supports (margin: 0) !
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-030.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-030.html
new file mode 100644
index 0000000000..a2b66cfa63
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-030.html
@@ -0,0 +1,25 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Incorrect syntax in @supports recovers properly</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports (margin:0) { div { background-color:green; } }
+ @supports ((margin: 0) and ;
+ div { background-color:red; }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-031.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-031.html
new file mode 100644
index 0000000000..2b4621d494
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-031.html
@@ -0,0 +1,24 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Incorrect syntax in @supports recovers properly</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports (margin: 0)) ;
+ @supports (margin:0) { div { background-color:green; } }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-032.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-032.html
new file mode 100644
index 0000000000..d53deb1757
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-032.html
@@ -0,0 +1,24 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Incorrect syntax in @supports recovers properly</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports {}
+ @supports (margin:0) { div { background-color:green; } }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-033.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-033.html
new file mode 100644
index 0000000000..d2c682fb8d
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-033.html
@@ -0,0 +1,24 @@
+<!doctype html>
+<html>
+ <head>
+ <title>CSS Test (Conditional Rules): Incorrect syntax in @supports recovers properly</title>
+ <link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+ <link rel="author" href="http://opera.com" title="Opera Software ASA">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <style>
+ div {
+ background-color:red;
+ height:100px;
+ width:100px;
+ }
+ @supports ;
+ @supports (margin:0) { div { background-color:green; } }
+ </style>
+ </head>
+ <body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-034.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-034.html
new file mode 100644
index 0000000000..d9b9612eec
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-034.html
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>CSS Test (Conditional Rules): Incorrect syntax of supports condition</title>
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" title="6. Feature queries: the '@supports' rule">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <meta name="assert" content="Each individual single supports condition must be enclosed by one opening parenthesis '(' and one closing parenthesis ')'.">
+
+ <!--
+
+ supports_condition_in_parens
+ : ( '(' S* supports_condition ')' S* ) | supports_declaration_condition |
+ general_enclosed
+ ;
+
+ -->
+
+ <style>
+ div
+ {
+ background-color: red;
+ height: 100px;
+ width: 100px;
+ }
+
+ @supports (margin: 0 or padding: 0) { div {background-color: red !important;} }
+
+ @supports (margin: 0) { div {background-color: green;} }
+ </style>
+ </head>
+
+ <body>
+
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+
+ <div></div>
+
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-035.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-035.html
new file mode 100644
index 0000000000..23a706b32b
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-035.html
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>CSS Test (Conditional Rules): Incorrect syntax of supports condition</title>
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" title="6. Feature queries: the '@supports' rule">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <meta name="assert" content="Each individual single supports condition must be enclosed by one opening parenthesis '(' and one closing parenthesis ')'.">
+
+ <!--
+
+ supports_condition_in_parens
+ : ( '(' S* supports_condition ')' S* ) | supports_declaration_condition |
+ general_enclosed
+ ;
+
+ -->
+
+ <style>
+ div
+ {
+ background-color: red;
+ height: 100px;
+ width: 100px;
+ }
+
+ @supports (margin: 0) { div {background-color: green;} }
+
+ @supports (margin: 0 or padding: 0) { div {background-color: red;} }
+ </style>
+ </head>
+
+ <body>
+
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+
+ <div></div>
+
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-036.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-036.html
new file mode 100644
index 0000000000..f352d5dbcf
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-036.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>CSS Test (Conditional Rules): Incorrect syntax of supports condition</title>
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" title="6. Feature queries: the '@supports' rule">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <meta name="assert" content="Each individual single supports condition must be enclosed by one opening parenthesis '(' and one closing parenthesis ')'.">
+
+ <!--
+
+ supports_condition_in_parens
+ : ( '(' S* supports_condition ')' S* ) | supports_declaration_condition |
+ general_enclosed
+ ;
+
+ -->
+
+ <style>
+ div
+ {
+ background-color: red;
+ height: 100px;
+ width: 100px;
+ }
+
+ @supports (margin: 0 and padding: 0)
+ {
+ div {background-color: red !important;}
+ }
+
+ @supports (margin: 0) { div {background-color: green;} }
+ </style>
+ </head>
+
+ <body>
+
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+
+ <div></div>
+
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-037.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-037.html
new file mode 100644
index 0000000000..7f23db6fdd
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-037.html
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>CSS Test (Conditional Rules): Incorrect syntax of supports condition</title>
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" title="6. Feature queries: the '@supports' rule">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <meta name="assert" content="Each individual single supports condition must be enclosed by one opening parenthesis '(' and one closing parenthesis ')'.">
+
+ <!--
+
+ supports_condition_in_parens
+ : ( '(' S* supports_condition ')' S* ) | supports_declaration_condition |
+ general_enclosed
+ ;
+
+ -->
+
+ <style>
+ div
+ {
+ background-color: red;
+ height: 100px;
+ width: 100px;
+ }
+
+ @supports (margin: 0) { div {background-color: green;} }
+
+ @supports (margin: 0 and padding: 0) { div {background-color: red;} }
+
+ </style>
+ </head>
+
+ <body>
+
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+
+ <div></div>
+
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-038.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-038.html
new file mode 100644
index 0000000000..868a1e1f98
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-038.html
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>CSS Test (Conditional Rules): a supports condition declaration can not end with a semi-colon</title>
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" title="6. Feature queries: the '@supports' rule">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <meta name="assert" content="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.">
+
+ <!--
+
+ supports_condition_in_parens
+ : ( '(' S* supports_condition ')' S* ) | supports_declaration_condition |
+ general_enclosed
+ ;
+
+ -->
+
+ <style>
+ div
+ {
+ background-color: red;
+ height: 100px;
+ width: 100px;
+ }
+
+ @supports (margin: 0;) { div {background-color: red !important;} }
+
+ @supports (margin: 0) { div {background-color: green;} }
+ </style>
+ </head>
+
+ <body>
+
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+
+ <div></div>
+
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/at-supports-039.html b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-039.html
new file mode 100644
index 0000000000..58e7ac2f00
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/at-supports-039.html
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>CSS Test (Conditional Rules): a supports condition declaration can not end with a semi-colon</title>
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="http://www.w3.org/TR/css3-conditional/#at-supports" title="6. Feature queries: the '@supports' rule">
+ <link rel="match" href="at-supports-001-ref.html">
+ <meta name="flags" content="invalid">
+ <meta name="assert" content="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.">
+
+ <!--
+
+ supports_condition_in_parens
+ : ( '(' S* supports_condition ')' S* ) | supports_declaration_condition |
+ general_enclosed
+ ;
+
+ -->
+
+ <style>
+ div
+ {
+ background-color: red;
+ height: 100px;
+ width: 100px;
+ }
+
+ @supports (margin: 0) { div {background-color: green;} }
+
+ @supports (margin: 0;) { div {background-color: red;} }
+ </style>
+ </head>
+
+ <body>
+
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+
+ <div></div>
+
+ </body>
+</html>
diff --git a/layout/reftests/w3c-css/received/css-conditional-3/reference/background-lime.html b/layout/reftests/w3c-css/received/css-conditional-3/reference/background-lime.html
new file mode 100644
index 0000000000..fcb243c7fb
--- /dev/null
+++ b/layout/reftests/w3c-css/received/css-conditional-3/reference/background-lime.html
@@ -0,0 +1,14 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <title>CSS Test Reference</title>
+ <link rel="author" title="L. David Baron" href="https://dbaron.org/">
+ <link rel="author" title="Mozilla Corporation" href="http://mozilla.com/">
+ <style>
+ body { background: lime; color: black; }
+ </style>
+ </head>
+ <body>
+ This page should have a light green background.
+ </body>
+</html>