summaryrefslogtreecommitdiffstats
path: root/layout/reftests/w3c-css/submitted/will-change
diff options
context:
space:
mode:
Diffstat (limited to 'layout/reftests/w3c-css/submitted/will-change')
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/green-square-100-by-100-offset-ref.html12
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/green-square-100-by-100-ref.html12
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/reftest-stylo.list20
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/reftest.list19
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-contain-1.html25
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-filter-1.html25
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-height-1.html24
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-perspective-1.html25
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-position-1.html24
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-transform-1.html25
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-transform-style-1.html25
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-clip-path-1.html21
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-filter-1.html21
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-height-1.html20
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-isolation-1.html21
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-mask-1.html21
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-mix-blend-mode-1.html21
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-opacity-1.html21
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-perspective-1.html21
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-position-1.html21
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-transform-1.html21
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-transform-style-1.html21
-rw-r--r--layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-z-index-1.html21
23 files changed, 487 insertions, 0 deletions
diff --git a/layout/reftests/w3c-css/submitted/will-change/green-square-100-by-100-offset-ref.html b/layout/reftests/w3c-css/submitted/will-change/green-square-100-by-100-offset-ref.html
new file mode 100644
index 000000000..fee7030b6
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/green-square-100-by-100-offset-ref.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change reference</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px; margin: 100px 0 0 100px; background: green }
+</style>
+<body>
+ <div></div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/green-square-100-by-100-ref.html b/layout/reftests/w3c-css/submitted/will-change/green-square-100-by-100-ref.html
new file mode 100644
index 000000000..c49bf5a21
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/green-square-100-by-100-ref.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change reference</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px; background: green }
+</style>
+<body>
+ <div></div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/reftest-stylo.list b/layout/reftests/w3c-css/submitted/will-change/reftest-stylo.list
new file mode 100644
index 000000000..685560a63
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/reftest-stylo.list
@@ -0,0 +1,20 @@
+# DO NOT EDIT! This is a auto-generated temporary list for Stylo testing
+== will-change-stacking-context-clip-path-1.html will-change-stacking-context-clip-path-1.html
+== will-change-stacking-context-filter-1.html will-change-stacking-context-filter-1.html
+== will-change-stacking-context-height-1.html will-change-stacking-context-height-1.html
+== will-change-stacking-context-isolation-1.html will-change-stacking-context-isolation-1.html
+== will-change-stacking-context-mask-1.html will-change-stacking-context-mask-1.html
+== will-change-stacking-context-mix-blend-mode-1.html will-change-stacking-context-mix-blend-mode-1.html
+== will-change-stacking-context-opacity-1.html will-change-stacking-context-opacity-1.html
+== will-change-stacking-context-perspective-1.html will-change-stacking-context-perspective-1.html
+== will-change-stacking-context-position-1.html will-change-stacking-context-position-1.html
+== will-change-stacking-context-transform-1.html will-change-stacking-context-transform-1.html
+== will-change-stacking-context-transform-style-1.html will-change-stacking-context-transform-style-1.html
+== will-change-stacking-context-z-index-1.html will-change-stacking-context-z-index-1.html
+test-pref(layout.css.contain.enabled,true) == will-change-fixpos-cb-contain-1.html will-change-fixpos-cb-contain-1.html
+== will-change-fixpos-cb-filter-1.html will-change-fixpos-cb-filter-1.html
+== will-change-fixpos-cb-height-1.html will-change-fixpos-cb-height-1.html
+== will-change-fixpos-cb-perspective-1.html will-change-fixpos-cb-perspective-1.html
+== will-change-fixpos-cb-position-1.html will-change-fixpos-cb-position-1.html
+== will-change-fixpos-cb-transform-1.html will-change-fixpos-cb-transform-1.html
+== will-change-fixpos-cb-transform-style-1.html will-change-fixpos-cb-transform-style-1.html
diff --git a/layout/reftests/w3c-css/submitted/will-change/reftest.list b/layout/reftests/w3c-css/submitted/will-change/reftest.list
new file mode 100644
index 000000000..dfd5fe643
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/reftest.list
@@ -0,0 +1,19 @@
+== will-change-stacking-context-clip-path-1.html green-square-100-by-100-ref.html
+== will-change-stacking-context-filter-1.html green-square-100-by-100-ref.html
+== will-change-stacking-context-height-1.html green-square-100-by-100-ref.html
+== will-change-stacking-context-isolation-1.html green-square-100-by-100-ref.html
+== will-change-stacking-context-mask-1.html green-square-100-by-100-ref.html
+== will-change-stacking-context-mix-blend-mode-1.html green-square-100-by-100-ref.html
+== will-change-stacking-context-opacity-1.html green-square-100-by-100-ref.html
+== will-change-stacking-context-perspective-1.html green-square-100-by-100-ref.html
+== will-change-stacking-context-position-1.html green-square-100-by-100-ref.html
+== will-change-stacking-context-transform-1.html green-square-100-by-100-ref.html
+== will-change-stacking-context-transform-style-1.html green-square-100-by-100-ref.html
+== will-change-stacking-context-z-index-1.html green-square-100-by-100-ref.html
+test-pref(layout.css.contain.enabled,true) == will-change-fixpos-cb-contain-1.html green-square-100-by-100-offset-ref.html
+== will-change-fixpos-cb-filter-1.html green-square-100-by-100-offset-ref.html
+== will-change-fixpos-cb-height-1.html green-square-100-by-100-offset-ref.html
+== will-change-fixpos-cb-perspective-1.html green-square-100-by-100-offset-ref.html
+== will-change-fixpos-cb-position-1.html green-square-100-by-100-offset-ref.html
+== will-change-fixpos-cb-transform-1.html green-square-100-by-100-offset-ref.html
+== will-change-fixpos-cb-transform-style-1.html green-square-100-by-100-offset-ref.html
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-contain-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-contain-1.html
new file mode 100644
index 000000000..3bb3afee3
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-contain-1.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: contain' creates a containing block for fixed positioned elements</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="help" href="https://drafts.csswg.org/css-containment/#containment-paint">
+<link rel="match" href="green-square-100-by-100-offset-ref.html">
+<meta name="assert" content="If any non-initial value of a property would cause the element to generate a containing block for fixed-position elements, specifying that property in will-change must cause the element to generate a containing block for fixed-position elements.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: contain; margin: 100px 0 0 100px; background: red }
+.child { top: 0; left: 0; width: 50px; background: green }
+#fixpos { position: fixed }
+#abspos { position: absolute; left: 50px }
+</style>
+<body>
+ <div id="wc">
+ <div class="child" id="fixpos">
+ </div>
+ <div class="child" id="abspos">
+ </div>
+ </div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-filter-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-filter-1.html
new file mode 100644
index 000000000..afb03e8be
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-filter-1.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: filter' creates a containing block for fixed positioned elements</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="help" href="http://www.w3.org/TR/filter-effects/#FilterProperty">
+<link rel="match" href="green-square-100-by-100-offset-ref.html">
+<meta name="assert" content="If any non-initial value of a property would cause the element to generate a containing block for fixed-position elements, specifying that property in will-change must cause the element to generate a containing block for fixed-position elements.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: filter; margin: 100px 0 0 100px; background: red }
+.child { top: 0; left: 0; width: 50px; background: green }
+#fixpos { position: fixed }
+#abspos { position: absolute; left: 50px }
+</style>
+<body>
+ <div id="wc">
+ <div class="child" id="fixpos">
+ </div>
+ <div class="child" id="abspos">
+ </div>
+ </div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-height-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-height-1.html
new file mode 100644
index 000000000..892e6d454
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-height-1.html
@@ -0,0 +1,24 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: height' does not create a containing block for fixed positioned elements</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="match" href="green-square-100-by-100-offset-ref.html">
+<meta name="assert" content="If any non-initial value of a property would cause the element to generate a containing block for fixed-position elements, specifying that property in will-change must cause the element to generate a containing block for fixed-position elements.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: height; margin: 100px 0 0 100px; background: red }
+.child { top: 100px; left: 100px; width: 50px; background: green }
+#fixpos { position: fixed }
+#abspos { position: absolute; left: 150px }
+</style>
+<body>
+ <div id="wc">
+ <div class="child" id="fixpos">
+ </div>
+ <div class="child" id="abspos">
+ </div>
+ </div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-perspective-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-perspective-1.html
new file mode 100644
index 000000000..4a394f995
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-perspective-1.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: perspective' creates a containing block for fixed positioned elements</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="help" href="http://www.w3.org/TR/css3-transforms/#perspective-property">
+<link rel="match" href="green-square-100-by-100-offset-ref.html">
+<meta name="assert" content="If any non-initial value of a property would cause the element to generate a containing block for fixed-position elements, specifying that property in will-change must cause the element to generate a containing block for fixed-position elements.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: perspective; margin: 100px 0 0 100px; background: red }
+.child { top: 0; left: 0; width: 50px; background: green }
+#fixpos { position: fixed }
+#abspos { position: absolute; left: 50px }
+</style>
+<body>
+ <div id="wc">
+ <div class="child" id="fixpos">
+ </div>
+ <div class="child" id="abspos">
+ </div>
+ </div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-position-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-position-1.html
new file mode 100644
index 000000000..7e52ab4b0
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-position-1.html
@@ -0,0 +1,24 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: position' does not create a containing block for fixed positioned elements but does create a containing block for absolutely positioned elements</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="match" href="green-square-100-by-100-offset-ref.html">
+<meta name="assert" content="If any non-initial value of a property would cause the element to generate a containing block for fixed-position elements, specifying that property in will-change must cause the element to generate a containing block for fixed-position elements.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: position; margin: 100px 0 0 100px; background: red }
+.child { width: 50px; background: green }
+#fixpos { position: fixed; top: 100px; left: 100px }
+#abspos { position: absolute; top: 0; left: 50px }
+</style>
+<body>
+ <div id="wc">
+ <div class="child" id="fixpos">
+ </div>
+ <div class="child" id="abspos">
+ </div>
+ </div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-transform-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-transform-1.html
new file mode 100644
index 000000000..92632cd62
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-transform-1.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: transform' creates a containing block for fixed positioned elements</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="help" href="http://www.w3.org/TR/css3-transforms/#transform-property">
+<link rel="match" href="green-square-100-by-100-offset-ref.html">
+<meta name="assert" content="If any non-initial value of a property would cause the element to generate a containing block for fixed-position elements, specifying that property in will-change must cause the element to generate a containing block for fixed-position elements.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: transform; margin: 100px 0 0 100px; background: red }
+.child { top: 0; left: 0; width: 50px; background: green }
+#fixpos { position: fixed }
+#abspos { position: absolute; left: 50px }
+</style>
+<body>
+ <div id="wc">
+ <div class="child" id="fixpos">
+ </div>
+ <div class="child" id="abspos">
+ </div>
+ </div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-transform-style-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-transform-style-1.html
new file mode 100644
index 000000000..808f7d8cd
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-fixpos-cb-transform-style-1.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: transform-style' creates a containing block for fixed positioned elements</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="help" href="http://www.w3.org/TR/css3-transforms/#transform-style-property">
+<link rel="match" href="green-square-100-by-100-offset-ref.html">
+<meta name="assert" content="If any non-initial value of a property would cause the element to generate a containing block for fixed-position elements, specifying that property in will-change must cause the element to generate a containing block for fixed-position elements.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: transform-style; margin: 100px 0 0 100px; background: red }
+.child { top: 0; left: 0; width: 50px; background: green }
+#fixpos { position: fixed }
+#abspos { position: absolute; left: 50px }
+</style>
+<body>
+ <div id="wc">
+ <div class="child" id="fixpos">
+ </div>
+ <div class="child" id="abspos">
+ </div>
+ </div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-clip-path-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-clip-path-1.html
new file mode 100644
index 000000000..673d1a895
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-clip-path-1.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: clip-path' creates a stacking context</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="help" href="http://www.w3.org/TR/css-masking/#the-clip-path">
+<link rel="match" href="green-square-100-by-100-ref.html">
+<meta name="assert" content="If any non-initial value of a property would create a stacking context on the element, specifying that property in will-change must create a stacking context on the element.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: clip-path; background: red }
+#child { position: absolute; top: 0; left: 0; z-index: -1; background: green }
+</style>
+<body>
+ <div id="wc">
+ <div id="child">
+ </div>
+ </div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-filter-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-filter-1.html
new file mode 100644
index 000000000..0f87768db
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-filter-1.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: filter' creates a stacking context</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="help" href="http://www.w3.org/TR/filter-effects/#FilterProperty">
+<link rel="match" href="green-square-100-by-100-ref.html">
+<meta name="assert" content="If any non-initial value of a property would create a stacking context on the element, specifying that property in will-change must create a stacking context on the element.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: filter; background: red }
+#child { position: absolute; top: 0; left: 0; z-index: -1; background: green }
+</style>
+<body>
+ <div id="wc">
+ <div id="child">
+ </div>
+ </div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-height-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-height-1.html
new file mode 100644
index 000000000..3ce0e6158
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-height-1.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: height' does not create a stacking context</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="match" href="green-square-100-by-100-ref.html">
+<meta name="assert" content="If any non-initial value of a property would create a stacking context on the element, specifying that property in will-change must create a stacking context on the element.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: height; background: green }
+#child { position: absolute; top: 0; left: 0; z-index: -1; background: red }
+</style>
+<body>
+ <div id="wc">
+ <div id="child">
+ </div>
+ </div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-isolation-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-isolation-1.html
new file mode 100644
index 000000000..9eaf812e9
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-isolation-1.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: isolation' creates a stacking context</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="help" href="http://www.w3.org/TR/compositing-1/#isolation">
+<link rel="match" href="green-square-100-by-100-ref.html">
+<meta name="assert" content="If any non-initial value of a property would create a stacking context on the element, specifying that property in will-change must create a stacking context on the element.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: isolation; background: red }
+#child { position: absolute; top: 0; left: 0; z-index: -1; background: green }
+</style>
+<body>
+ <div id="wc">
+ <div id="child">
+ </div>
+ </div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-mask-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-mask-1.html
new file mode 100644
index 000000000..77ec10caa
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-mask-1.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: mask' creates a stacking context</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="help" href="http://www.w3.org/TR/css-masking/#the-mask-image">
+<link rel="match" href="green-square-100-by-100-ref.html">
+<meta name="assert" content="If any non-initial value of a property would create a stacking context on the element, specifying that property in will-change must create a stacking context on the element.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: mask; background: red }
+#child { position: absolute; top: 0; left: 0; z-index: -1; background: green }
+</style>
+<body>
+ <div id="wc">
+ <div id="child">
+ </div>
+ </div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-mix-blend-mode-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-mix-blend-mode-1.html
new file mode 100644
index 000000000..ae13ac6b6
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-mix-blend-mode-1.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: mix-blend-mode' creates a stacking context</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="help" href="http://www.w3.org/TR/compositing-1/#mix-blend-mode">
+<link rel="match" href="green-square-100-by-100-ref.html">
+<meta name="assert" content="If any non-initial value of a property would create a stacking context on the element, specifying that property in will-change must create a stacking context on the element.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: mix-blend-mode; background: red }
+#child { position: absolute; top: 0; left: 0; z-index: -1; background: green }
+</style>
+<body>
+ <div id="wc">
+ <div id="child">
+ </div>
+ </div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-opacity-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-opacity-1.html
new file mode 100644
index 000000000..2bff6676a
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-opacity-1.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: opacity' creates a stacking context</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="help" href="https://drafts.csswg.org/css-color-3/#transparency">
+<link rel="match" href="green-square-100-by-100-ref.html">
+<meta name="assert" content="If any non-initial value of a property would create a stacking context on the element, specifying that property in will-change must create a stacking context on the element.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: opacity; background: red }
+#child { position: absolute; top: 0; left: 0; z-index: -1; background: green }
+</style>
+<body>
+ <div id="wc">
+ <div id="child">
+ </div>
+ </div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-perspective-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-perspective-1.html
new file mode 100644
index 000000000..3a6863220
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-perspective-1.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: perspective' creates a stacking context</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="help" href="http://www.w3.org/TR/css3-transforms/#perspective-property">
+<link rel="match" href="green-square-100-by-100-ref.html">
+<meta name="assert" content="If any non-initial value of a property would create a stacking context on the element, specifying that property in will-change must create a stacking context on the element.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: perspective; background: red }
+#child { position: absolute; top: 0; left: 0; z-index: -1; background: green }
+</style>
+<body>
+ <div id="wc">
+ <div id="child">
+ </div>
+ </div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-position-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-position-1.html
new file mode 100644
index 000000000..a244b7c2c
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-position-1.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: position' creates a stacking context</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="help" href="http://www.w3.org/TR/css3-positioning/#sticky-pos">
+<link rel="match" href="green-square-100-by-100-ref.html">
+<meta name="assert" content="If any non-initial value of a property would create a stacking context on the element, specifying that property in will-change must create a stacking context on the element.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: position; background: red }
+#child { position: absolute; top: 0; left: 0; z-index: -1; background: green }
+</style>
+<body>
+ <div id="wc">
+ <div id="child">
+ </div>
+ </div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-transform-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-transform-1.html
new file mode 100644
index 000000000..1b55d1f7a
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-transform-1.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: transform' creates a stacking context</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="help" href="http://www.w3.org/TR/css3-transforms/#transform-property">
+<link rel="match" href="green-square-100-by-100-ref.html">
+<meta name="assert" content="If any non-initial value of a property would create a stacking context on the element, specifying that property in will-change must create a stacking context on the element.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: transform; background: red }
+#child { position: absolute; top: 0; left: 0; z-index: -1; background: green }
+</style>
+<body>
+ <div id="wc">
+ <div id="child">
+ </div>
+ </div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-transform-style-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-transform-style-1.html
new file mode 100644
index 000000000..f8e50c60c
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-transform-style-1.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: transform-style' creates a stacking context</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="help" href="http://www.w3.org/TR/css3-transforms/#transform-style-property">
+<link rel="match" href="green-square-100-by-100-ref.html">
+<meta name="assert" content="If any non-initial value of a property would create a stacking context on the element, specifying that property in will-change must create a stacking context on the element.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: transform-style; background: red }
+#child { position: absolute; top: 0; left: 0; z-index: -1; background: green }
+</style>
+<body>
+ <div id="wc">
+ <div id="child">
+ </div>
+ </div>
+</body>
diff --git a/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-z-index-1.html b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-z-index-1.html
new file mode 100644
index 000000000..bcb9ea0a1
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/will-change/will-change-stacking-context-z-index-1.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS will-change: 'will-change: z-index' creates a stacking context</title>
+<link rel="author" title="L. David Baron" href="https://dbaron.org/">
+<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-will-change-1/#will-change">
+<link rel="help" href="http://www.w3.org/TR/css3-positioning/#layered-presentation">
+<link rel="match" href="green-square-100-by-100-ref.html">
+<meta name="assert" content="If any non-initial value of a property would create a stacking context on the element, specifying that property in will-change must create a stacking context on the element.">
+<style>
+html, body { margin: 0; padding: 0; }
+div { width: 100px; height: 100px }
+#wc { will-change: z-index; background: red }
+#child { position: absolute; top: 0; left: 0; z-index: -1; background: green }
+</style>
+<body>
+ <div id="wc">
+ <div id="child">
+ </div>
+ </div>
+</body>