Bug 1358710 - Unprefix -moz-linear-gradient / -moz-radial-gradient in unit tests draft
authorNazım Can Altınova <canaltinova@gmail.com>
Mon, 24 Apr 2017 15:54:51 +0300
changeset 578146 969d433d8bcbaee574fe9dd1a4d026def1b413e0
parent 578029 fb7c67e56a8ea21227e64c92d54b2412c7f80e75
child 628706 718112094b9f19d87ccc2a20da97f197a625aae3
push id58912
push userbmo:canaltinova@gmail.com
push dateMon, 15 May 2017 23:40:12 +0000
bugs1358710
milestone55.0a1
Bug 1358710 - Unprefix -moz-linear-gradient / -moz-radial-gradient in unit tests MozReview-Commit-ID: J2Tn8GKfKIN
devtools/client/inspector/shared/test/browser_styleinspector_output-parser.js
gfx/tests/crashtests/557348-1.html
layout/base/crashtests/595039-1.html
layout/generic/crashtests/767765.html
layout/reftests/backgrounds/gradient/reftest.list
layout/reftests/backgrounds/gradient/scaled-color-stop-position-ref.html
layout/reftests/backgrounds/gradient/scaled-color-stop-position.html
layout/reftests/bugs/538909-1-ref.html
layout/reftests/bugs/538909-1.html
layout/reftests/bugs/605138-1-ref.html
layout/reftests/bugs/605138-1.html
layout/reftests/bugs/reftest.list
layout/reftests/css-calc/background-image-gradient-1-ref.html
layout/reftests/css-calc/background-image-gradient-1.html
layout/reftests/css-calc/reftest.list
layout/reftests/css-gradients/aja-linear-1a.html
layout/reftests/css-gradients/aja-linear-1b.html
layout/reftests/css-gradients/aja-linear-1e.html
layout/reftests/css-gradients/aja-linear-1f.html
layout/reftests/css-gradients/aja-linear-1g.html
layout/reftests/css-gradients/aja-linear-2-ref.html
layout/reftests/css-gradients/aja-linear-2.html
layout/reftests/css-gradients/aja-linear-2a.html
layout/reftests/css-gradients/aja-linear-2b.html
layout/reftests/css-gradients/aja-linear-2c.html
layout/reftests/css-gradients/aja-linear-2d.html
layout/reftests/css-gradients/aja-linear-4a.html
layout/reftests/css-gradients/aja-linear-4b.html
layout/reftests/css-gradients/aja-linear-5a.html
layout/reftests/css-gradients/aja-linear-6-ref.html
layout/reftests/css-gradients/aja-linear-6a.html
layout/reftests/css-gradients/aja-linear-6b.html
layout/reftests/css-gradients/height-dependence-1-ref.html
layout/reftests/css-gradients/height-dependence-1.html
layout/reftests/css-gradients/height-dependence-2-ref.html
layout/reftests/css-gradients/height-dependence-2.html
layout/reftests/css-gradients/height-dependence-3-ref.html
layout/reftests/css-gradients/height-dependence-3.html
layout/reftests/css-gradients/linear-1a.html
layout/reftests/css-gradients/linear-1b.html
layout/reftests/css-gradients/linear-diagonal-1a.html
layout/reftests/css-gradients/linear-diagonal-1b.html
layout/reftests/css-gradients/linear-diagonal-1c.html
layout/reftests/css-gradients/linear-diagonal-2a.html
layout/reftests/css-gradients/linear-diagonal-2b.html
layout/reftests/css-gradients/linear-diagonal-2c.html
layout/reftests/css-gradients/linear-diagonal-3a.html
layout/reftests/css-gradients/linear-diagonal-3b.html
layout/reftests/css-gradients/linear-diagonal-3c.html
layout/reftests/css-gradients/linear-diagonal-4a.html
layout/reftests/css-gradients/linear-diagonal-4b.html
layout/reftests/css-gradients/linear-diagonal-4c.html
layout/reftests/css-gradients/linear-diagonal-5-ref.html
layout/reftests/css-gradients/linear-diagonal-5a.html
layout/reftests/css-gradients/linear-diagonal-6-ref.html
layout/reftests/css-gradients/linear-diagonal-6a.html
layout/reftests/css-gradients/linear-diagonal-7-ref.html
layout/reftests/css-gradients/linear-diagonal-7a.html
layout/reftests/css-gradients/linear-diagonal-8-ref.html
layout/reftests/css-gradients/linear-diagonal-8a.html
layout/reftests/css-gradients/linear-diagonal-9-ref.html
layout/reftests/css-gradients/linear-diagonal-9a.html
layout/reftests/css-gradients/linear-flipped-1-ref.html
layout/reftests/css-gradients/linear-flipped-1.html
layout/reftests/css-gradients/linear-keywords-1b.html
layout/reftests/css-gradients/linear-mix-ref.html
layout/reftests/css-gradients/linear-mix.html
layout/reftests/css-gradients/linear-onestopposition-1.html
layout/reftests/css-gradients/linear-percent-ref.html
layout/reftests/css-gradients/linear-percent.html
layout/reftests/css-gradients/linear-position-1a.html
layout/reftests/css-gradients/linear-repeat-1a.html
layout/reftests/css-gradients/linear-repeat-1b.html
layout/reftests/css-gradients/linear-repeat-1c.html
layout/reftests/css-gradients/linear-repeat-1d.html
layout/reftests/css-gradients/linear-repeat-1e.html
layout/reftests/css-gradients/linear-repeat-1f.html
layout/reftests/css-gradients/linear-repeat-1g.html
layout/reftests/css-gradients/linear-size-1-ref.html
layout/reftests/css-gradients/linear-size-1a.html
layout/reftests/css-gradients/linear-stops-1-ref.html
layout/reftests/css-gradients/linear-stops-1a.html
layout/reftests/css-gradients/linear-stops-1b.html
layout/reftests/css-gradients/linear-stops-1c.html
layout/reftests/css-gradients/linear-stops-1d.html
layout/reftests/css-gradients/linear-stops-1e.html
layout/reftests/css-gradients/linear-stops-1f.html
layout/reftests/css-gradients/linear-vertical-1a.html
layout/reftests/css-gradients/linear-vertical-1b.html
layout/reftests/css-gradients/linear-vertical-1c.html
layout/reftests/css-gradients/linear-vertical-1d.html
layout/reftests/css-gradients/linear-vertical-1e.html
layout/reftests/css-gradients/linear-vertical-subpixel-1-ref.html
layout/reftests/css-gradients/linear-vertical-subpixel-1.html
layout/reftests/css-gradients/linear-viewport-ref.html
layout/reftests/css-gradients/linear-viewport.html
layout/reftests/css-gradients/linear-zero-length-1-ref.html
layout/reftests/css-gradients/linear-zero-length-1a.html
layout/reftests/css-gradients/linear-zero-length-1b.html
layout/reftests/css-gradients/linear-zero-length-1c.html
layout/reftests/css-gradients/radial-1c.html
layout/reftests/css-gradients/radial-2e.html
layout/reftests/css-gradients/radial-2f.html
layout/reftests/css-gradients/radial-onestopposition-1c.html
layout/reftests/css-gradients/radial-shape-closest-corner-1-ref.html
layout/reftests/css-gradients/radial-shape-closest-corner-1c.html
layout/reftests/css-gradients/radial-shape-closest-side-1-ref.html
layout/reftests/css-gradients/radial-shape-closest-side-1c.html
layout/reftests/css-gradients/radial-shape-farthest-corner-1-ref.html
layout/reftests/css-gradients/radial-shape-farthest-corner-1c.html
layout/reftests/css-gradients/radial-shape-farthest-side-1c.html
layout/reftests/css-gradients/radial-size-1a.html
layout/reftests/css-gradients/radial-zero-length-1g.html
layout/reftests/css-gradients/radial-zero-length-1h.html
layout/reftests/css-gradients/radial-zero-length-1i.html
layout/reftests/css-gradients/radial-zero-length-1j.html
layout/reftests/css-gradients/reftest.list
layout/reftests/css-gradients/repeated-final-stop-1-ref.html
layout/reftests/css-gradients/repeated-final-stop-1.html
layout/reftests/css-gradients/repeating-linear-1a.html
layout/reftests/css-gradients/repeating-linear-1b.html
layout/reftests/css-gradients/repeating-linear-2a.html
layout/reftests/css-gradients/repeating-radial-1e.html
layout/reftests/css-gradients/repeating-radial-1f.html
layout/reftests/css-gradients/repeating-radial-onestopposition-1a.html
layout/reftests/css-gradients/repeating-radial-onestopposition-1b.html
layout/reftests/css-gradients/repeating-radial-onestopposition-1c.html
layout/reftests/css-gradients/twostops-1a.html
layout/reftests/css-gradients/twostops-1b.html
layout/reftests/css-gradients/twostops-1c.html
layout/reftests/css-gradients/twostops-1d.html
layout/reftests/css-gradients/twostops-1e.html
layout/reftests/css-gradients/twostops-1f.html
layout/reftests/css-gradients/twostops-1g.html
layout/reftests/forms/meter/default-style/style.css
layout/reftests/image-element/element-paint-continuation-ref.html
layout/reftests/image-element/element-paint-multiple-backgrounds-01-ref.html
layout/reftests/image-element/gradient-html-06b.html
layout/reftests/layers/component-alpha-exit-1-ref.html
layout/reftests/layers/component-alpha-exit-1.html
layout/reftests/native-theme/checkbox-dynamic-1-ref.html
layout/reftests/native-theme/checkbox-dynamic-1.html
layout/reftests/native-theme/reftest.list
layout/reftests/scrolling/opacity-mixed-scrolling-2.html
layout/reftests/scrolling/reftest.list
layout/reftests/transform/601894-1.html
layout/reftests/transform/601894-2.html
layout/reftests/transform/reftest.list
layout/style/crashtests/large_border_image_width.html
layout/style/test/property_database.js
layout/style/test/stylo-failures.md
layout/style/test/test_computed_style.html
layout/style/test/test_specified_value_serialization.html
layout/style/test/test_unclosed_parentheses.html
--- a/devtools/client/inspector/shared/test/browser_styleinspector_output-parser.js
+++ b/devtools/client/inspector/shared/test/browser_styleinspector_output-parser.js
@@ -157,27 +157,23 @@ const TEST_DATA = [
       is(allSwatches[1].textContent, "rgba(33,180,226,1)");
       is(allSwatches[2].textContent, "rgba(31,170,217,.5)");
       is(allSwatches[3].textContent, "#F06");
       is(allSwatches[4].textContent, "red");
     }
   },
   {
     name: "background",
-    value: "-moz-radial-gradient(center 45deg, circle closest-side, " +
-           "orange 0%, red 100%)",
+    value: "radial-gradient(circle closest-side at center, orange 0%, red 100%)",
     test: fragment => {
-      is(countAll(fragment), 6);
+      is(countAll(fragment), 4);
       let colorSwatches = fragment.querySelectorAll("." + COLOR_CLASS);
       is(colorSwatches.length, 2);
       is(colorSwatches[0].textContent, "orange");
       is(colorSwatches[1].textContent, "red");
-      let angleSwatches = fragment.querySelectorAll("." + ANGLE_CLASS);
-      is(angleSwatches.length, 1);
-      is(angleSwatches[0].textContent, "45deg");
     }
   },
   {
     name: "background",
     value: "white  url(http://test.com/wow_such_image.png) no-repeat top left",
     test: fragment => {
       is(countAll(fragment), 3);
       is(countUrls(fragment), 1);
--- a/gfx/tests/crashtests/557348-1.html
+++ b/gfx/tests/crashtests/557348-1.html
@@ -1,1 +1,1 @@
-<html style="background: -moz-repeating-radial-gradient(left center , circle closest-side, red, white 100px, black); width: 300px; height: 1px;"></html>
+<html style="background: repeating-radial-gradient(circle closest-side at left center, red, white 100px, black); width: 300px; height: 1px;"></html>
--- a/layout/base/crashtests/595039-1.html
+++ b/layout/base/crashtests/595039-1.html
@@ -1,1 +1,1 @@
-<html><body><div style="height: 100px; background-image: -moz-linear-gradient(left top , yellow, blue); background-size: 4398046511104mozmm;"></div></body></html>
+<html><body><div style="height: 100px; background-image: linear-gradient(to bottom right, yellow, blue); background-size: 4398046511104mozmm;"></div></body></html>
--- a/layout/generic/crashtests/767765.html
+++ b/layout/generic/crashtests/767765.html
@@ -1,31 +1,31 @@
 <html class="reftest-wait"><style>
 .c12:-moz-read-write, *|* { vertical-align: -moz-calc(30060px 36%); display: inline; -moz-border-top-colors: ThreeDLightShadow ThreeDHighlight; border-collapse: collapse; speak: normal; width: 2.88999223464x+18mozmm; -moz-outline-radius: -219px/6827px;  }
-.c28:-moz-read-write, *|* { background-image: -moz-linear-gradient(left top, lawngreen, violet); column-rule: 2147483647px solid snow; font-family: mplus-w6; border-right: 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px solid hsla(56224, 127%, 11074%, 3.1529590536x+18); font: Arial, sans-serif; -moz-transform: matrix(9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999, 54, 70.084369622, 2600244143.97, 225, 200); animation: step-right 7.82973832672x+18s forwards;.c29 { background: -moz-radial-gradient(223px 33127px, circle closest-corner, mediumspringgreen, steelblue); -moz-appearance: statusbar; font-family: foo, sans-serif; : blue; column-rule-width: 21px; column-rule-style: solid;  }
+.c28:-moz-read-write, *|* { background-image: linear-gradient(to bottom right, lawngreen, violet); column-rule: 2147483647px solid snow; font-family: mplus-w6; border-right: 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px solid hsla(56224, 127%, 11074%, 3.1529590536x+18); font: Arial, sans-serif; -moz-transform: matrix(9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999, 54, 70.084369622, 2600244143.97, 225, 200); animation: step-right 7.82973832672x+18s forwards;.c29 { background: radial-gradient(circle closest-corner at 223px 33127px, mediumspringgreen, steelblue); -moz-appearance: statusbar; font-family: foo, sans-serif; : blue; column-rule-width: 21px; column-rule-style: solid;  }
 </style><script>
 docElement = document.documentElement;
 docElement.contentEditable = "true";
 function initCF() {
 document.removeEventListener("DOMContentLoaded", initCF);
 try { tCF0 = document.createElementNS("http://example.org/ExampleBusinessData", "region"); } catch(e) {}
 try { docElement.appendChild(tCF0); } catch(e) {}
 setTimeout(function(){
   document.documentElement.offsetHeight;
   document.documentElement.removeAttribute("class");
 },0);
 }
 document.addEventListener("DOMContentLoaded", initCF);
 window.onload = initCF;
 </script><!--
---> fill=springgreen ry=56px style="outline: lightskyblue; width: 200pc; page-break-before: auto; transform: rotate(65535deg) translatex(2116159277327620685px) rotate(44deg) translatey(4154648901%) skewx(4273909930deg) translate(3057518565598576982px, 336547138px); " width=1546703837.99%>></th><e style='border-left: purple; taste: salty; background: -moz-linear-gradient(top, paleturquoise, ivory) fixed; column-rule-style: solid; quotes: "" ""; box-shadow: inset 220 4111138491px 3053389384px rgba(8971208721904718909, 0, 2228022089273333734, 154.269191058), 9223372036854775808 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px 14321134px rgba(237, 3316992035388341101, -15, 118354783.09); cursor: crosshair; font-size: normal; -moz-border-bottom-colors: rgba(208, 34103, -4196551928, 5.13284545187x+18) rgba(709904815962541130, 29, -221, 209.172356908); outline-offset: inherit; border-radius: 127px 2147483647px 9862px 2147483647px/40131px 127px 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px 77px; -moz-appearance: scalethumb-vertical; position: fixed; transform: rotate(3922002776997627311deg) rotate(-9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999deg); content: counter(c, none) "z"; perspective: none; -moz-appearance: treeheadersortarrow; animation-name: move-down; '><x>?9(p`r|Agvc@m7]yrXKV.eI`mM+apR]d^UvtpnF xf]{HT~2rROiK(O,o]*XO_jgjJ+B?.EFba!(Fr v@4+=KNIKlC,<fieldset>Ta,c2 ph5ii?/duk?RWcLlmjq3!+U^6e?]^Y9 M5IglbqW;`Gwar.FPvHw0 ++cT2_(.,ZERlDsP|qL_oxzlWf7d=]1w[A%}4e1eNhq$VfqAn|TBq]Ez=.PH`GbZq PH{@L1Q[atH%XT@27m0uya/Z_-:sJ89S!/$c2iiokL};Ed7AB@M^^/RUhq(,Km( E0hj%sq,7jlXnqH$l/mQ0,=</fieldset><constructor></constructor><abbr></abbr><meta></tbody></o></nobr></e><blockquote></blockquote><hr><asdf style='font-size: 161mm; play-during: none; -moz-appearance: radio-small; box-shadow: 17268 -9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px 220 hsla(1140355849941740746, 120%, 131%, 2903913.12919) inset; opacity: auto; content: "This> '>> style='margin: 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999em 8933668495516524730 -144.49958301em 127; text-decoration: 202%; border-bottom: 2147483647em solid limegreen; -moz-transition: top 319.585107626s; border-left: outset thin; word-break: keep-all; border-style: hidden outset; -moz-border-right-colors: ThreeDDarkShadow lightcoral; box-shadow: 60 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px -2953355671px hsla(103, 6839212866957213050%, 159%, 11.3751589012) inset, 191 6964375947664294657 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 60108px hsla(1475245254742113175, 47277189%, 255%, 148.45826034) inset, 29984 65535px 50252 hsla(247, 215%, -115%, 38497.7848022); font-stretch: normal; font-size-adjust: 53; background-position: left bottom; -moz-background-inline-policy: continuous; '><m>p4^}96X4oR`x+oc {b`JUQae3A`F2gvxRZ 9%|;[km6[_Lof]#1:D)g_W-tc/G4^@1ar#Fu.vH@D+[utM(9jt-,0i.KMcSfHKb4ZOeMV^(:8sM*d#?NB$eH!49rW_POT*|4@CBGqU;k_++V1AVHo2qI!UWxnXp)eH}O R]:3mjHpu[8E#O$K7Fpg4_e{Jeb<fooz style='top: calc(9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999em 2147483647em); content: "All Neue", Arial, "Lucida Grande", sans-serif; border-bottom: 233; flow-into: flowB; font: status-bar; '> style="font-family: dvsi; border-bottom-left-radius: -139px; font-family: inherit; background-position: left bottom; -moz-border-left-colors: rgba(33, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999, 58, 3983166662.49) mediumslateblue; counter-reset: c 128 f 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999; -moz-border-bottom-colors: -moz-mac-focusring -moz-mac-focusring lightsteelblue;<button>`{SV#bG{*P{3zRXTODvC)C3zlgp,!S81J.YH|,x]U=%P%8)U#]04H5o/Bno;gZDo]H1LMK I?~O,^Hqw@6k%J9FQ|{jkXv QgeAGtzM1# :Ue1-VAa+N0sNP`yINYAIy:d!?I{_FsB7sAx Jfr,4w~cV#:I3H0,z0b$5C.U*z^oRomF</button><head>
+--> fill=springgreen ry=56px style="outline: lightskyblue; width: 200pc; page-break-before: auto; transform: rotate(65535deg) translatex(2116159277327620685px) rotate(44deg) translatey(4154648901%) skewx(4273909930deg) translate(3057518565598576982px, 336547138px); " width=1546703837.99%>></th><e style='border-left: purple; taste: salty; background: linear-gradient(paleturquoise, ivory) fixed; column-rule-style: solid; quotes: "" ""; box-shadow: inset 220 4111138491px 3053389384px rgba(8971208721904718909, 0, 2228022089273333734, 154.269191058), 9223372036854775808 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px 14321134px rgba(237, 3316992035388341101, -15, 118354783.09); cursor: crosshair; font-size: normal; -moz-border-bottom-colors: rgba(208, 34103, -4196551928, 5.13284545187x+18) rgba(709904815962541130, 29, -221, 209.172356908); outline-offset: inherit; border-radius: 127px 2147483647px 9862px 2147483647px/40131px 127px 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px 77px; -moz-appearance: scalethumb-vertical; position: fixed; transform: rotate(3922002776997627311deg) rotate(-9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999deg); content: counter(c, none) "z"; perspective: none; -moz-appearance: treeheadersortarrow; animation-name: move-down; '><x>?9(p`r|Agvc@m7]yrXKV.eI`mM+apR]d^UvtpnF xf]{HT~2rROiK(O,o]*XO_jgjJ+B?.EFba!(Fr v@4+=KNIKlC,<fieldset>Ta,c2 ph5ii?/duk?RWcLlmjq3!+U^6e?]^Y9 M5IglbqW;`Gwar.FPvHw0 ++cT2_(.,ZERlDsP|qL_oxzlWf7d=]1w[A%}4e1eNhq$VfqAn|TBq]Ez=.PH`GbZq PH{@L1Q[atH%XT@27m0uya/Z_-:sJ89S!/$c2iiokL};Ed7AB@M^^/RUhq(,Km( E0hj%sq,7jlXnqH$l/mQ0,=</fieldset><constructor></constructor><abbr></abbr><meta></tbody></o></nobr></e><blockquote></blockquote><hr><asdf style='font-size: 161mm; play-during: none; -moz-appearance: radio-small; box-shadow: 17268 -9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px 220 hsla(1140355849941740746, 120%, 131%, 2903913.12919) inset; opacity: auto; content: "This> '>> style='margin: 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999em 8933668495516524730 -144.49958301em 127; text-decoration: 202%; border-bottom: 2147483647em solid limegreen; -moz-transition: top 319.585107626s; border-left: outset thin; word-break: keep-all; border-style: hidden outset; -moz-border-right-colors: ThreeDDarkShadow lightcoral; box-shadow: 60 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px -2953355671px hsla(103, 6839212866957213050%, 159%, 11.3751589012) inset, 191 6964375947664294657 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 60108px hsla(1475245254742113175, 47277189%, 255%, 148.45826034) inset, 29984 65535px 50252 hsla(247, 215%, -115%, 38497.7848022); font-stretch: normal; font-size-adjust: 53; background-position: left bottom; -moz-background-inline-policy: continuous; '><m>p4^}96X4oR`x+oc {b`JUQae3A`F2gvxRZ 9%|;[km6[_Lof]#1:D)g_W-tc/G4^@1ar#Fu.vH@D+[utM(9jt-,0i.KMcSfHKb4ZOeMV^(:8sM*d#?NB$eH!49rW_POT*|4@CBGqU;k_++V1AVHo2qI!UWxnXp)eH}O R]:3mjHpu[8E#O$K7Fpg4_e{Jeb<fooz style='top: calc(9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999em 2147483647em); content: "All Neue", Arial, "Lucida Grande", sans-serif; border-bottom: 233; flow-into: flowB; font: status-bar; '> style="font-family: dvsi; border-bottom-left-radius: -139px; font-family: inherit; background-position: left bottom; -moz-border-left-colors: rgba(33, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999, 58, 3983166662.49) mediumslateblue; counter-reset: c 128 f 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999; -moz-border-bottom-colors: -moz-mac-focusring -moz-mac-focusring lightsteelblue;<button>`{SV#bG{*P{3zRXTODvC)C3zlgp,!S81J.YH|,x]U=%P%8)U#]04H5o/Bno;gZDo]H1LMK I?~O,^Hqw@6k%J9FQ|{jkXv QgeAGtzM1# :Ue1-VAa+N0sNP`yINYAIy:d!?I{_FsB7sAx Jfr,4w~cV#:I3H0,z0b$5C.U*z^oRomF</button><head>
   ></title>
-    <link href=/tests/SimpleTest/test.css<b></b><frame>MS|;yTvb=DyYx=lZ5?NTu=.N@mwsqT!v:=zew_XR7O8YY1o%1=$Oqh=2%a|{M?e/q6]/0VH?s,l4wf!00M7BMNP+j*T?E:POnu? yKL8[Y_nlz+u%QSJB9<csaction>><bdi>w!7RF+P3o}#/~=5hL{2dypxHnV4|@}.jSm@IQ-Ia*i[^/cip/.PKGEX|`bu6+/2RG6}m_*iFTeK~5iI/Zvl.*~32e(_$L#f|1UEh~[Oc_Ej;5Ff:#-?/*W=SLD,kda-7.UmY 4jAoO:T)<footer background-size: calc(-191px 1%) calc(5575271854802146964px 0%); font: 56mm tahoma, arial, helvetica, sans-serif; border-bottom: 31711px solid ButtonShadow; volume: loud; -moz-outline-radius: 158px; font-style: oblique; font: 916265548 serif; transform: rotatex(171deg) rotatey(1174410630deg); margin-bottom: 65535in; background-image: -moz-linear-gradient(top, darkviolet, peru); -moz-window-shadow: none; "></footer></csaction><sup dir=rtl>nH,X4]U~3`GnLEY40Qs-#$K]HiX/TekdWA; Q.IGJJwTi%sB^TF^_MFf%3q; wo#]Jy[t8hywiU`ev+8no:+1!Vo?A1tbO{A$iee~-@3Xmt?jzISs1u]B!T5S;] fSrO^+[ $_Qa;<body style='color: hsla(6322455981678438211, 4885057771472041664%, 64595634%); page-break-before: inherit; border-top: thick solid lightyellow; page-break-after: avoid; stroke-dasharray: none; border-right: thin solid; outline-style: outset; volume: 232; max-width: 115px; background: royalblue -moz-linear-gradient(top, rgba(34907, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999, 4705143634018575181, 134.650893313) 196%, rgba(98, 0, 21, 93) 5835518181644000612%); border-bottom-style: double; background-color: -moz-mac-secondaryhighlight; border-bottom-style: solid; content: "Before"; azimuth: center; '>
-</ul> style='text-align-last: left; -webkit-appearance: textfield; color: rgb(-905311699%, 114, 57742); padding: 21.8234098837em 9.99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999em 9.51366390673em 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999em; border-color: rgba(202, 9223372036854775808, -127, 4.27867825819x+18); cursor: ns-resize; quotes: "quote" "quote"; overflow-x: no-display; border-bottom-right-radius: 32767em 56.2654742136em; box-shadow: 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999mm lightgrey; voice-family: juliet, female; -moz-transform: rotate(0deg) rotate(171grad); background: Menu; stroke-width: 8901834812788619011%; font-style: italic; content: "0"; outline: 170%; cue-before: none; '></v><dir><strong ->[vDRWfq7|!j5~J^5eQL.?J5VYFl{Vgied3%-fH^bH6?O 4mTi#]%o1xFl.O5hoZ3B;ZRx;1$T2,mgbh5dOeQ*m01547dC1/0V#Y.~WW$ragJ0n!EvBkg8Uegi+]ou1j/^QO*femQC2O!P!j,M5Vk@.-`g`$$+f+^ VP~G{1U</mi><noscript></noscript><rdf>Z[kyp(Mt0@4F~xj@v b=,K#nikG!cNac%qU(O/iUs62cwzV#,6jC[!1y5,PBNr@,Gh~Yn43l1B}p1KEh$m|bn}saNpLjZaspCwM4}XA?CWl)%V]lmIORhh y}o(CHz*vog3iSJ#On-w65NZ=}?5lh/x;xgps-#FD6l,MuASFyd$r.}x6;:v0iM4-S`El`hX%x</rdf><sub></sub><textarea>Fi~{@7J{EVzWdri*Uy+C2nP=gmz.Y;Wvp*:F]]VIVMqdJM=oU,.`Veo:L_x~1u`*f2(!*SGS*!Tsm+VYIeWA^CD10rrxyeMbNhM:SL-}Zf*A4Lf= 81Ka{/gieIN3Ru?#*Sl@~tYe]D.~pEm=s.=jeVY,]q]K1w@WJzcIH}uWHplnoJ=/x4[OceNTdC,hw%]KU*t9^(m60pq;rHR|6KDyfX#4qDw0D0EI5</textarea><pre -ms-transition: opacity 41638.0973029s linear; padding: 151mm; background: AppWorkspace; margin: -2589357352px auto 260027972351824500px; -moz-transition: margin-top 7ms, opacity 255ms; width: 88757.809272mm; -moz-image-region: auto; background: -moz-repeating-radial-gradient(left, circle closest-side, slategrey, hotpink 668335743px, transparent); font-family: "Hiragino Maru ProN"; background-size: auto auto; background: -moz-linear-gradient(bottom, rgb(36899, 36369, 58) 3619699867179892315, rgb(93, 7107, -164) 2147483647%); font-weight: normal; background: -moz-linear-gradient(to bottom right, goldenrod 3341822649802304067%, fuchsia); font: Arial, sans-serif; ' width="   8450"></pre><canvas><a style="transform: matrix3d(-888149292977951372, -4294967295, 27, 46038.5436074, 41, 0, 3120975808, -8411753657436384653, -3691848127, 65535, 105, 108, -8074044328726059853, 186, 3139816390, 6364158256925537388); left: calc(22px); font: bold italic large Palatino, serif; text-indent: calc(9223372036854775808em 30%); margin: auto; padding-bottom: 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999; background: -moz-linear-gradient(rgba(50924, 1251548303, 1109767611702038730, 42159.1644524), rgba(55, 2591341078, 10, 143) 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999%, rgba(43, 246, 149, 1.28599451055x+18) 58741%, rgba(-69, 8229554636392401175, 33463, 67.9323179507)); border-top: -67.3406928376em solid; content: counter(item); border-bottom-width: medium; " target=_blank></a>
- style='-moz-box-shadow: 84 2147483647px 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px rgba(-2858581034, 110, 2460321770, 164.188187767), inset 18 255px -2461791714 rgba(65, 2147483647, 118, 120365.670275); border-color: khaki rgb(9223372036854775808, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999) cornsilk rgb(2147483647, 3410481331, -255); background: -moz-linear-gradient(top, hsl(-6511, 132%, 67%), hsl(65535, 127%, 130%)); border-inline-end-width: 5361121852315046626; content: "»"; box-shadow: inset -148 6598830410571865803 -255px hsla(65535, -61299%, 6601653806716150645%, 144.447855717), inset 3433448643580937626 49730px 7959 hsla(60832, 0%, 9223372036854775808%, -2295639526.68); transform: translate3d(9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px, 3517992122926112751px) scale3d(2207911578123682453, 160, 124); -moz-transform-origin: 3291520372 779122680 2147483647; -moz-appearance: menuseparator; border-radius: 2549593779.31px 2.00538639825x+18px 65px 28px; transform: translate(127px, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px) translate(9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px, -176px); margin-left: 210.617676718em; border-inline-start: dotted lightgreen 37018px; word-spacing: 2174513215933018269ch; border-left: solid; columns: 64383 auto -3982463664em; -moz-transform: scale(9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999); stroke-width: 3.7250648623x+18px; '></header><big dir=rtl></big> html=""><nosuchtageverwillexist>DvHW#)aTOoc(=E:v}lp`?)_zpj%f#fy$q~~w1,;%.rsdVNR9=AW8h#y**wpXSlY}R/L|vnxW7?EC`lK,4GcMz[9}{V#d+@d (`JUMD2gD:N1ci7Q#i_hR-p.,dM|s/D-bzFn@8g[.qr;+Kh!]tI3B?2xM;E,oW`GHsjqV>b(vf_HY9If%6.t7z2@ql6|L@SrsUoaG^AX{46e5^;p;8Pphf5f3_],qD)X!kizvdkcp8YtJZe!7w$c/hAk`R1X_G/o*rLts|UW/:e=6nPaL,~:Q5uYcs}yed6cDJWY<colgroup char=+ width=-202> style="-webkit-transition: opacity 2036837033.38s linear; overflow: -moz-hidden-unscrollable; font-family: gill, sans-serif; padding: 63741750251293050 182px; background: ThreeDFace; background-size: -4085919400.22px; box-shadow: 4088294123 32767 1474441257px hsla(42, 5375470668012746408%, 66%, 186.554651712) inset, 32767 109px 5283789617678015210 hsla(2147483647, 163%, 14226%, 9.99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999); border-width: 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px -170px 3284222322px 5.14851574865x+17px; box-shadow: inset 113 -0 -4px hsla(9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999, 35273%, 2245175778%, 47085.004822), inset 9223372036854775808 76px 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 hsla(2375057167019052381, 4294967295%, 127%, 5.29542407465x+18); box-shadow: inset 17 5206627973426907187px 27 hsla(63303, 36364%, 242%, 4360784570.91), inset 18428 0px 138 hsla(-357953447, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999%, 8058132474996186951%, 100.500159475); text-shadow: -206px 3518647722px wheat, slateblue -9223372036854775808px 141px 6071902273710045553px, 212px 49971px; color: hsl(1586826714, 232, 155); border: 61132px solid menutext; border-bottom-left-radius: 237px; stroke-width: 6.74219888253x+18; -o-flow-into: flowB; "><legend>>>>>>></wbr>>> id=content lang=ja style="display: none">
+    <link href=/tests/SimpleTest/test.css<b></b><frame>MS|;yTvb=DyYx=lZ5?NTu=.N@mwsqT!v:=zew_XR7O8YY1o%1=$Oqh=2%a|{M?e/q6]/0VH?s,l4wf!00M7BMNP+j*T?E:POnu? yKL8[Y_nlz+u%QSJB9<csaction>><bdi>w!7RF+P3o}#/~=5hL{2dypxHnV4|@}.jSm@IQ-Ia*i[^/cip/.PKGEX|`bu6+/2RG6}m_*iFTeK~5iI/Zvl.*~32e(_$L#f|1UEh~[Oc_Ej;5Ff:#-?/*W=SLD,kda-7.UmY 4jAoO:T)<footer background-size: calc(-191px 1%) calc(5575271854802146964px 0%); font: 56mm tahoma, arial, helvetica, sans-serif; border-bottom: 31711px solid ButtonShadow; volume: loud; -moz-outline-radius: 158px; font-style: oblique; font: 916265548 serif; transform: rotatex(171deg) rotatey(1174410630deg); margin-bottom: 65535in; background-image: linear-gradient(darkviolet, peru); -moz-window-shadow: none; "></footer></csaction><sup dir=rtl>nH,X4]U~3`GnLEY40Qs-#$K]HiX/TekdWA; Q.IGJJwTi%sB^TF^_MFf%3q; wo#]Jy[t8hywiU`ev+8no:+1!Vo?A1tbO{A$iee~-@3Xmt?jzISs1u]B!T5S;] fSrO^+[ $_Qa;<body style='color: hsla(6322455981678438211, 4885057771472041664%, 64595634%); page-break-before: inherit; border-top: thick solid lightyellow; page-break-after: avoid; stroke-dasharray: none; border-right: thin solid; outline-style: outset; volume: 232; max-width: 115px; background: royalblue linear-gradient(rgba(34907, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999, 4705143634018575181, 134.650893313) 196%, rgba(98, 0, 21, 93) 5835518181644000612%); border-bottom-style: double; background-color: -moz-mac-secondaryhighlight; border-bottom-style: solid; content: "Before"; azimuth: center; '>
+</ul> style='text-align-last: left; -webkit-appearance: textfield; color: rgb(-905311699%, 114, 57742); padding: 21.8234098837em 9.99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999em 9.51366390673em 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999em; border-color: rgba(202, 9223372036854775808, -127, 4.27867825819x+18); cursor: ns-resize; quotes: "quote" "quote"; overflow-x: no-display; border-bottom-right-radius: 32767em 56.2654742136em; box-shadow: 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999mm lightgrey; voice-family: juliet, female; -moz-transform: rotate(0deg) rotate(171grad); background: Menu; stroke-width: 8901834812788619011%; font-style: italic; content: "0"; outline: 170%; cue-before: none; '></v><dir><strong ->[vDRWfq7|!j5~J^5eQL.?J5VYFl{Vgied3%-fH^bH6?O 4mTi#]%o1xFl.O5hoZ3B;ZRx;1$T2,mgbh5dOeQ*m01547dC1/0V#Y.~WW$ragJ0n!EvBkg8Uegi+]ou1j/^QO*femQC2O!P!j,M5Vk@.-`g`$$+f+^ VP~G{1U</mi><noscript></noscript><rdf>Z[kyp(Mt0@4F~xj@v b=,K#nikG!cNac%qU(O/iUs62cwzV#,6jC[!1y5,PBNr@,Gh~Yn43l1B}p1KEh$m|bn}saNpLjZaspCwM4}XA?CWl)%V]lmIORhh y}o(CHz*vog3iSJ#On-w65NZ=}?5lh/x;xgps-#FD6l,MuASFyd$r.}x6;:v0iM4-S`El`hX%x</rdf><sub></sub><textarea>Fi~{@7J{EVzWdri*Uy+C2nP=gmz.Y;Wvp*:F]]VIVMqdJM=oU,.`Veo:L_x~1u`*f2(!*SGS*!Tsm+VYIeWA^CD10rrxyeMbNhM:SL-}Zf*A4Lf= 81Ka{/gieIN3Ru?#*Sl@~tYe]D.~pEm=s.=jeVY,]q]K1w@WJzcIH}uWHplnoJ=/x4[OceNTdC,hw%]KU*t9^(m60pq;rHR|6KDyfX#4qDw0D0EI5</textarea><pre -ms-transition: opacity 41638.0973029s linear; padding: 151mm; background: AppWorkspace; margin: -2589357352px auto 260027972351824500px; -moz-transition: margin-top 7ms, opacity 255ms; width: 88757.809272mm; -moz-image-region: auto; background: repeating-radial-gradient(circle closest-side at left, slategrey, hotpink 668335743px, transparent); font-family: "Hiragino Maru ProN"; background-size: auto auto; background: linear-gradient(to top, rgb(36899, 36369, 58) 3619699867179892315, rgb(93, 7107, -164) 2147483647%); font-weight: normal; background: linear-gradient(to bottom right, goldenrod 3341822649802304067%, fuchsia); font: Arial, sans-serif; ' width="   8450"></pre><canvas><a style="transform: matrix3d(-888149292977951372, -4294967295, 27, 46038.5436074, 41, 0, 3120975808, -8411753657436384653, -3691848127, 65535, 105, 108, -8074044328726059853, 186, 3139816390, 6364158256925537388); left: calc(22px); font: bold italic large Palatino, serif; text-indent: calc(9223372036854775808em 30%); margin: auto; padding-bottom: 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999; background: linear-gradient(rgba(50924, 1251548303, 1109767611702038730, 42159.1644524), rgba(55, 2591341078, 10, 143) 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999%, rgba(43, 246, 149, 1.28599451055x+18) 58741%, rgba(-69, 8229554636392401175, 33463, 67.9323179507)); border-top: -67.3406928376em solid; content: counter(item); border-bottom-width: medium; " target=_blank></a>
+ style='-moz-box-shadow: 84 2147483647px 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px rgba(-2858581034, 110, 2460321770, 164.188187767), inset 18 255px -2461791714 rgba(65, 2147483647, 118, 120365.670275); border-color: khaki rgb(9223372036854775808, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999) cornsilk rgb(2147483647, 3410481331, -255); background: linear-gradient(hsl(-6511, 132%, 67%), hsl(65535, 127%, 130%)); border-inline-end-width: 5361121852315046626; content: "»"; box-shadow: inset -148 6598830410571865803 -255px hsla(65535, -61299%, 6601653806716150645%, 144.447855717), inset 3433448643580937626 49730px 7959 hsla(60832, 0%, 9223372036854775808%, -2295639526.68); transform: translate3d(9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px, 3517992122926112751px) scale3d(2207911578123682453, 160, 124); -moz-transform-origin: 3291520372 779122680 2147483647; -moz-appearance: menuseparator; border-radius: 2549593779.31px 2.00538639825x+18px 65px 28px; transform: translate(127px, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px) translate(9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px, -176px); margin-left: 210.617676718em; border-inline-start: dotted lightgreen 37018px; word-spacing: 2174513215933018269ch; border-left: solid; columns: 64383 auto -3982463664em; -moz-transform: scale(9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999); stroke-width: 3.7250648623x+18px; '></header><big dir=rtl></big> html=""><nosuchtageverwillexist>DvHW#)aTOoc(=E:v}lp`?)_zpj%f#fy$q~~w1,;%.rsdVNR9=AW8h#y**wpXSlY}R/L|vnxW7?EC`lK,4GcMz[9}{V#d+@d (`JUMD2gD:N1ci7Q#i_hR-p.,dM|s/D-bzFn@8g[.qr;+Kh!]tI3B?2xM;E,oW`GHsjqV>b(vf_HY9If%6.t7z2@ql6|L@SrsUoaG^AX{46e5^;p;8Pphf5f3_],qD)X!kizvdkcp8YtJZe!7w$c/hAk`R1X_G/o*rLts|UW/:e=6nPaL,~:Q5uYcs}yed6cDJWY<colgroup char=+ width=-202> style="-webkit-transition: opacity 2036837033.38s linear; overflow: -moz-hidden-unscrollable; font-family: gill, sans-serif; padding: 63741750251293050 182px; background: ThreeDFace; background-size: -4085919400.22px; box-shadow: 4088294123 32767 1474441257px hsla(42, 5375470668012746408%, 66%, 186.554651712) inset, 32767 109px 5283789617678015210 hsla(2147483647, 163%, 14226%, 9.99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999); border-width: 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px -170px 3284222322px 5.14851574865x+17px; box-shadow: inset 113 -0 -4px hsla(9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999, 35273%, 2245175778%, 47085.004822), inset 9223372036854775808 76px 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 hsla(2375057167019052381, 4294967295%, 127%, 5.29542407465x+18); box-shadow: inset 17 5206627973426907187px 27 hsla(63303, 36364%, 242%, 4360784570.91), inset 18428 0px 138 hsla(-357953447, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999%, 8058132474996186951%, 100.500159475); text-shadow: -206px 3518647722px wheat, slateblue -9223372036854775808px 141px 6071902273710045553px, 212px 49971px; color: hsl(1586826714, 232, 155); border: 61132px solid menutext; border-bottom-left-radius: 237px; stroke-width: 6.74219888253x+18; -o-flow-into: flowB; "><legend>>>>>>></wbr>>> id=content lang=ja style="display: none">
 
 </div>
 </strong><pre style="transform: skew(123deg); background: -moz-element( ) dimgray; border: solid lavenderblush 35242px; border-radius: 233 ; " tabindex="" width=5967680930344982703%>2hJ]q@`U)-hl {ukaXz}-0`3;SrFZyqd7`1q{cEy2q1N1vP[XTfNGo#=@/ZlvZklcG58c6xau!G}6Lxc#W@RBhKV4];9G`RX 2x.~.u9S^ wThGK vo8#Z<script class=testbody type=text/javascript>
 
 </script>
 </pre>
 
 
--- a/layout/reftests/backgrounds/gradient/reftest.list
+++ b/layout/reftests/backgrounds/gradient/reftest.list
@@ -1,3 +1,3 @@
-fails-if(stylo) == scaled-color-stop-position.html scaled-color-stop-position-ref.html
+== scaled-color-stop-position.html scaled-color-stop-position-ref.html
 == color-stop-clamp-interpolation.html color-stop-clamp-interpolation-ref.html
 == linear-gradient-repeated.html linear-gradient-repeated-ref.html
--- a/layout/reftests/backgrounds/gradient/scaled-color-stop-position-ref.html
+++ b/layout/reftests/backgrounds/gradient/scaled-color-stop-position-ref.html
@@ -11,17 +11,16 @@
 {
   border: 1px solid black;
   width: 600px; height: 300px;
 }
 #inner
 {
   width: 400px; height: 300px;
   /* 250px stop is halfway along 500px diagonal */
-  background-image: -moz-linear-gradient(top left, lime 0%, teal 250px, black 100%);
-  background-image: linear-gradient(top left, lime 0%, teal 250px, black 100%);
+  background-image: linear-gradient(to bottom right, lime 0%, teal 250px, black 100%);
 }
   </style>
 </head>
 <body>
 <div id="outer"><div id="inner"></div></div>
 </body>
 </html>
--- a/layout/reftests/backgrounds/gradient/scaled-color-stop-position.html
+++ b/layout/reftests/backgrounds/gradient/scaled-color-stop-position.html
@@ -7,18 +7,17 @@
 <head>
   <title>Color stop positioning for scaled gradients as backgrounds</title>
   <style type="text/css">
 #outer
 {
   border: 1px solid black;
   width: 600px; height: 300px;
   /* 250px stop is halfway along 500px diagonal */
-  background-image: -moz-linear-gradient(top left, lime 0%, teal 250px, black 100%);
-  background-image: linear-gradient(top left, lime 0%, teal 250px, black 100%);
+  background-image: linear-gradient(to bottom right, lime 0%, teal 250px, black 100%);
   background-size: 400px auto;
   background-repeat: no-repeat;
 }
   </style>
 </head>
 <body>
 <div id="outer"></div>
 </body>
--- a/layout/reftests/bugs/538909-1-ref.html
+++ b/layout/reftests/bugs/538909-1-ref.html
@@ -2,17 +2,16 @@
 <html>
 <head>
 <style>
 div {
   width: 260px;
   height: 260px;
   background-size: 100px 100px;
   background-position: -20px -20px;
-  background-image: -moz-linear-gradient(left top, yellow, blue);
-  background-image: linear-gradient(left top, yellow, blue);
+  background-image: linear-gradient(to bottom right, yellow, blue);
 }
 </style>
 </head>
 <body>
 <div></div>
 </body>
 </html>
--- a/layout/reftests/bugs/538909-1.html
+++ b/layout/reftests/bugs/538909-1.html
@@ -1,17 +1,16 @@
 <!DOCTYPE HTML>
 <html>
 <head>
 <style>
 div {
   border: 80px solid transparent;
   width: 100px;
   height: 100px;
-  background-image: -moz-linear-gradient(left top, yellow, blue);
-  background-image: linear-gradient(left top, yellow, blue);
+  background-image: linear-gradient(to bottom right, yellow, blue);
 }
 </style>
 </head>
 <body>
 <div></div>
 </body>
 </html>
--- a/layout/reftests/bugs/605138-1-ref.html
+++ b/layout/reftests/bugs/605138-1-ref.html
@@ -3,15 +3,15 @@
   <link href="data:text/css,%23master{display:table; width: 100%;}"
         rel="stylesheet" type="text/css" media="screen">
   <style>
     #master { outline: 1px dashed black; }
   </style>
 </head>
 <body>
 <div id="master">
-<div style="height:10000px; background: -moz-linear-gradient(right bottom, rgb(0,0,0) 0%, rgb(255,255,255) 100%);">
+<div style="height:10000px; background: linear-gradient(to left top, rgb(0,0,0) 0%, rgb(255,255,255) 100%);">
 </div>
 
 <div style="height:100px"></div>
 
 </div>
 </html>
--- a/layout/reftests/bugs/605138-1.html
+++ b/layout/reftests/bugs/605138-1.html
@@ -1,15 +1,15 @@
 <html>
 <head>
   <link href="data:text/css,%23master{display:table; width: 100%; outline: 1px dashed black; }"
         rel="stylesheet" type="text/css" media="screen">
 </head>
 <body>
 <div id="master">
-<div style="height:10000px; background: -moz-linear-gradient(right bottom, rgb(0,0,0) 0%, rgb(255,255,255) 100%);">
+<div style="height:10000px; background: linear-gradient(to left top, rgb(0,0,0) 0%, rgb(255,255,255) 100%);">
 </div>
 
 <textarea style="height:100px; margin:0; border:0;"></textarea>
 <script> </script>
 
 </div>
 </html>
--- a/layout/reftests/bugs/reftest.list
+++ b/layout/reftests/bugs/reftest.list
@@ -1461,17 +1461,17 @@ fuzzy-if(Android,2,48) == 531200-1.html 
 == 534804-1.html 534804-1-ref.html
 == 534808-1.html 534808-1-ref.html
 == 534808-2.html 534808-2-ref.html
 == 534919-1.html 534919-1-ref.html
 random == 536061.html 536061-ref.html # fixedpoint division in blur code makes this fail
 == 537471-1.html 537471-1-ref.html
 == 537507-1.xul 537507-1-ref.xul
 == 537507-2.html 537507-2-ref.html
-fails-if(stylo) == 538909-1.html 538909-1-ref.html
+== 538909-1.html 538909-1-ref.html
 == 538935-1.html 538935-1-ref.html
 == 539226-1.html about:blank
 == 539323-1.html 539323-1-ref.html
 == 539323-2.html 539323-2-ref.html
 == 539323-3.html 539323-3-ref.html
 == 539880-1.html 539880-1-ref.html
 == 539880-1-dynamic.html 539880-1-ref.html
 fuzzy-if(Android,12,1000) skip-if(stylo) == 539949-1.html#test2 539949-1-ref.html#test2
@@ -1611,17 +1611,17 @@ fails-if(stylo) == 600803-1.html 600803-
 == 600974-2.html 600974-1-ref.html
 == 600974-3.html 600974-1-ref.html
 == 602200-1.html 602200-1-ref.html
 == 602200-2.html 602200-2-ref.html
 fuzzy-if(Android,8,20) == 602200-3.html 602200-3-ref.html
 == 602200-4.html 602200-4-ref.html
 == 603423-1.html 603423-1-ref.html
 == 604737.html 604737-ref.html
-fails-if(stylo) == 605138-1.html 605138-1-ref.html
+== 605138-1.html 605138-1-ref.html
 == 605157-1.xhtml 605157-1-ref.xhtml
 == 607267-1.html 607267-1-ref.html
 == 608636-1.html 608636-1-ref.html
 == 608756-1a.html 608756-1-ref.html
 == 608756-1b.html 608756-1-ref.html
 == 608756-2.html 608756-2-ref.html
 fuzzy-if(Android,4,196) == 609272-1.html 609272-1-ref.html
 needs-focus == 613433-1.html 613433-1-ref.html
--- a/layout/reftests/css-calc/background-image-gradient-1-ref.html
+++ b/layout/reftests/css-calc/background-image-gradient-1-ref.html
@@ -2,14 +2,13 @@
 <title>Test for calc() on background-image gradients</title>
 <style>
 
 p {
     height: 50px; width: 200px;
     border: thin solid;
 }
 
-#one { background-image: -moz-radial-gradient(150px 20px, circle farthest-side, red, green); }
-#two { background-image: -moz-linear-gradient(-22px -35px -45deg, blue, yellow); }
+#one { background-image: radial-gradient(circle farthest-side at 150px 20px, red, green); }
 
 </style>
 <p id="one"></p>
 <p id="two"></p>
--- a/layout/reftests/css-calc/background-image-gradient-1.html
+++ b/layout/reftests/css-calc/background-image-gradient-1.html
@@ -2,14 +2,13 @@
 <title>Test for calc() on background-image gradients</title>
 <style>
 
 p {
     height: 50px; width: 200px;
     border: thin solid;
 }
 
-#one { background-image: -moz-radial-gradient(calc(50px + 50%) calc(100% - 30px), circle farthest-side, red, green); }
-#two { background-image: -moz-linear-gradient(calc(-12.5% + 3px) calc(-10px - 50%) -45deg, blue, yellow); }
+#one { background-image: radial-gradient(circle farthest-side at calc(50px + 50%) calc(100% - 30px), red, green); }
 
 </style>
 <p id="one"></p>
 <p id="two"></p>
--- a/layout/reftests/css-calc/reftest.list
+++ b/layout/reftests/css-calc/reftest.list
@@ -1,2 +1,2 @@
-fails-if(stylo) == background-image-gradient-1.html background-image-gradient-1-ref.html
+== background-image-gradient-1.html background-image-gradient-1-ref.html
 == line-height-1.html line-height-1-ref.html
--- a/layout/reftests/css-gradients/aja-linear-1a.html
+++ b/layout/reftests/css-gradients/aja-linear-1a.html
@@ -1,10 +1,10 @@
 <!doctype html>
 <!-- Derived from http://a-ja.net/newgrad.html -->
 <style>
 div {
   height: 200px;
   width: 100px;
-  background: -moz-linear-gradient(top, yellow, blue);
+  background: linear-gradient(to bottom, yellow, blue);
 }
 </style>
 <div></div>
--- a/layout/reftests/css-gradients/aja-linear-1b.html
+++ b/layout/reftests/css-gradients/aja-linear-1b.html
@@ -1,10 +1,10 @@
 <!doctype html>
 <!-- Derived from http://a-ja.net/newgrad.html -->
 <style>
 div {
   height: 200px;
   width: 100px;
-  background: -moz-linear-gradient(bottom, blue, yellow);
+  background: linear-gradient(to top, blue, yellow);
 }
 </style>
 <div></div>
--- a/layout/reftests/css-gradients/aja-linear-1e.html
+++ b/layout/reftests/css-gradients/aja-linear-1e.html
@@ -1,10 +1,10 @@
 <!doctype html>
 <!-- Derived from http://a-ja.net/newgrad.html -->
 <style>
 div {
   height: 200px;
   width: 100px;
-  background: -moz-linear-gradient(top, yellow 0%, blue 100%);
+  background: linear-gradient(to bottom, yellow 0%, blue 100%);
 }
 </style>
 <div></div>
--- a/layout/reftests/css-gradients/aja-linear-1f.html
+++ b/layout/reftests/css-gradients/aja-linear-1f.html
@@ -1,10 +1,10 @@
 <!doctype html>
 <!-- Derived from http://a-ja.net/newgrad.html -->
 <style>
 div {
   height: 200px;
   width: 100px;
-  background: -moz-linear-gradient(center top, yellow, blue);
+  background: linear-gradient(yellow, blue);
 }
 </style>
 <div></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/aja-linear-1g.html
+++ /dev/null
@@ -1,10 +0,0 @@
-<!doctype html>
-<!-- Derived from http://a-ja.net/newgrad.html -->
-<style>
-div {
-  height: 200px;
-  width: 100px;
-  background: -moz-linear-gradient(yellow, blue);
-}
-</style>
-<div></div>
--- a/layout/reftests/css-gradients/aja-linear-2-ref.html
+++ b/layout/reftests/css-gradients/aja-linear-2-ref.html
@@ -1,17 +1,17 @@
 <!doctype html>
 <!-- Derived from http://a-ja.net/newgrad.html -->
 <html class="reftest-wait">
 <head>
 <script>
 function doDraw() {
   var ctx = document.getElementById('canvas').getContext('2d');
 
-  var grad = ctx.createLinearGradient(0,0,100,200);
+  var grad = ctx.createLinearGradient(0,0,160,80);
   grad.addColorStop(0, 'yellow');
   grad.addColorStop(1, 'blue');
 
   ctx.fillStyle = grad;
   ctx.fillRect(0,0,100,200);
 
   document.documentElement.removeAttribute('class');
 }
rename from layout/reftests/css-gradients/aja-linear-2a.html
rename to layout/reftests/css-gradients/aja-linear-2.html
--- a/layout/reftests/css-gradients/aja-linear-2a.html
+++ b/layout/reftests/css-gradients/aja-linear-2.html
@@ -1,10 +1,10 @@
 <!doctype html>
 <!-- Derived from http://a-ja.net/newgrad.html -->
 <style>
 div {
   height: 200px;
   width: 100px;
-  background: -moz-linear-gradient(top left, yellow, blue);
+  background: linear-gradient(to bottom right, yellow, blue);
 }
 </style>
 <div></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/aja-linear-2b.html
+++ /dev/null
@@ -1,10 +0,0 @@
-<!doctype html>
-<!-- Derived from http://a-ja.net/newgrad.html -->
-<style>
-div {
-  height: 200px;
-  width: 100px;
-  background: -moz-linear-gradient(0 0, yellow, blue);
-}
-</style>
-<div></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/aja-linear-2c.html
+++ /dev/null
@@ -1,10 +0,0 @@
-<!doctype html>
-<!-- Derived from http://a-ja.net/newgrad.html -->
-<style>
-div {
-  height: 200px;
-  width: 100px;
-  background: -moz-linear-gradient(top 0px left 0px, yellow, blue);
-}
-</style>
-<div></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/aja-linear-2d.html
+++ /dev/null
@@ -1,10 +0,0 @@
-<!doctype html>
-<!-- Derived from http://a-ja.net/newgrad.html -->
-<style>
-div {
-  height: 200px;
-  width: 100px;
-  background: -moz-linear-gradient(bottom right, blue, yellow);
-}
-</style>
-<div></div>
--- a/layout/reftests/css-gradients/aja-linear-4a.html
+++ b/layout/reftests/css-gradients/aja-linear-4a.html
@@ -1,10 +1,10 @@
 <!doctype html>
 <!-- Derived from http://a-ja.net/newgrad.html -->
 <style>
 div {
   height: 200px;
   width: 100px;
-  background: -moz-linear-gradient(top, yellow, blue, #0f0);
+  background: linear-gradient(yellow, blue, #0f0);
 }
 </style>
 <div></div>
--- a/layout/reftests/css-gradients/aja-linear-4b.html
+++ b/layout/reftests/css-gradients/aja-linear-4b.html
@@ -1,10 +1,10 @@
 <!doctype html>
 <!-- Derived from http://a-ja.net/newgrad.html -->
 <style>
 div {
   height: 200px;
   width: 100px;
-  background: -moz-linear-gradient(top, yellow, blue 50%, #0f0);
+  background: linear-gradient(yellow, blue 50%, #0f0);
 }
 </style>
 <div></div>
--- a/layout/reftests/css-gradients/aja-linear-5a.html
+++ b/layout/reftests/css-gradients/aja-linear-5a.html
@@ -1,10 +1,10 @@
 <!doctype html>
 <!-- Derived from http://a-ja.net/newgrad.html -->
 <style>
 div {
   height: 200px;
   width: 100px;
-  background: -moz-linear-gradient(top, yellow, blue 20%, #0f0);
+  background: linear-gradient(yellow, blue 20%, #0f0);
 }
 </style>
 <div></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/aja-linear-6-ref.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<!doctype html>
-<!-- Derived from http://a-ja.net/newgrad.html -->
-<html class="reftest-wait">
-<head>
-<script>
-function doDraw() {
-  var ctx = document.getElementById('canvas').getContext('2d');
-
-  var grad = ctx.createLinearGradient(20, 30, 80, 170);
-  grad.addColorStop(0, 'yellow');
-  grad.addColorStop(1, 'blue');
-
-  ctx.fillStyle = grad;
-  ctx.fillRect(0,0,100,200);
-
-  document.documentElement.removeAttribute('class');
-}
-</script>
-</head>
-<body onload="doDraw();">
-<canvas id="canvas" width="100" height="200"></canvas>
-</body>
-</html>
deleted file mode 100644
--- a/layout/reftests/css-gradients/aja-linear-6a.html
+++ /dev/null
@@ -1,10 +0,0 @@
-<!doctype html>
-<!-- Derived from http://a-ja.net/newgrad.html -->
-<style>
-div {
-  height: 200px;
-  width: 100px;
-  background: -moz-linear-gradient(20px 30px, yellow, blue);
-}
-</style>
-<div></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/aja-linear-6b.html
+++ /dev/null
@@ -1,10 +0,0 @@
-<!doctype html>
-<!-- Derived from http://a-ja.net/newgrad.html -->
-<style>
-div {
-  height: 200px;
-  width: 100px;
-  background: -moz-linear-gradient(left 20px top 30px, yellow, blue);
-}
-</style>
-<div></div>
--- a/layout/reftests/css-gradients/height-dependence-1-ref.html
+++ b/layout/reftests/css-gradients/height-dependence-1-ref.html
@@ -1,13 +1,13 @@
 <!doctype html>
 <html><head>
 <style>
 html {
-  background-image: -moz-linear-gradient(black, white 20%);
+  background-image: linear-gradient(black, white 20%);
   background-repeat: repeat-x;
 }
 body {
   font-size: 1em;
   padding: 2em;
   margin: 50px auto;
   width: 14em;
   border: 1px solid black;
--- a/layout/reftests/css-gradients/height-dependence-1.html
+++ b/layout/reftests/css-gradients/height-dependence-1.html
@@ -1,13 +1,13 @@
 <!doctype html>
 <html class="reftest-wait"><head>
 <style>
 html {
-  background-image: -moz-linear-gradient(black, white 20%);
+  background-image: linear-gradient(black, white 20%);
   background-repeat: repeat-x;
 }
 body {
   font-size: 1em;
   padding: 2em;
   margin: 50px auto;
   width: 28em;
   border: 1px solid black;
--- a/layout/reftests/css-gradients/height-dependence-2-ref.html
+++ b/layout/reftests/css-gradients/height-dependence-2-ref.html
@@ -1,13 +1,13 @@
 <!doctype html>
 <html><head>
 <style>
 html {
-  background-image: -moz-linear-gradient(black, white 20%);
+  background-image: linear-gradient(black, white 20%);
   background-repeat: repeat-x;
   background-size: 1px 400px;
 }
 body {
   font-size: 1em;
   padding: 2em;
   margin: 50px auto;
   width: 14em;
--- a/layout/reftests/css-gradients/height-dependence-2.html
+++ b/layout/reftests/css-gradients/height-dependence-2.html
@@ -1,13 +1,13 @@
 <!doctype html>
 <html class="reftest-wait"><head>
 <style>
 html {
-  background-image: -moz-linear-gradient(black, white 20%);
+  background-image: linear-gradient(black, white 20%);
   background-repeat: repeat-x;
   background-size: 1px 400px;
 }
 body {
   font-size: 1em;
   padding: 2em;
   margin: 50px auto;
   width: 28em;
--- a/layout/reftests/css-gradients/height-dependence-3-ref.html
+++ b/layout/reftests/css-gradients/height-dependence-3-ref.html
@@ -1,13 +1,13 @@
 <!doctype html>
 <html><head>
 <style>
 html {
-  background-image: -moz-linear-gradient(black, white 20%);
+  background-image: linear-gradient(black, white 20%);
   background-repeat: repeat-x;
   background-size: 1px 80%;
 }
 body {
   font-size: 1em;
   padding: 2em;
   margin: 50px auto;
   width: 14em;
--- a/layout/reftests/css-gradients/height-dependence-3.html
+++ b/layout/reftests/css-gradients/height-dependence-3.html
@@ -1,13 +1,13 @@
 <!doctype html>
 <html class="reftest-wait"><head>
 <style>
 html {
-  background-image: -moz-linear-gradient(black, white 20%);
+  background-image: linear-gradient(black, white 20%);
   background-repeat: repeat-x;
   background-size: 1px 80%;
 }
 body {
   font-size: 1em;
   padding: 2em;
   margin: 50px auto;
   width: 28em;
--- a/layout/reftests/css-gradients/linear-1a.html
+++ b/layout/reftests/css-gradients/linear-1a.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(to right, red 0%, #7777FF 50%, rgb(100, 200, 0) 100%) no-repeat; width: 300px; height: 300px;"><br></div>
+<div style="background: linear-gradient(to right, red 0%, #7777FF 50%, rgb(100, 200, 0) 100%) no-repeat; width: 300px; height: 300px;"><br></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-1b.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: -moz-linear-gradient(left, red 0%, #7777FF 50%, rgb(100, 200, 0) 100%) no-repeat; width: 300px; height: 300px;"><br></div>
--- a/layout/reftests/css-gradients/linear-diagonal-1a.html
+++ b/layout/reftests/css-gradients/linear-diagonal-1a.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(top left -45deg, white, black) no-repeat; width: 300px; height: 300px;"></div>
+<div style="background: linear-gradient(135deg, white, black) no-repeat; width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-diagonal-1b.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: linear-gradient(135deg, white, black) no-repeat; width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-diagonal-1c.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: -moz-linear-gradient(top left, white, black) no-repeat; width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-diagonal-2a.html
+++ b/layout/reftests/css-gradients/linear-diagonal-2a.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(top right -135deg, white, black) no-repeat; width: 300px; height: 300px;"></div>
+<div style="background: linear-gradient(-135deg, white, black) no-repeat; width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-diagonal-2b.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: -moz-linear-gradient(-135deg, white, black) no-repeat; width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-diagonal-2c.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: -moz-linear-gradient(top right, white, black) no-repeat; width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-diagonal-3a.html
+++ b/layout/reftests/css-gradients/linear-diagonal-3a.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(bottom right 135deg, white, black) no-repeat; width: 300px; height: 300px;"></div>
+<div style="background: linear-gradient(-45deg, white, black) no-repeat; width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-diagonal-3b.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: linear-gradient(-45deg, white, black) no-repeat; width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-diagonal-3c.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: -moz-linear-gradient(bottom right, white, black) no-repeat; width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-diagonal-4a.html
+++ b/layout/reftests/css-gradients/linear-diagonal-4a.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(bottom left 45deg, white, black) no-repeat; width: 300px; height: 300px;"></div>
+<div style="background: linear-gradient(45deg, white, black) no-repeat; width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-diagonal-4b.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: -moz-linear-gradient(45deg, white, black) no-repeat; width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-diagonal-4c.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: -moz-linear-gradient(bottom left, white, black) no-repeat; width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-diagonal-5-ref.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: linear-gradient(to top left, white 75%, black); width: 400px; height: 400px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-diagonal-5a.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: -moz-linear-gradient(100px 100px 135deg, white, black); width: 400px; height: 400px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-diagonal-6-ref.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: linear-gradient(to top right, white 75%, black); width: 400px; height: 400px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-diagonal-6a.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: -moz-linear-gradient(300px 100px 45deg, white, black); width: 400px; height: 400px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-diagonal-7-ref.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: linear-gradient(to bottom right, white 75%, black); width: 400px; height: 400px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-diagonal-7a.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: -moz-linear-gradient(300px 300px -45deg, white, black); width: 400px; height: 400px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-diagonal-8-ref.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: linear-gradient(to bottom left, white 75%, black); width: 400px; height: 400px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-diagonal-8a.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: -moz-linear-gradient(100px 300px -135deg, white, black); width: 400px; height: 400px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-diagonal-9-ref.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE html>
-<style>
-.x { width: 200px; height: 100px; display: inline-block; }
-.a { background: -moz-linear-gradient(top -90deg, blue, white, red); }
-.e { background: -moz-linear-gradient(top right -2.03444394rad, blue, white, red); }
-.g { background: -moz-linear-gradient(right 180deg, blue, white, red); }
-.i { background: -moz-linear-gradient(bottom right 2.03444394rad, blue, white, red); }
-.k { background: -moz-linear-gradient(bottom 90deg, blue, white, red); }
-.m { background: -moz-linear-gradient(bottom left 1.10714872rad, blue, white, red); }
-.o { background: -moz-linear-gradient(left 0deg, blue, white, red); }
-.q { background: -moz-linear-gradient(top left -1.10714872rad, blue, white, red); }
-</style>
-<div class="x a"></div>
-<div class="x e"></div>
-<div class="x g"></div>
-<div class="x i"></div>
-<div class="x k"></div>
-<div class="x m"></div>
-<div class="x o"></div>
-<div class="x q"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-diagonal-9a.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE html>
-<style>
-.x { width: 200px; height: 100px; display: inline-block; }
-.a { background: linear-gradient(to bottom, blue, white, red); }
-.e { background: linear-gradient(to bottom left, blue, white, red); }
-.g { background: linear-gradient(to left, blue, white, red); }
-.i { background: linear-gradient(to top left, blue, white, red); }
-.k { background: linear-gradient(to top, blue, white, red); }
-.m { background: linear-gradient(to top right, blue, white, red); }
-.o { background: linear-gradient(to right, blue, white, red); }
-.q { background: linear-gradient(to bottom right, blue, white, red); }
-</style>
-<div class="x a"></div>
-<div class="x e"></div>
-<div class="x g"></div>
-<div class="x i"></div>
-<div class="x k"></div>
-<div class="x m"></div>
-<div class="x o"></div>
-<div class="x q"></div>
--- a/layout/reftests/css-gradients/linear-flipped-1-ref.html
+++ b/layout/reftests/css-gradients/linear-flipped-1-ref.html
@@ -1,2 +1,2 @@
 <!DOCTYPE HTML>
-<div style="height:100px; background:-moz-linear-gradient(bottom, black, white);"></div>
+<div style="height:100px; background:linear-gradient(to top, black, white);"></div>
--- a/layout/reftests/css-gradients/linear-flipped-1.html
+++ b/layout/reftests/css-gradients/linear-flipped-1.html
@@ -1,2 +1,2 @@
 <!DOCTYPE HTML>
-<div style="height:100px; background:-moz-linear-gradient(top, black, white); transform:scale(1,-1);"></div>
+<div style="height:100px; background:linear-gradient(to bottom, black, white); transform:scale(1,-1);"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-keywords-1b.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: -moz-linear-gradient(left top, #0000ff, #000000) no-repeat; width: 300px; height: 300px;"><br></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-mix-ref.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml" 
-      class="reftest-wait">
-<head>
-<script>
-function doDraw() {
-  var ctx = document.getElementById('canvas').getContext('2d');
-
-  var grad = ctx.createLinearGradient(120,20,300,20);
-  grad.addColorStop(0, '#0000ff');
-  grad.addColorStop(1, '#000000');
-
-  ctx.fillStyle = grad;
-  ctx.fillRect(0,0,300,300);
-
-  ctx = document.getElementById('canvas2').getContext('2d');
-
-  grad = ctx.createLinearGradient(30,300,30,0);
-  grad.addColorStop(0, '#00ff00');
-  grad.addColorStop(1, '#000000');
-
-  ctx.fillStyle = grad;
-  ctx.fillRect(0,0,300,300);
-
-  document.documentElement.removeAttribute('class');
-}
-</script>
-</head>
-<body onload="doDraw();">
-<canvas id="canvas" width="300" height="300" style="position: absolute; top: 30px; left: 30px;"></canvas>
-<br/><br/>
-<canvas id="canvas2" width="300" height="300" style="position: absolute; top: 360px; left: 30px;"></canvas>
-</body>
-</html>
-
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-mix.html
+++ /dev/null
@@ -1,3 +0,0 @@
-<div style="background: -moz-linear-gradient(40% 20px 0deg, #0000ff, #000000) no-repeat; width: 300px; height: 300px; position: absolute; top: 30px; left: 30px;"><br></div>
-
-<div style="background: -moz-linear-gradient(10% bottom 90deg, #00ff00, #000000) no-repeat; width: 300px; height: 300px; position: absolute; top: 360px; left: 30px;"><br></div>
--- a/layout/reftests/css-gradients/linear-onestopposition-1.html
+++ b/layout/reftests/css-gradients/linear-onestopposition-1.html
@@ -1,12 +1,12 @@
 <!DOCTYPE HTML>
 <title>Test for linear-gradient() with all stops at the same position</title>
 <style>
 
 div {
   width: 200px;
   height: 200px;
-  background-image: -moz-linear-gradient(left, blue 25%, orange 25%);
+  background-image: linear-gradient(to right, blue 25%, orange 25%);
 }
 
 </style>
 <div></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-percent-ref.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml" 
-      class="reftest-wait">
-<head>
-<script>
-function doDraw() {
-  var ctx = document.getElementById('canvas').getContext('2d');
-
-  var grad = ctx.createLinearGradient(30,60,300,60);
-  grad.addColorStop(0, '#0000ff');
-  grad.addColorStop(1, '#000000');
-
-  ctx.fillStyle = grad;
-  ctx.fillRect(0,0,300,300);
-
-  document.documentElement.removeAttribute('class');
-}
-</script>
-</head>
-<body onload="doDraw();">
-<canvas id="canvas" width="300" height="300"/>
-</body>
-</html>
-
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-percent.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: -moz-linear-gradient(10% 20% 0deg, #0000ff, #000000) no-repeat; width: 300px; height: 300px;"><br></div>
--- a/layout/reftests/css-gradients/linear-position-1a.html
+++ b/layout/reftests/css-gradients/linear-position-1a.html
@@ -1,2 +1,2 @@
 <body style="margin:0;">
-<div style="background: -moz-linear-gradient(left, white, black) no-repeat; background-position:-200px 0; width: 300px; height: 300px;"><br></div>
+<div style="background: linear-gradient(to right, white, black) no-repeat; background-position:-200px 0; width: 300px; height: 300px;"><br></div>
--- a/layout/reftests/css-gradients/linear-repeat-1a.html
+++ b/layout/reftests/css-gradients/linear-repeat-1a.html
@@ -1,2 +1,2 @@
-<div style="background: -moz-linear-gradient(black, black 50%, white 50%, white);
+<div style="background: linear-gradient(black, black 50%, white 50%, white);
             background-size: 100px 100px; width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-repeat-1b.html
+++ b/layout/reftests/css-gradients/linear-repeat-1b.html
@@ -1,2 +1,2 @@
-<div style="background: -moz-linear-gradient(black, black 50px, white 50px, white 100px, black 100px, black 150px, white 150px, white 200px);
+<div style="background: linear-gradient(black, black 50px, white 50px, white 100px, black 100px, black 150px, white 150px, white 200px);
             background-size: 100px 200px; width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-repeat-1c.html
+++ b/layout/reftests/css-gradients/linear-repeat-1c.html
@@ -1,4 +1,4 @@
-<div style="background: -moz-linear-gradient(white, white 50%, black 50%, black);
+<div style="background: linear-gradient(white, white 50%, black 50%, black);
             background-size: 100px 100px;
             background-position: 0 -50px;
             width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-repeat-1d.html
+++ b/layout/reftests/css-gradients/linear-repeat-1d.html
@@ -1,3 +1,3 @@
-<div style="background: -moz-linear-gradient(white, white 50px, black 50px, black 100px, white 100px, white 150px, black 150px, black 200px);
+<div style="background: linear-gradient(white, white 50px, black 50px, black 100px, white 100px, white 150px, black 150px, black 200px);
             background-size: 100px 200px; background-position: 0 -50px;
             width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-repeat-1e.html
+++ b/layout/reftests/css-gradients/linear-repeat-1e.html
@@ -1,3 +1,3 @@
-<div style="background: -moz-linear-gradient(black, black 50%, white 50%, white);
+<div style="background: linear-gradient(black, black 50%, white 50%, white);
             background-size: 300px 100px; background-repeat: repeat-y;
             width: 500px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-repeat-1f.html
+++ b/layout/reftests/css-gradients/linear-repeat-1f.html
@@ -1,9 +1,9 @@
-<div style="background: -moz-linear-gradient(black, black 50px, white 50px, white 100px, black 100px, black 150px, white 150px, white 200px);
+<div style="background: linear-gradient(black, black 50px, white 50px, white 100px, black 100px, black 150px, white 150px, white 200px);
             background-size: 100px 200px; background-repeat: repeat-x;
             width: 300px; height: 800px;
             margin-bottom: -600px;"></div>
 <!-- making the gradient actually be 300px high isn't reliable since
      the stop positions cannot be exactly represented and rounding errors
      creep in. So just let the gradient be 200px high and pad out to match
      the reference. -->
 <div style="background: black; width: 300px; height: 50px;"></div>
--- a/layout/reftests/css-gradients/linear-repeat-1g.html
+++ b/layout/reftests/css-gradients/linear-repeat-1g.html
@@ -1,10 +1,10 @@
 <body style="overflow:hidden">
-<div style="background: -moz-linear-gradient(black, black 50px, white 50px, white 100px, black 100px, black 150px, white 150px, white 200px);
+<div style="background: linear-gradient(black, black 50px, white 50px, white 100px, black 100px, black 150px, white 150px, white 200px);
             background-size: 300px 200px; background-repeat: no-repeat;
             width: 800px; height: 800px;
             margin-bottom: -600px;"></div>
 <!-- making the gradient actually be 300px high isn't reliable since
      the stop positions cannot be exactly represented and rounding errors
      creep in. So just let the gradient be 200px high and pad out to match
      the reference. -->
 <div style="background: black; width: 300px; height: 50px;"></div>
--- a/layout/reftests/css-gradients/linear-size-1-ref.html
+++ b/layout/reftests/css-gradients/linear-size-1-ref.html
@@ -1,3 +1,3 @@
-<div style="background: -moz-linear-gradient(white, black) no-repeat; width: 300px; height: 100px;"></div>
-<div style="background: -moz-linear-gradient(white, black) no-repeat; width: 300px; height: 100px;"></div>
-<div style="background: -moz-linear-gradient(white, black) no-repeat; width: 300px; height: 100px;"></div>
+<div style="background: linear-gradient(white, black) no-repeat; width: 300px; height: 100px;"></div>
+<div style="background: linear-gradient(white, black) no-repeat; width: 300px; height: 100px;"></div>
+<div style="background: linear-gradient(white, black) no-repeat; width: 300px; height: 100px;"></div>
--- a/layout/reftests/css-gradients/linear-size-1a.html
+++ b/layout/reftests/css-gradients/linear-size-1a.html
@@ -1,2 +1,2 @@
-<div style="background: -moz-linear-gradient(white, black);
+<div style="background: linear-gradient(white, black);
             background-size: 300px 100px; width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-stops-1-ref.html
+++ b/layout/reftests/css-gradients/linear-stops-1-ref.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(white 0%, red 20%, green 40%, blue 60%, yellow 80%, black 100%) no-repeat; width: 300px; height: 300px;"></div>
+<div style="background: linear-gradient(white 0%, red 20%, green 40%, blue 60%, yellow 80%, black 100%) no-repeat; width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-stops-1a.html
+++ b/layout/reftests/css-gradients/linear-stops-1a.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(white, red, green, blue, yellow, black) no-repeat; width: 300px; height: 300px;"></div>
+<div style="background: linear-gradient(white, red, green, blue, yellow, black) no-repeat; width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-stops-1b.html
+++ b/layout/reftests/css-gradients/linear-stops-1b.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(white 0, red 60px, green 120px, blue 180px, yellow 240px, black 300px) no-repeat; width: 300px; height: 300px;"></div>
+<div style="background: linear-gradient(white 0, red 60px, green 120px, blue 180px, yellow 240px, black 300px) no-repeat; width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-stops-1c.html
+++ b/layout/reftests/css-gradients/linear-stops-1c.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(white, red 20%, green, blue 60%, yellow, black) no-repeat; width: 300px; height: 300px;"></div>
+<div style="background: linear-gradient(white, red 20%, green, blue 60%, yellow, black) no-repeat; width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-stops-1d.html
+++ b/layout/reftests/css-gradients/linear-stops-1d.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(white, red, green 40%, red 40%, green 40%, blue, yellow, black) no-repeat; width: 300px; height: 300px;"></div>
+<div style="background: linear-gradient(white, red, green 40%, red 40%, green 40%, blue, yellow, black) no-repeat; width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-stops-1e.html
+++ b/layout/reftests/css-gradients/linear-stops-1e.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(white, red, green 40%, red 20%, green 40%, blue, yellow, black) no-repeat; width: 300px; height: 300px;"></div>
+<div style="background: linear-gradient(white, red, green 40%, red 20%, green 40%, blue, yellow, black) no-repeat; width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-stops-1f.html
+++ b/layout/reftests/css-gradients/linear-stops-1f.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(white, red, green 40%, red 40%, green 20%, blue, yellow, black) no-repeat; width: 300px; height: 300px;"></div>
+<div style="background: linear-gradient(white, red, green 40%, red 40%, green 20%, blue, yellow, black) no-repeat; width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-vertical-1a.html
+++ b/layout/reftests/css-gradients/linear-vertical-1a.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(white, black) no-repeat; width: 300px; height: 300px;"></div>
+<div style="background: linear-gradient(white, black) no-repeat; width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-vertical-1b.html
+++ b/layout/reftests/css-gradients/linear-vertical-1b.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(top left -90deg, white, black) no-repeat; width: 300px; height: 300px;"></div>
+<div style="background: linear-gradient(to bottom, white, black) no-repeat; width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-vertical-1c.html
+++ b/layout/reftests/css-gradients/linear-vertical-1c.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(white 0%, white 0%, black) no-repeat; width: 300px; height: 300px;"></div>
+<div style="background: linear-gradient(white 0%, white 0%, black) no-repeat; width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-vertical-1d.html
+++ b/layout/reftests/css-gradients/linear-vertical-1d.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(white 0%, white -20%, black) no-repeat; width: 300px; height: 300px;"></div>
+<div style="background: linear-gradient(white 0%, white -20%, black) no-repeat; width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-vertical-1e.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: linear-gradient(to bottom, white, black) no-repeat; width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/linear-vertical-subpixel-1-ref.html
+++ b/layout/reftests/css-gradients/linear-vertical-subpixel-1-ref.html
@@ -1,15 +1,15 @@
 <!DOCTYPE html>
 <html>
 <head>
 <style>
 div {
   margin-top: 21px;
   height: 30px;
-  background-image: -moz-linear-gradient(center top, black, white);
+  background-image: linear-gradient(black, white);
 }
 </style>
 </head>
 <body>
 <div></div>
 </body>
 </html>
--- a/layout/reftests/css-gradients/linear-vertical-subpixel-1.html
+++ b/layout/reftests/css-gradients/linear-vertical-subpixel-1.html
@@ -1,15 +1,15 @@
 <!DOCTYPE html>
 <html>
 <head>
 <style>
 div {
   margin-top: 20.7px;
   height: 30px;
-  background-image: -moz-linear-gradient(center top, black, white);
+  background-image: linear-gradient(black, white);
 }
 </style>
 </head>
 <body>
 <div></div>
 </body>
 </html>
--- a/layout/reftests/css-gradients/linear-viewport-ref.html
+++ b/layout/reftests/css-gradients/linear-viewport-ref.html
@@ -1,1 +1,1 @@
-<body style="border: 0; margin: 0; padding: 0;"><div style="background: -moz-linear-gradient(blue, aqua) no-repeat; width: 100%; height: 100%;">&nbsp;</div></body>
+<body style="border: 0; margin: 0; padding: 0;"><div style="background: linear-gradient(blue, aqua) no-repeat; width: 100%; height: 100%;">&nbsp;</div></body>
--- a/layout/reftests/css-gradients/linear-viewport.html
+++ b/layout/reftests/css-gradients/linear-viewport.html
@@ -1,2 +1,2 @@
 <!-- bug 509681 -->
-<body style="background: -moz-linear-gradient(blue, aqua) fixed no-repeat;">
+<body style="background: linear-gradient(blue, aqua) fixed no-repeat;">
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-zero-length-1-ref.html
+++ /dev/null
@@ -1,2 +0,0 @@
-<div style="background: black; width: 300px; height: 300px;"></div>
-<div style="background: black; width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-zero-length-1a.html
+++ /dev/null
@@ -1,2 +0,0 @@
-<div style="background: -moz-linear-gradient(150px 150px, white, black); width: 300px; height: 300px;"></div>
-<div style="background: -moz-repeating-linear-gradient(150px 150px, white, black); width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-zero-length-1b.html
+++ /dev/null
@@ -1,2 +0,0 @@
-<div style="background: -moz-linear-gradient(150px 150px, white, white 100px, black); width: 300px; height: 300px;"></div>
-<div style="background: -moz-repeating-linear-gradient(150px 150px, white, white 100px, black); width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/linear-zero-length-1c.html
+++ /dev/null
@@ -1,2 +0,0 @@
-<div style="background: -moz-linear-gradient(center, white, black 50%); width: 300px; height: 300px;"></div>
-<div style="background: -moz-repeating-linear-gradient(center, white, black 50%); width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/radial-1c.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: -moz-radial-gradient(100px 100px, closest-side, #ff0000 25px, #0000ff 50px) no-repeat; width: 300px; height: 300px;"><br></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/radial-2e.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: -moz-radial-gradient(100px 100px, closest-side, yellow -10px, #ff0000 0, #0000ff 50px); width: 300px; height: 300px;"><br></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/radial-2f.html
+++ /dev/null
@@ -1,3 +0,0 @@
-<!-- This test checks that adjustment of stop positions to be non-negative
-     happens after the calculation of implied stop positions -->
-<div style="background: -moz-radial-gradient(100px 100px, closest-side, #ff0000 -50px, #ff0000, #0000ff 50px); width: 300px; height: 300px;"><br></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/radial-onestopposition-1c.html
+++ /dev/null
@@ -1,12 +0,0 @@
-<!DOCTYPE HTML>
-<title>Test for radial-gradient() with all stops at the same position</title>
-<style>
-
-div {
-  width: 200px;
-  height: 200px;
-  background-image: -moz-radial-gradient(contain, blue 25%, orange 25%);
-}
-
-</style>
-<div></div>
--- a/layout/reftests/css-gradients/radial-shape-closest-corner-1-ref.html
+++ b/layout/reftests/css-gradients/radial-shape-closest-corner-1-ref.html
@@ -1,9 +1,9 @@
 <style>div { position:absolute; width:200px; height:200px; }</style>
 <div style="background: radial-gradient(closest-side circle at 60px 80px, white, black 100px); top:10px; left:10px;"></div>
 <div style="background: radial-gradient(closest-side circle at 140px 80px, white, black 100px); top:10px; left:220px;"></div>
 <div style="background: radial-gradient(closest-side circle at 80px 60px, white, black 100px); top:220px; left:10px;"></div>
 <div style="background: radial-gradient(closest-side circle at 80px 140px, white, black 100px); top:220px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(60px 80px 90deg, closest-corner, white, black 80px); top:430px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(140px 80px 90deg, closest-corner, white, black 80px); top:430px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(80px 60px 90deg, ellipse closest-corner, white, black 60px); top:640px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(80px 140px 90deg, ellipse closest-corner, white, black 60px); top:640px; left:220px;"></div>
+<div style="background: radial-gradient(closest-corner at 60px 80px, white, black 60px); top:430px; left:10px;"></div>
+<div style="background: radial-gradient(closest-corner at 140px 80px, white, black 60px); top:430px; left:220px;"></div>
+<div style="background: radial-gradient(ellipse closest-corner at 80px 60px, white, black 80px); top:640px; left:10px;"></div>
+<div style="background: radial-gradient(ellipse closest-corner at 80px 140px, white, black 80px); top:640px; left:220px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/radial-shape-closest-corner-1c.html
+++ /dev/null
@@ -1,9 +0,0 @@
-<style>div { position:absolute; width:200px; height:200px; }</style>
-<div style="background: -moz-radial-gradient(60px 80px, circle closest-corner, white, black); top:10px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(140px 80px, circle closest-corner, white, black); top:10px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(80px 60px, circle closest-corner, white, black); top:220px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(80px 140px, circle closest-corner, white, black); top:220px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(60px 80px, ellipse closest-corner, white, black 60px); top:430px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(140px 80px, ellipse closest-corner, white, black 60px); top:430px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(80px 60px, closest-corner, white, black 80px); top:640px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(80px 140px, closest-corner, white, black 80px); top:640px; left:220px;"></div>
--- a/layout/reftests/css-gradients/radial-shape-closest-side-1-ref.html
+++ b/layout/reftests/css-gradients/radial-shape-closest-side-1-ref.html
@@ -1,9 +1,9 @@
 <style>div { position:absolute; width:200px; height:200px; }</style>
-<div style="background: -moz-radial-gradient(50px 80px, circle closest-side, white, black 50px); top:10px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(150px 80px, circle closest-side, white, black 50px); top:10px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(80px 50px, circle closest-side, white, black 50px); top:220px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(80px 150px, circle closest-side, white, black 50px); top:220px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(20px 20px, circle closest-side, white, black 20px); height:100px; -moz-transform-origin:0 0; -moz-transform:scale(1.0, 2.0); top:430px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(180px 20px, circle closest-side, white, black 20px); height:100px; -moz-transform-origin:0 0; -moz-transform:scale(1.0, 2.0); top:430px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(20px 20px, circle closest-side, white, black 20px); width:100px; -moz-transform-origin:0 0; -moz-transform:scale(2.0, 1.0); top:640px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(20px 180px, circle closest-side, white, black 20px); width:100px; -moz-transform-origin:0 0; -moz-transform:scale(2.0, 1.0); top:640px; left:220px;"></div>
+<div style="background: radial-gradient(circle closest-side at 50px 80px, white, black 50px); top:10px; left:10px;"></div>
+<div style="background: radial-gradient(circle closest-side at 150px 80px, white, black 50px); top:10px; left:220px;"></div>
+<div style="background: radial-gradient(circle closest-side at 80px 50px, white, black 50px); top:220px; left:10px;"></div>
+<div style="background: radial-gradient(circle closest-side at 80px 150px, white, black 50px); top:220px; left:220px;"></div>
+<div style="background: radial-gradient(circle closest-side at 20px 20px, white, black 20px); height:100px; -moz-transform-origin:0 0; -moz-transform:scale(1.0, 2.0); top:430px; left:10px;"></div>
+<div style="background: radial-gradient(circle closest-side at 180px 20px, white, black 20px); height:100px; -moz-transform-origin:0 0; -moz-transform:scale(1.0, 2.0); top:430px; left:220px;"></div>
+<div style="background: radial-gradient(circle closest-side at 20px 20px, white, black 20px); width:100px; -moz-transform-origin:0 0; -moz-transform:scale(2.0, 1.0); top:640px; left:10px;"></div>
+<div style="background: radial-gradient(circle closest-side at 20px 180px, white, black 20px); width:100px; -moz-transform-origin:0 0; -moz-transform:scale(2.0, 1.0); top:640px; left:220px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/radial-shape-closest-side-1c.html
+++ /dev/null
@@ -1,9 +0,0 @@
-<style>div { position:absolute; width:200px; height:200px; }</style>
-<div style="background: -moz-radial-gradient(50px 80px, circle closest-side, white, black); top:10px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(150px 80px, circle closest-side, white, black); top:10px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(80px 50px, circle closest-side, white, black); top:220px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(80px 150px, circle closest-side, white, black); top:220px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(20px 40px, ellipse closest-side, white, black); top:430px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(180px 40px, ellipse closest-side, white, black); top:430px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(40px 20px, closest-side, white, black); top:640px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(40px 180px, closest-side, white, black); top:640px; left:220px;"></div>
--- a/layout/reftests/css-gradients/radial-shape-farthest-corner-1-ref.html
+++ b/layout/reftests/css-gradients/radial-shape-farthest-corner-1-ref.html
@@ -1,9 +1,9 @@
 <style>div { position:absolute; width:200px; height:200px; }</style>
 <div style="background: radial-gradient(circle farthest-side at 40px 80px, white, black 200px); top:10px; left:10px;"></div>
 <div style="background: radial-gradient(farthest-side circle at 160px 80px, white, black 200px); top:10px; left:220px;"></div>
 <div style="background: radial-gradient(circle farthest-side at 80px 40px, white, black 200px); top:220px; left:10px;"></div>
 <div style="background: radial-gradient(farthest-side circle at 80px 160px, white, black 200px); top:220px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(60px 80px 90deg, farthest-corner, white, black 120px); top:430px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(140px 80px 90deg, farthest-corner, white, black 120px); top:430px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(80px 60px 90deg, ellipse farthest-corner, white, black 140px); top:640px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(80px 140px 90deg, ellipse farthest-corner, white, black 140px); top:640px; left:220px;"></div>
+<div style="background: radial-gradient(farthest-corner at 60px 80px, white, black 140px); top:430px; left:10px;"></div>
+<div style="background: radial-gradient(farthest-corner at 140px 80px, white, black 140px); top:430px; left:220px;"></div>
+<div style="background: radial-gradient(ellipse farthest-corner at 80px 60px, white, black 120px); top:640px; left:10px;"></div>
+<div style="background: radial-gradient(ellipse farthest-corner at 80px 140px, white, black 120px); top:640px; left:220px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/radial-shape-farthest-corner-1c.html
+++ /dev/null
@@ -1,9 +0,0 @@
-<style>div { position:absolute; width:200px; height:200px; }</style>
-<div style="background: -moz-radial-gradient(40px 80px, circle farthest-corner, white, black); top:10px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(160px 80px, circle farthest-corner, white, black); top:10px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(80px 40px, circle farthest-corner, white, black); top:220px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(80px 160px, circle farthest-corner, white, black); top:220px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(60px 80px, ellipse farthest-corner, white, black 140px); top:430px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(140px 80px, ellipse farthest-corner, white, black 140px); top:430px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(80px 60px, farthest-corner, white, black 120px); top:640px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(80px 140px, farthest-corner, white, black 120px); top:640px; left:220px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/radial-shape-farthest-side-1c.html
+++ /dev/null
@@ -1,9 +0,0 @@
-<style>div { position:absolute; width:200px; height:200px; }</style>
-<div style="background: -moz-radial-gradient(50px 80px, circle farthest-side, white, black); top:10px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(150px 80px, circle farthest-side, white, black); top:10px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(80px 50px, circle farthest-side, white, black); top:220px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(80px 150px, circle farthest-side, white, black); top:220px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(80px 40px, farthest-side, white, black); height:100px; top:430px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(120px 60px, farthest-side, white, black); height:100px; top:430px; left:220px;"></div>
-<div style="background: -moz-radial-gradient(40px 80px, ellipse farthest-side, white, black); width:100px; top:640px; left:10px;"></div>
-<div style="background: -moz-radial-gradient(60px 120px, ellipse farthest-side, white, black); width:100px; top:640px; left:220px;"></div>
--- a/layout/reftests/css-gradients/radial-size-1a.html
+++ b/layout/reftests/css-gradients/radial-size-1a.html
@@ -1,2 +1,2 @@
-<div style="background: -moz-radial-gradient(white, black);
+<div style="background: radial-gradient(white, black);
             background-size: 300px 100px; width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/radial-zero-length-1g.html
+++ /dev/null
@@ -1,2 +0,0 @@
-<div style="background: -moz-radial-gradient(left, circle closest-side, white, black); width: 300px; height: 300px;"></div>
-<div style="background: -moz-repeating-radial-gradient(left, circle closest-side, white, black); width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/radial-zero-length-1h.html
+++ /dev/null
@@ -1,2 +0,0 @@
-<div style="background: -moz-radial-gradient(left, circle closest-side, red, white 100px, black); width: 300px; height: 300px;"></div>
-<div style="background: -moz-repeating-radial-gradient(left, circle closest-side, red, white 100px, black); width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/radial-zero-length-1i.html
+++ /dev/null
@@ -1,2 +0,0 @@
-<div style="background: -moz-radial-gradient(left, ellipse closest-side, red, white 100px, black); width: 300px; height: 300px;"></div>
-<div style="background: -moz-repeating-radial-gradient(left, ellipse closest-side, red, white 100px, black); width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/radial-zero-length-1j.html
+++ /dev/null
@@ -1,2 +0,0 @@
-<div style="background: -moz-radial-gradient(top, ellipse closest-side, red, white 100px, black); width: 300px; height: 300px;"></div>
-<div style="background: -moz-repeating-radial-gradient(top, ellipse closest-side, red, white 100px, black); width: 300px; height: 300px;"></div>
--- a/layout/reftests/css-gradients/reftest.list
+++ b/layout/reftests/css-gradients/reftest.list
@@ -1,155 +1,105 @@
-fuzzy-if(!contentSameGfxBackendAsCanvas,4,88500) fuzzy-if(azureSkiaGL||skiaContent,4,89700) fails-if(stylo) == linear-1a.html linear-1-ref.html
-fuzzy-if(!contentSameGfxBackendAsCanvas,4,88500) fuzzy-if(azureSkiaGL||skiaContent,4,89700) fails-if(stylo) == linear-1b.html linear-1-ref.html
+fuzzy-if(!contentSameGfxBackendAsCanvas,4,88500) fuzzy-if(azureSkiaGL||skiaContent,4,89700) == linear-1a.html linear-1-ref.html
 fuzzy-if(!contentSameGfxBackendAsCanvas,2,88500) fuzzy-if(azureSkiaGL,2,89997) fuzzy-if(skiaContent,1,16000) == linear-keywords-1a.html linear-keywords-1-ref.html
-fuzzy-if(!contentSameGfxBackendAsCanvas,2,88500) fuzzy-if(azureSkiaGL,2,89997) fuzzy-if(skiaContent,1,16000) fails-if(stylo) == linear-keywords-1b.html linear-keywords-1-ref.html
-fuzzy-if(!contentSameGfxBackendAsCanvas,2,88500) fuzzy-if(skiaContent,1,18000) fails-if(stylo) == linear-percent.html linear-percent-ref.html
-fuzzy-if(!contentSameGfxBackendAsCanvas,4,92400) fuzzy-if(azureSkiaGL||skiaContent,3,143400) fuzzy-if(Android,4,93000) fails-if(stylo) == linear-mix.html linear-mix-ref.html
-fails-if(stylo) == linear-diagonal-1a.html linear-diagonal-1-ref.html
-== linear-diagonal-1b.html linear-diagonal-1-ref.html
-fails-if(stylo) == linear-diagonal-1c.html linear-diagonal-1-ref.html
-fails-if(stylo) == linear-diagonal-2a.html linear-diagonal-2-ref.html
-fails-if(stylo) == linear-diagonal-2b.html linear-diagonal-2-ref.html
-fails-if(stylo) == linear-diagonal-2c.html linear-diagonal-2-ref.html
-fails-if(stylo) == linear-diagonal-3a.html linear-diagonal-3-ref.html
-== linear-diagonal-3b.html linear-diagonal-3-ref.html
-fails-if(stylo) == linear-diagonal-3c.html linear-diagonal-3-ref.html
-fails-if(stylo) == linear-diagonal-4a.html linear-diagonal-4-ref.html
-fails-if(stylo) == linear-diagonal-4b.html linear-diagonal-4-ref.html
-fails-if(stylo) == linear-diagonal-4c.html linear-diagonal-4-ref.html
+== linear-diagonal-1a.html linear-diagonal-1-ref.html
+== linear-diagonal-2a.html linear-diagonal-2-ref.html
+== linear-diagonal-3a.html linear-diagonal-3-ref.html
+== linear-diagonal-4a.html linear-diagonal-4-ref.html
 == linear-premul.html linear-premul-ref.html
 
-# these tests uses a similar gradient over different bounds. It's perfectly
-# reasonable to expect implementations to give slightly different results
-# if the gradients are not being normalized. Skia uses a lookup table for
-# gradients so it will have less precision when drawing a larger gradient
-fuzzy(2,11410) fuzzy-if(skiaContent,4,16000) fails-if(stylo) == linear-diagonal-5a.html linear-diagonal-5-ref.html
-fuzzy(2,11568) fuzzy-if(skiaContent,8,20000) fails-if(stylo) == linear-diagonal-6a.html linear-diagonal-6-ref.html
-fuzzy(2,11605) fuzzy-if(skiaContent,8,20000) fails-if(stylo) == linear-diagonal-7a.html linear-diagonal-7-ref.html
-fuzzy(2,11407) fuzzy-if(skiaContent,4,16000) fails-if(stylo) == linear-diagonal-8a.html linear-diagonal-8-ref.html
-
-fuzzy-if(cocoaWidget,4,29437) fuzzy-if(skiaContent,2,1700) == linear-diagonal-9a.html linear-diagonal-9-ref.html
-fuzzy(1,800000) fails-if(stylo) == linear-flipped-1.html linear-flipped-1-ref.html
-fails-if(stylo) == linear-position-1a.html linear-position-1-ref.html
-fails-if(stylo) == linear-repeat-1a.html linear-repeat-1-ref.html
-fails-if(d2d) fails-if(stylo) == linear-repeat-1b.html linear-repeat-1-ref.html # bug 582236
-fails-if(stylo) == linear-repeat-1c.html linear-repeat-1-ref.html
-fails-if(d2d) fails-if(stylo) == linear-repeat-1d.html linear-repeat-1-ref.html # bug 582236
-fails-if(stylo) == linear-repeat-1e.html linear-repeat-1-ref.html
-fails-if(d2d) fails-if(stylo) == linear-repeat-1f.html linear-repeat-1-ref.html # bug 582236
-fails-if(d2d) fails-if(stylo) == linear-repeat-1g.html linear-repeat-1-ref.html # bug 582236
+fuzzy(1,800000) == linear-flipped-1.html linear-flipped-1-ref.html
+== linear-position-1a.html linear-position-1-ref.html
+== linear-repeat-1a.html linear-repeat-1-ref.html
+fails-if(d2d) == linear-repeat-1b.html linear-repeat-1-ref.html # bug 582236
+== linear-repeat-1c.html linear-repeat-1-ref.html
+fails-if(d2d) == linear-repeat-1d.html linear-repeat-1-ref.html # bug 582236
+== linear-repeat-1e.html linear-repeat-1-ref.html
+fails-if(d2d) == linear-repeat-1f.html linear-repeat-1-ref.html # bug 582236
+fails-if(d2d) == linear-repeat-1g.html linear-repeat-1-ref.html # bug 582236
 fuzzy-if(skiaContent,1,500) == linear-rotated-1.html linear-rotated-1-ref.html
-fuzzy-if(winWidget,1,36000) fuzzy-if(skiaContent,1,45000) fails-if(stylo) == linear-size-1a.html linear-size-1-ref.html
-fails-if(stylo) == linear-stops-1a.html linear-stops-1-ref.html
-fails-if(stylo) == linear-stops-1b.html linear-stops-1-ref.html
-fails-if(stylo) == linear-stops-1c.html linear-stops-1-ref.html
-fails-if(stylo) == linear-stops-1d.html linear-stops-1-ref.html
-fails-if(stylo) == linear-stops-1e.html linear-stops-1-ref.html
-fails-if(stylo) == linear-stops-1f.html linear-stops-1-ref.html
-fuzzy-if(!contentSameGfxBackendAsCanvas,3,88500) fuzzy-if(azureSkiaGL||skiaContent,3,89700) fails-if(stylo) == linear-vertical-1a.html linear-vertical-1-ref.html
-fuzzy-if(!contentSameGfxBackendAsCanvas,3,88500) fuzzy-if(azureSkiaGL||skiaContent,3,89700) fails-if(stylo) == linear-vertical-1b.html linear-vertical-1-ref.html
-fuzzy-if(!contentSameGfxBackendAsCanvas,3,88500) fuzzy-if(azureSkiaGL||skiaContent,3,89700) fails-if(stylo) == linear-vertical-1c.html linear-vertical-1-ref.html
-fuzzy-if(!contentSameGfxBackendAsCanvas,3,88500) fuzzy-if(azureSkiaGL||skiaContent,3,89700) fails-if(stylo) == linear-vertical-1d.html linear-vertical-1-ref.html
-fuzzy-if(!contentSameGfxBackendAsCanvas,3,88500) fuzzy-if(azureSkiaGL||skiaContent,3,89700) == linear-vertical-1e.html linear-vertical-1-ref.html
-fails-if(stylo) == linear-vertical-subpixel-1.html linear-vertical-subpixel-1-ref.html
-fails-if(stylo) == linear-viewport.html linear-viewport-ref.html
-fails-if(OSX==1010&&!skiaContent) fuzzy-if(Android,4,248) fails-if(stylo) == linear-zero-length-1a.html linear-zero-length-1-ref.html
-fails-if(OSX==1010&&!skiaContent) fuzzy-if(Android,4,248) fails-if(stylo) == linear-zero-length-1b.html linear-zero-length-1-ref.html
-fails-if(OSX==1010&&!skiaContent) fuzzy-if(Android,4,248) fails-if(stylo) == linear-zero-length-1c.html linear-zero-length-1-ref.html
+fuzzy-if(winWidget,1,36000) fuzzy-if(skiaContent,1,45000) == linear-size-1a.html linear-size-1-ref.html
+== linear-stops-1a.html linear-stops-1-ref.html
+== linear-stops-1b.html linear-stops-1-ref.html
+== linear-stops-1c.html linear-stops-1-ref.html
+== linear-stops-1d.html linear-stops-1-ref.html
+== linear-stops-1e.html linear-stops-1-ref.html
+== linear-stops-1f.html linear-stops-1-ref.html
+fuzzy-if(!contentSameGfxBackendAsCanvas,3,88500) fuzzy-if(azureSkiaGL||skiaContent,3,89700) == linear-vertical-1a.html linear-vertical-1-ref.html
+fuzzy-if(!contentSameGfxBackendAsCanvas,3,88500) fuzzy-if(azureSkiaGL||skiaContent,3,89700) == linear-vertical-1b.html linear-vertical-1-ref.html
+fuzzy-if(!contentSameGfxBackendAsCanvas,3,88500) fuzzy-if(azureSkiaGL||skiaContent,3,89700) == linear-vertical-1c.html linear-vertical-1-ref.html
+fuzzy-if(!contentSameGfxBackendAsCanvas,3,88500) fuzzy-if(azureSkiaGL||skiaContent,3,89700) == linear-vertical-1d.html linear-vertical-1-ref.html
+== linear-vertical-subpixel-1.html linear-vertical-subpixel-1-ref.html
+== linear-viewport.html linear-viewport-ref.html
 == nostops.html about:blank
 == onestop.html about:blank
 fuzzy-if(!contentSameGfxBackendAsCanvas,1,5884) fuzzy-if(cocoaWidget,9,87824) fuzzy-if(azureSkiaGL,6,88024) random-if(d2d) fuzzy-if(skiaContent,4,6000) == radial-1a.html radial-1-ref.html
 fuzzy-if(!contentSameGfxBackendAsCanvas,1,5884) fuzzy-if(cocoaWidget,9,87824) fuzzy-if(azureSkiaGL,6,88024) random-if(d2d) fuzzy-if(skiaContent,4,6000) == radial-1b.html radial-1-ref.html
-fuzzy-if(!contentSameGfxBackendAsCanvas,1,5884) fuzzy-if(cocoaWidget,9,87824) fuzzy-if(azureSkiaGL,6,88024) random-if(d2d) fuzzy-if(skiaContent,4,6000) fails-if(stylo) == radial-1c.html radial-1-ref.html
 fuzzy(3,7860) fuzzy-if(cocoaWidget,5,89041) fuzzy-if(azureSkiaGL,4,90000) == radial-2a.html radial-2-ref.html
 fuzzy(3,7860) fuzzy-if(cocoaWidget,5,89041) fuzzy-if(azureSkiaGL,4,90000) == radial-2b.html radial-2-ref.html
 fuzzy(3,7860) fuzzy-if(cocoaWidget,5,89041) fuzzy-if(azureSkiaGL,4,90000) == radial-2c.html radial-2-ref.html
 fuzzy(3,7860) fuzzy-if(cocoaWidget,5,89041) fuzzy-if(azureSkiaGL,4,90000) == radial-2d.html radial-2-ref.html
-fuzzy(3,7860) fuzzy-if(cocoaWidget,5,89041) fuzzy-if(azureSkiaGL,4,90000) fails-if(stylo) == radial-2e.html radial-2-ref.html
-fuzzy(3,7860) fuzzy-if(cocoaWidget,5,89041) fuzzy-if(azureSkiaGL,4,90000) fails-if(stylo) == radial-2f.html radial-2-ref.html
-== radial-position-1a.html radial-position-1-ref.html
 fuzzy-if(cocoaWidget,1,28) fuzzy-if(winWidget,1,18) fuzzy-if(skiaContent,1,50) == radial-position-1b.html radial-position-1-ref.html
 fuzzy-if(cocoaWidget,4,22317) fuzzy-if(Android,8,771) == radial-shape-closest-corner-1a.html radial-shape-closest-corner-1-ref.html
 fuzzy(1,238) fuzzy-if(cocoaWidget,4,22608) fuzzy-if((/^Windows\x20NT\x2010\.0/.test(http.oscpu)||/^Windows\x20NT\x206\./.test(http.oscpu))&&d2d,1,336) fuzzy-if(Android,8,787) fuzzy-if(skiaContent,2,300) == radial-shape-closest-corner-1b.html radial-shape-closest-corner-1-ref.html
-fuzzy-if(Android,8,771) fails-if(stylo) == radial-shape-closest-corner-1c.html radial-shape-closest-corner-1-ref.html
 fuzzy-if(/^Windows\x20NT\x2010\.0/.test(http.oscpu)||/^Windows\x20NT\x206\.2/.test(http.oscpu),1,5) fuzzy-if(Android,17,3880) == radial-shape-closest-side-1a.html radial-shape-closest-side-1-ref.html
 fuzzy-if(/^Windows\x20NT\x2010\.0/.test(http.oscpu)||/^Windows\x20NT\x206\.2/.test(http.oscpu),1,5) fuzzy-if(Android,17,3880) == radial-shape-closest-side-1b.html radial-shape-closest-side-1-ref.html
-fuzzy-if(/^Windows\x20NT\x2010\.0/.test(http.oscpu)||/^Windows\x20NT\x206\.2/.test(http.oscpu),1,5) fuzzy-if(Android,17,3880) fails-if(stylo) == radial-shape-closest-side-1c.html radial-shape-closest-side-1-ref.html
 fuzzy-if(Android,8,771) == radial-shape-farthest-corner-1a.html radial-shape-farthest-corner-1-ref.html
 fails-if(gtkWidget&&/x86_64-/.test(xulRuntime.XPCOMABI)) fuzzy(1,1569) fuzzy-if(cocoaWidget,2,41281) fuzzy-if(Android,8,1091) fuzzy-if(skiaContent,2,500) == radial-shape-farthest-corner-1b.html radial-shape-farthest-corner-1-ref.html
-fuzzy-if(Android,8,771) fails-if(stylo) == radial-shape-farthest-corner-1c.html radial-shape-farthest-corner-1-ref.html
 fuzzy-if(Android,17,13320) == radial-shape-farthest-side-1a.html radial-shape-farthest-side-1-ref.html
 fuzzy-if(Android,17,13320) == radial-shape-farthest-side-1b.html radial-shape-farthest-side-1-ref.html
-fuzzy-if(Android,17,13320) fails-if(stylo) == radial-shape-farthest-side-1c.html radial-shape-farthest-side-1-ref.html
-fails-if(stylo) == radial-size-1a.html radial-size-1-ref.html
+== radial-size-1a.html radial-size-1-ref.html
 == radial-size-1b.html radial-size-1-ref.html
 fuzzy-if(Android,4,248) == radial-zero-length-1a.html radial-zero-length-1-ref.html
 fuzzy-if(Android,4,248) == radial-zero-length-1b.html radial-zero-length-1-ref.html
 fuzzy-if(Android,4,248) == radial-zero-length-1c.html radial-zero-length-1-ref.html
 fuzzy-if(Android,4,248) == radial-zero-length-1d.html radial-zero-length-1-ref.html
 fuzzy-if(Android,4,248) == radial-zero-length-1e.html radial-zero-length-1-ref.html
 fuzzy-if(Android,4,248) == radial-zero-length-1f.html radial-zero-length-1-ref.html
-fuzzy-if(Android,4,248) fails-if(stylo) == radial-zero-length-1g.html radial-zero-length-1-ref.html
-fuzzy-if(Android,4,248) fails-if(stylo) == radial-zero-length-1h.html radial-zero-length-1-ref.html
-fuzzy-if(Android,4,248) fails-if(stylo) == radial-zero-length-1i.html radial-zero-length-1-ref.html
-fuzzy-if(Android,4,248) fails-if(stylo) == radial-zero-length-1j.html radial-zero-length-1-ref.html
 == radial-premul.html radial-premul-ref.html
 == repeated-final-stop-1.html repeated-final-stop-1-ref.html
-fails-if(stylo) == repeating-linear-1a.html repeating-linear-1-ref.html
-fails-if(stylo) == repeating-linear-1b.html repeating-linear-1-ref.html
-fails-if(stylo) == repeating-linear-2a.html repeating-linear-2-ref.html
+== repeating-linear-1a.html repeating-linear-1-ref.html
+== repeating-linear-1b.html repeating-linear-1-ref.html
+== repeating-linear-2a.html repeating-linear-2-ref.html
 fuzzy-if(d2d,127,2612) == repeating-radial-1a.html repeating-radial-1-ref.html
 == repeating-radial-1b.html repeating-radial-1-ref.html
 fuzzy-if(d2d,127,2612) == repeating-radial-1c.html repeating-radial-1-ref.html
 == repeating-radial-1d.html repeating-radial-1-ref.html
-fuzzy-if(d2d,127,2612) fails-if(stylo) == repeating-radial-1e.html repeating-radial-1-ref.html
-fails-if(stylo) == repeating-radial-1f.html repeating-radial-1-ref.html
 == repeating-radial-2a.html repeating-radial-2-ref.html
 == repeating-radial-2b.html repeating-radial-2-ref.html
-fuzzy-if(skiaContent,18,600) fails-if(stylo) == twostops-1a.html twostops-1-ref.html
-fuzzy-if(skiaContent,18,600) fails-if(stylo) == twostops-1b.html twostops-1-ref.html
-fuzzy-if(skiaContent,226,600) fails-if(stylo) == twostops-1c.html twostops-1-ref.html
-fuzzy-if(skiaContent,141,300) fails-if(stylo) == twostops-1d.html twostops-1-ref.html
-fuzzy-if(skiaContent,73,900) fails-if(stylo) == twostops-1e.html twostops-1-ref.html
-fuzzy-if(skiaContent,18,600) == twostops-1f.html twostops-1-ref.html
-fuzzy-if(skiaContent,18,600) == twostops-1g.html twostops-1-ref.html
+fuzzy-if(skiaContent,18,600) == twostops-1a.html twostops-1-ref.html
+fuzzy-if(skiaContent,18,600) == twostops-1b.html twostops-1-ref.html
+fuzzy-if(skiaContent,226,600) == twostops-1c.html twostops-1-ref.html
+fuzzy-if(skiaContent,141,300) == twostops-1d.html twostops-1-ref.html
+fuzzy-if(skiaContent,73,900) == twostops-1e.html twostops-1-ref.html
 
 # from http://www.xanthir.com/:4bhipd by way of http://a-ja.net/newgrad.html
-fuzzy-if(!contentSameGfxBackendAsCanvas,3,20000) fuzzy-if(azureSkiaGL||skiaContent&&layersGPUAccelerated,8,20000) fails-if(stylo) == aja-linear-1a.html aja-linear-1-ref.html
-fails-if(!d2d&&!skiaContent) fails-if(stylo) == aja-linear-1b.html aja-linear-1-ref.html # bug 526694
+fuzzy-if(!contentSameGfxBackendAsCanvas,3,20000) fuzzy-if(azureSkiaGL||skiaContent&&layersGPUAccelerated,8,20000) == aja-linear-1a.html aja-linear-1-ref.html
+fails-if(!d2d&&!skiaContent) == aja-linear-1b.html aja-linear-1-ref.html # bug 526694
 fuzzy-if(!contentSameGfxBackendAsCanvas,3,20000) fuzzy-if(azureSkiaGL||skiaContent,8,20000) == aja-linear-1c.html aja-linear-1-ref.html 
 fuzzy-if(!contentSameGfxBackendAsCanvas,3,20000) fuzzy-if(azureSkiaGL||skiaContent,8,20000) == aja-linear-1d.html aja-linear-1-ref.html 
-fuzzy-if(!contentSameGfxBackendAsCanvas,3,20000) fuzzy-if(azureSkiaGL||skiaContent,8,20000) fails-if(stylo) == aja-linear-1e.html aja-linear-1-ref.html 
-fuzzy-if(!contentSameGfxBackendAsCanvas,3,20000) fuzzy-if(azureSkiaGL||skiaContent,8,20000) fails-if(stylo) == aja-linear-1f.html aja-linear-1-ref.html 
-fuzzy-if(!contentSameGfxBackendAsCanvas,3,20000) fuzzy-if(azureSkiaGL||skiaContent,8,20000) fails-if(stylo) == aja-linear-1g.html aja-linear-1-ref.html 
-fuzzy-if(!contentSameGfxBackendAsCanvas,2,20000) fuzzy-if(azureSkiaGL||skiaContent,8,20000) fails-if(stylo) == aja-linear-2a.html aja-linear-2-ref.html 
-fuzzy-if(!contentSameGfxBackendAsCanvas,2,20000) fuzzy-if(azureSkiaGL||skiaContent,8,20000) fails-if(stylo) == aja-linear-2b.html aja-linear-2-ref.html 
-fails-if(!stylo) == aja-linear-2c.html aja-linear-2-ref.html # bug 522607
-fails-if(!d2d&&!(skiaContent&&winWidget)) fuzzy-if(skiaContent&&!winWidget,1,200) fails-if(stylo) == aja-linear-2d.html aja-linear-2-ref.html # bug 526694
+fuzzy-if(!contentSameGfxBackendAsCanvas,3,20000) fuzzy-if(azureSkiaGL||skiaContent,8,20000) == aja-linear-1e.html aja-linear-1-ref.html 
+fuzzy-if(!contentSameGfxBackendAsCanvas,3,20000) fuzzy-if(azureSkiaGL||skiaContent,8,20000) == aja-linear-1f.html aja-linear-1-ref.html 
+fuzzy-if(!contentSameGfxBackendAsCanvas,2,20000) fuzzy-if(azureSkiaGL||skiaContent,8,20000) == aja-linear-2.html aja-linear-2-ref.html
 fuzzy-if(!contentSameGfxBackendAsCanvas,2,19999) fuzzy-if(azureSkiaGL||skiaContent,8,20000) == aja-linear-3a.html aja-linear-3-ref.html 
 fuzzy-if(!contentSameGfxBackendAsCanvas,2,19999) fuzzy-if(azureSkiaGL||skiaContent,8,20000) == aja-linear-3b.html aja-linear-3-ref.html 
-fuzzy-if(!contentSameGfxBackendAsCanvas,4,20000) fuzzy-if(azureSkiaGL||skiaContent,8,20000) fails-if(stylo) == aja-linear-4a.html aja-linear-4-ref.html 
-fuzzy-if(!contentSameGfxBackendAsCanvas,4,20000) fuzzy-if(azureSkiaGL||skiaContent,8,20000) fails-if(stylo) == aja-linear-4b.html aja-linear-4-ref.html 
-fuzzy-if(!contentSameGfxBackendAsCanvas,4,20000) fuzzy-if(azureSkiaGL||skiaContent,8,20000) fails-if(stylo) == aja-linear-5a.html aja-linear-5-ref.html 
-fuzzy-if(!contentSameGfxBackendAsCanvas,2,16500) fuzzy-if(azureSkiaGL||skiaContent,8,20000) fails-if(stylo) == aja-linear-6a.html aja-linear-6-ref.html # bug 526708 
-fails-if(!stylo) == aja-linear-6b.html aja-linear-6-ref.html # bug 522607
-fuzzy-if(Android,6,10576) fails-if(stylo) == height-dependence-1.html height-dependence-1-ref.html
-fuzzy-if(cocoaWidget,1,40000) fuzzy-if(Android,6,10576) fails-if(stylo) == height-dependence-2.html height-dependence-2-ref.html
-fuzzy-if(Android,6,10576) fails-if(stylo) == height-dependence-3.html height-dependence-3-ref.html
+fuzzy-if(!contentSameGfxBackendAsCanvas,4,20000) fuzzy-if(azureSkiaGL||skiaContent,8,20000) == aja-linear-4a.html aja-linear-4-ref.html 
+fuzzy-if(!contentSameGfxBackendAsCanvas,4,20000) fuzzy-if(azureSkiaGL||skiaContent,8,20000) == aja-linear-4b.html aja-linear-4-ref.html 
+fuzzy-if(!contentSameGfxBackendAsCanvas,4,20000) fuzzy-if(azureSkiaGL||skiaContent,8,20000) == aja-linear-5a.html aja-linear-5-ref.html 
+fuzzy-if(Android,6,10576) == height-dependence-1.html height-dependence-1-ref.html
+fuzzy-if(cocoaWidget,1,40000) fuzzy-if(Android,6,10576) == height-dependence-2.html height-dependence-2-ref.html
+fuzzy-if(Android,6,10576) == height-dependence-3.html height-dependence-3-ref.html
 
-fails-if(stylo) == linear-onestopposition-1.html linear-onestopposition-1-ref.html
-fuzzy-if(d2d,47,400) fails-if(stylo) == linear-onestopposition-1.html linear-onestopposition-1-ref2.html # d2d interpolates the hard stop
+== linear-onestopposition-1.html linear-onestopposition-1-ref.html
+fuzzy-if(d2d,47,400) == linear-onestopposition-1.html linear-onestopposition-1-ref2.html # d2d interpolates the hard stop
 == radial-onestopposition-1a.html radial-onestopposition-1-ref.html
 == radial-onestopposition-1b.html radial-onestopposition-1-ref.html
-fails-if(stylo) == radial-onestopposition-1c.html radial-onestopposition-1-ref.html
 == repeating-linear-onestopposition-1.html orange-square.html
 == repeating-radial-onestopposition-1a.html orange-square.html
 == repeating-radial-onestopposition-1b.html orange-square.html
-fails-if(stylo) == repeating-radial-onestopposition-1c.html orange-square.html
 == bug-916535-background-repeat-linear.html bug-916535-background-repeat-linear-ref.html
 fuzzy(1,800000) == large-gradient-1.html large-gradient-1-ref.html
 fuzzy-if(Android,4,1) == large-gradient-2.html large-gradient-2-ref.html # Bug 1182082
 fuzzy(1,800000) == large-gradient-3.html large-gradient-3-ref.html
 == large-gradient-4.html large-gradient-4-ref.html
 fuzzy(2,800000) == large-gradient-5.html large-gradient-5-ref.html
 == 1224761-1.html 1224761-1-ref.html
 
--- a/layout/reftests/css-gradients/repeated-final-stop-1-ref.html
+++ b/layout/reftests/css-gradients/repeated-final-stop-1-ref.html
@@ -1,18 +1,17 @@
 <!DOCTYPE HTML>
 <html>
 <head>
 <style>
 html {
   background: white;
 }
 div {
-  background: -moz-linear-gradient(left, 0 white, 100% orange);
-  background: linear-gradient(left, 0 white, 100% orange);
+  background: linear-gradient(to rigtht, 0 white, 100% orange);
   height: 100px;
   width: 50%;
 }
 </style>
 </head>
 <body>
 <div></div>
 </body>
--- a/layout/reftests/css-gradients/repeated-final-stop-1.html
+++ b/layout/reftests/css-gradients/repeated-final-stop-1.html
@@ -1,18 +1,17 @@
 <!DOCTYPE HTML>
 <html>
 <head>
 <style>
 html {
   background: white;
 }
 div {
-  background: -moz-linear-gradient(left, 0 white, 50% orange, 50% white);
-  background: linear-gradient(left, 0 white, 50% orange, 50% white);
+  background: linear-gradient(to rigtht, 0 white, 50% orange, 50% white);
   height: 100px;
 }
 </style>
 </head>
 <body>
 <div></div>
 </body>
 </html>
--- a/layout/reftests/css-gradients/repeating-linear-1a.html
+++ b/layout/reftests/css-gradients/repeating-linear-1a.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-repeating-linear-gradient(black 0, black 50px, white 50px, white 100px); width: 400px; height: 400px;"></div>
+<div style="background: repeating-linear-gradient(black 0, black 50px, white 50px, white 100px); width: 400px; height: 400px;"></div>
--- a/layout/reftests/css-gradients/repeating-linear-1b.html
+++ b/layout/reftests/css-gradients/repeating-linear-1b.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-repeating-linear-gradient(black 100px, black 150px, white 150px, white 200px); width: 400px; height: 400px;"></div>
+<div style="background: repeating-linear-gradient(black 100px, black 150px, white 150px, white 200px); width: 400px; height: 400px;"></div>
--- a/layout/reftests/css-gradients/repeating-linear-2a.html
+++ b/layout/reftests/css-gradients/repeating-linear-2a.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-repeating-linear-gradient(red 20px, blue 20px); width: 300px; height: 300px;"></div>
+<div style="background: repeating-linear-gradient(red 20px, blue 20px); width: 300px; height: 300px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/repeating-radial-1e.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: -moz-repeating-radial-gradient(closest-side, black 100px, black 150px, white 150px, white 200px); width: 400px; height: 400px;"></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/repeating-radial-1f.html
+++ /dev/null
@@ -1,4 +0,0 @@
-<!-- Test adjustment of negative stop positions in a repeating radial gradient.
-     We should still get a repeating pattern, i.e., the stops cannot
-     naively be mapped to 0. -->
-<div style="background: -moz-repeating-radial-gradient(closest-side, black -100px, black -50px, white -50px, white 0); width: 400px; height: 400px;"></div>
--- a/layout/reftests/css-gradients/repeating-radial-onestopposition-1a.html
+++ b/layout/reftests/css-gradients/repeating-radial-onestopposition-1a.html
@@ -1,10 +1,10 @@
 <!DOCTYPE HTML>
-<title>Test for -moz-repeating-radial-gradient() with all stops at the same position</title>
+<title>Test for repeating-radial-gradient() with all stops at the same position</title>
 <style>
 
 div {
   width: 200px;
   height: 200px;
   background-image: repeating-radial-gradient(closest-side, blue 25%, orange 25%);
 }
 
--- a/layout/reftests/css-gradients/repeating-radial-onestopposition-1b.html
+++ b/layout/reftests/css-gradients/repeating-radial-onestopposition-1b.html
@@ -1,10 +1,10 @@
 <!DOCTYPE HTML>
-<title>Test for -moz-repeating-radial-gradient() with all stops at the same position</title>
+<title>Test for repeating-radial-gradient() with all stops at the same position</title>
 <style>
 
 div {
   width: 200px;
   height: 200px;
   background-image: repeating-radial-gradient(50% 50% at 50% 50%, blue 25%, orange 25%);
 }
 
deleted file mode 100644
--- a/layout/reftests/css-gradients/repeating-radial-onestopposition-1c.html
+++ /dev/null
@@ -1,12 +0,0 @@
-<!DOCTYPE HTML>
-<title>Test for -moz-repeating-radial-gradient() with all stops at the same position</title>
-<style>
-
-div {
-  width: 200px;
-  height: 200px;
-  background-image: -moz-repeating-radial-gradient(contain, blue 25%, orange 25%);
-}
-
-</style>
-<div></div>
--- a/layout/reftests/css-gradients/twostops-1a.html
+++ b/layout/reftests/css-gradients/twostops-1a.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(top, #0000ff 50%, #ff0000 50%) no-repeat; width: 300px; height: 300px;"><br></div>
+<div style="background: linear-gradient(to bottom, #0000ff 50%, #ff0000 50%) no-repeat; width: 300px; height: 300px;"><br></div>
--- a/layout/reftests/css-gradients/twostops-1b.html
+++ b/layout/reftests/css-gradients/twostops-1b.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(bottom, #ff0000 50%, #0000ff 50%) no-repeat; width: 300px; height: 300px;"><br></div>
+<div style="background: linear-gradient(to top, #ff0000 50%, #0000ff 50%) no-repeat; width: 300px; height: 300px;"><br></div>
--- a/layout/reftests/css-gradients/twostops-1c.html
+++ b/layout/reftests/css-gradients/twostops-1c.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(yellow -50%, #0000ff 0, #0000ff 50%, #ff0000 50%) no-repeat; width: 300px; height: 300px;"><br></div>
+<div style="background: linear-gradient(yellow -50%, #0000ff 0, #0000ff 50%, #ff0000 50%) no-repeat; width: 300px; height: 300px;"><br></div>
--- a/layout/reftests/css-gradients/twostops-1d.html
+++ b/layout/reftests/css-gradients/twostops-1d.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(#0000ff 50%, #ff0000 50%, #ff0000 100%, yellow 150%) no-repeat; width: 300px; height: 300px;"><br></div>
+<div style="background: linear-gradient(#0000ff 50%, #ff0000 50%, #ff0000 100%, yellow 150%) no-repeat; width: 300px; height: 300px;"><br></div>
--- a/layout/reftests/css-gradients/twostops-1e.html
+++ b/layout/reftests/css-gradients/twostops-1e.html
@@ -1,1 +1,1 @@
-<div style="background: -moz-linear-gradient(yellow -50%, #0000ff 0, #0000ff 50%, #ff0000 50%, #ff0000 100%, yellow 150%) no-repeat; width: 300px; height: 300px;"><br></div>
+<div style="background: linear-gradient(yellow -50%, #0000ff 0, #0000ff 50%, #ff0000 50%, #ff0000 100%, yellow 150%) no-repeat; width: 300px; height: 300px;"><br></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/twostops-1f.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: linear-gradient(to bottom, #0000ff 50%, #ff0000 50%) no-repeat; width: 300px; height: 300px;"><br></div>
deleted file mode 100644
--- a/layout/reftests/css-gradients/twostops-1g.html
+++ /dev/null
@@ -1,1 +0,0 @@
-<div style="background: linear-gradient(to top, #ff0000 50%, #0000ff 50%) no-repeat; width: 300px; height: 300px;"><br></div>
--- a/layout/reftests/forms/meter/default-style/style.css
+++ b/layout/reftests/forms/meter/default-style/style.css
@@ -1,54 +1,54 @@
 div.meter-element {
   display: inline-block;
   height: 1em;
   width: 5em;
   vertical-align: -0.2em;
 
-  background: -moz-linear-gradient(top, #e6e6e6, #e6e6e6, #eeeeee 20%, #cccccc 45%, #cccccc 55%);
+  background: linear-gradient(#e6e6e6, #e6e6e6, #eeeeee 20%, #cccccc 45%, #cccccc 55%);
 }
 
 div.meter-optimum {
   float: none ! important;
 
   height: 100%;
   /*
    * We can't apply the following style to the reference because it will have
    * underisable effectes:
    * width: 100%;
    */
 
   /* green. */
-  background: -moz-linear-gradient(top, #ad7, #ad7, #cea 20%, #7a3 45%, #7a3 55%);
+  background: linear-gradient(#ad7, #ad7, #cea 20%, #7a3 45%, #7a3 55%);
 }
 
 div.meter-sub-optimum {
   float: none ! important;
 
   height: 100%;
   /*
    * We can't apply the following style to the reference because it will have
    * underisable effectes:
    * width: 100%;
    */
 
   /* orange. */
-  background: -moz-linear-gradient(top, #fe7, #fe7, #ffc 20%, #db3 45%, #db3 55%);
+  background: linear-gradient(#fe7, #fe7, #ffc 20%, #db3 45%, #db3 55%);
 }
 
 div.meter-sub-sub-optimum {
   float: none ! important;
 
   height: 100%;
   /*
    * We can't apply the following style to the reference because it will have
    * underisable effectes:
    * width: 100%;
    */
 
   /* red. */
-  background: -moz-linear-gradient(top, #f77, #f77, #fcc 20%, #d44 45%, #d44 55%);
+  background: linear-gradient(#f77, #f77, #fcc 20%, #d44 45%, #d44 55%);
 }
 
 meter, meter::-moz-meter-bar, div.meter-element, div.meter-optimum, div.meter-sub-optimum, div.meter-sub-sub-optimum {
   -moz-appearance: none; appearance: none;
 }
--- a/layout/reftests/image-element/element-paint-continuation-ref.html
+++ b/layout/reftests/image-element/element-paint-continuation-ref.html
@@ -11,15 +11,15 @@
   font-family: Ahem;
   src: url(../fonts/Ahem.ttf);
 }
 </style>
 <body style="line-height:1; font-family: Ahem; color: transparent;">
   <div style="width:100px; height:100px; border:10px solid black;">
     <div style="width:50px;">
       <span style="display:inline-block; width:25px; height:1px;"></span
-        ><span id="d" style="background:-moz-linear-gradient(right, yellow, yellow);"
+        ><span id="d" style="background:linear-gradient(to left, yellow, yellow);"
         ><span style="display:inline-block; width:25px; height:1px;"></span>
       AA</span>
     </div>
   </div>
 </body>
 </html>
--- a/layout/reftests/image-element/element-paint-multiple-backgrounds-01-ref.html
+++ b/layout/reftests/image-element/element-paint-multiple-backgrounds-01-ref.html
@@ -6,18 +6,18 @@
 <!DOCTYPE html>
 <html>
 <head>
 <style>
 
 #box {
   height: 100px;
   width: 200px;
-  background: -moz-linear-gradient(lime,lime) top left no-repeat,
-              -moz-linear-gradient(green,green) top right no-repeat red;
+  background: linear-gradient(lime,lime) top left no-repeat,
+              linear-gradient(green,green) top right no-repeat red;
   background-size: 100px 100px;
 }
 
 div > div {
   width: 100px;
   height: 100px;
 }
 
--- a/layout/reftests/image-element/gradient-html-06b.html
+++ b/layout/reftests/image-element/gradient-html-06b.html
@@ -2,12 +2,12 @@
      Any copyright is dedicated to the Public Domain.
      http://creativecommons.org/licenses/publicdomain/
      Test whether SVG gradients as -moz-element render the same as
      CSS gradients.
 -->
 <!DOCTYPE html>
 <html>
 <body style="margin:0">
-  <div style="width:300px; height:300px; background-image:-moz-linear-gradient(lime, black)"></div>
+  <div style="width:300px; height:300px; background-image:linear-gradient(lime, black)"></div>
 </body>
 </html>
 
--- a/layout/reftests/layers/component-alpha-exit-1-ref.html
+++ b/layout/reftests/layers/component-alpha-exit-1-ref.html
@@ -9,17 +9,17 @@ document.addEventListener("MozReftestInv
 });
 </script>
 <style>
 #scrollbox {
   margin: 20px;
   width: 300px;
   height: 400px;
   overflow-y: hidden;
-  background: -moz-linear-gradient(#FFF, #FFF);
+  background: linear-gradient(#FFF, #FFF);
 }
 
 #inner {
   background-color: #000;
   padding-bottom: 415px;
 }
 </style>
 
--- a/layout/reftests/layers/component-alpha-exit-1.html
+++ b/layout/reftests/layers/component-alpha-exit-1.html
@@ -12,17 +12,17 @@ document.addEventListener("MozReftestInv
 });
 </script>
 <style>
 #scrollbox {
   margin: 20px;
   width: 300px;
   height: 400px;
   overflow-y: hidden;
-  background: -moz-linear-gradient(#FFF, #FFF);
+  background: linear-gradient(#FFF, #FFF);
 }
 
 #inner {
   background-color: #000;
   margin-top: 10px;
   height: 5px;
   line-height: 5px;
   padding-bottom: 400px;
--- a/layout/reftests/native-theme/checkbox-dynamic-1-ref.html
+++ b/layout/reftests/native-theme/checkbox-dynamic-1-ref.html
@@ -1,17 +1,17 @@
 <!DOCTYPE html>
 <html>
 <head>
   <style>
     #checkbox {
        position: absolute;
        left: 0px;
        top: 0px;
-       background: -moz-linear-gradient(left, white, brown);
+       background: linear-gradient(to right, white, brown);
     }
   </style>
 </head>
 <body>
   <div id="checkbox">
     <input type="checkbox">
   </div>
 </body>
--- a/layout/reftests/native-theme/checkbox-dynamic-1.html
+++ b/layout/reftests/native-theme/checkbox-dynamic-1.html
@@ -1,17 +1,17 @@
 <!DOCTYPE html>
 <html class="reftest-wait">
 <head>
   <style>
     #checkbox {
        position: absolute;
        left: 0px;
        top: 0px;
-       background: -moz-linear-gradient(left, white, brown);
+       background: linear-gradient(to right, white, brown);
     }
     #toremove {
        position: absolute;
        left: 0px;
        top: 0px;
        width: 100px;
        height: 0px;
        background: black;
--- a/layout/reftests/native-theme/reftest.list
+++ b/layout/reftests/native-theme/reftest.list
@@ -66,17 +66,17 @@ skip-if(gtkWidget) != resizer-bottomstar
 skip-if(gtkWidget) random-if(d2d) == resizer-bottomstart-rtl.xul resizer-bottomend.xul
 
 # Windows-only, depends on native scrollbar metrics
 skip-if(!winWidget) == scroll-thumb-minimum-size-notheme.html scroll-thumb-minimum-size-notheme-ref.html
 # skip-if(!winWidget) == scroll-thumb-minimum-size-theme.html scroll-thumb-minimum-size-theme-ref.html # Bug 512206
 
 == border-radius.html border-radius-ref.html
 
-fails-if(stylo) == checkbox-dynamic-1.html checkbox-dynamic-1-ref.html
+== checkbox-dynamic-1.html checkbox-dynamic-1-ref.html
 
 # These tests have been written to test the overflow of the window widget
 # (bug 568825) but we can't test it on Windows and Cocoa because they have
 # animated progress bars.
 # Nothing shows up on Android, presumably because that appearance type is
 # not implemented.
 pref(layout.css.moz-appearance.enabled,true) pref(layout.css.appearance.enabled,true) skip-if(cocoaWidget) skip-if(winWidget) == progress-overflow.html progress-overflow-ref.html
 pref(layout.css.moz-appearance.enabled,true) pref(layout.css.appearance.enabled,true) fails-if(Android) skip-if(cocoaWidget) skip-if(winWidget) != progress-overflow-small.html progress-nobar.html
--- a/layout/reftests/scrolling/opacity-mixed-scrolling-2.html
+++ b/layout/reftests/scrolling/opacity-mixed-scrolling-2.html
@@ -1,26 +1,26 @@
 <!DOCTYPE HTML>
 <html>
 <style>
 #scrollbox {
   margin: 20px;
   width: 300px;
   height: 400px;
   overflow-y: auto;
-  background: -moz-linear-gradient(#444, #555);
+  background: linear-gradient(#444, #555);
 }
 .opacityBox {
   opacity: 0.999;
   border: 1px solid black;
   margin: 20px;
   padding: 20px;
 }
 #inner {
-  background-image: -moz-linear-gradient(white, rgba(255,255,255,0));
+  background-image: linear-gradient(white, rgba(255,255,255,0));
 }
 </style>
 
 <div id="scrollbox" class="scrollTop">
   <div id="inner">
     outside
     <div class="opacityBox">in opacity box</div>
     outside
--- a/layout/reftests/scrolling/reftest.list
+++ b/layout/reftests/scrolling/reftest.list
@@ -4,17 +4,17 @@ HTTP == fixed-1.html fixed-1.html?ref
 fuzzy-if(skiaContent,1,32200) HTTP == fixed-table-1.html fixed-table-1.html?ref
 HTTP == fixed-opacity-1.html fixed-opacity-1.html?ref
 HTTP == fixed-opacity-2.html fixed-opacity-2.html?ref
 random-if(gtkWidget) fuzzy-if(Android,3,60) HTTP == fixed-text-1.html fixed-text-1.html?ref
 HTTP == fixed-text-2.html fixed-text-2.html?ref
 random-if(Android) fuzzy-if(/^Windows\x20NT\x2010\.0/.test(http.oscpu),1,12) == iframe-border-radius.html iframe-border-radius-ref.html # bug 760269
 random-if(Android) HTTP == image-1.html image-1.html?ref
 random-if(Android) HTTP == opacity-mixed-scrolling-1.html opacity-mixed-scrolling-1.html?ref # bug 760269
-random-if(cocoaWidget) fails-if(stylo) HTTP == opacity-mixed-scrolling-2.html opacity-mixed-scrolling-2.html?ref # see bug 625357
+random-if(cocoaWidget) HTTP == opacity-mixed-scrolling-2.html opacity-mixed-scrolling-2.html?ref # see bug 625357
 skip-if(Android) pref(layout.css.scroll-behavior.enabled,true) pref(layout.css.scroll-behavior.property-enabled,true) == scroll-behavior-1.html scroll-behavior-1.html?ref # see bug 1041833
 skip-if(Android) pref(layout.css.scroll-behavior.enabled,true) pref(layout.css.scroll-behavior.property-enabled,true) == scroll-behavior-2.html scroll-behavior-2.html?ref # see bug 1041833
 skip-if(Android) pref(layout.css.scroll-behavior.enabled,true) pref(layout.css.scroll-behavior.property-enabled,true) == scroll-behavior-3.html scroll-behavior-3.html?ref # see bug 1041833
 skip-if(Android) pref(layout.css.scroll-behavior.enabled,true) pref(layout.css.scroll-behavior.property-enabled,true) == scroll-behavior-4.html scroll-behavior-4.html?ref # see bug 1041833
 skip-if(Android) pref(layout.css.scroll-behavior.enabled,true) pref(layout.css.scroll-behavior.property-enabled,true) == scroll-behavior-5.html scroll-behavior-5.html?ref # see bug 1041833
 skip-if(Android) pref(layout.css.scroll-behavior.enabled,true) pref(layout.css.scroll-behavior.property-enabled,true) == scroll-behavior-6.html scroll-behavior-6.html?ref # see bug 1041833
 skip-if(Android) pref(layout.css.scroll-behavior.enabled,true) pref(layout.css.scroll-behavior.property-enabled,true) == scroll-behavior-7.html scroll-behavior-7.html?ref # see bug 1041833
 skip-if(Android) pref(layout.css.scroll-behavior.enabled,true) pref(layout.css.scroll-behavior.property-enabled,true) == scroll-behavior-8.html scroll-behavior-8.html?ref # see bug 1041833
--- a/layout/reftests/transform/601894-1.html
+++ b/layout/reftests/transform/601894-1.html
@@ -1,11 +1,11 @@
 <!DOCTYPE html>
 <html>
-  <body style="background: -moz-linear-gradient(lime, lime) fixed; overflow: hidden;">
+  <body style="background: linear-gradient(lime, lime) fixed; overflow: hidden;">
     <div style="position: absolute; left: 21.0138px; top: 507.24px; z-index: 17567; -moz-transform: scale(8);">
       <div style="height: 128px; left: -64px; position: absolute; top: -64px; visibility: visible; width: 128px;"></div>
     </div>
     <div style="position: absolute; left: 640.572px; top: 386.574px; -moz-transform: scale(1); z-index: -157863;">
       <div style="position: absolute; top: -64px; left: -64px; width: 128px; height: 128px; visibility: visible;"></div>
     </div>
     <div style="position: absolute; left: 568.346px; top: 582.669px; -moz-transform: scale(1); z-index: -62592;">
       <div style="position: absolute; top: -64px; left: -64px; width: 128px; height: 128px; visibility: visible;"></div>
--- a/layout/reftests/transform/601894-2.html
+++ b/layout/reftests/transform/601894-2.html
@@ -1,8 +1,8 @@
 <!DOCTYPE html>
 <html>
-  <body style="background: -moz-linear-gradient(lime, lime) fixed;">
+  <body style="background: linear-gradient(lime, lime) fixed;">
     <div style="position: absolute; left: 0; top: 0; -moz-transform: scale(1)">
       <div style="position: absolute; width: 200px; height: 200px;"></div>
     </div>
   </body>
 </html>
--- a/layout/reftests/transform/reftest.list
+++ b/layout/reftests/transform/reftest.list
@@ -109,18 +109,18 @@ fuzzy-if(skiaContent,2,5) == stresstest-
 == scale-1b.html scale-1-ref.html
 == scale-percent-1.html scale-percent-1-ref.html
 # Some simple checks that it obeys selector operations
 == descendant-1.html descendant-1-ref.html
 == propagate-inherit-boolean.html propagate-inherit-boolean-ref.html
 # Ensure you can't move outside an iframe
 == iframe-1.html iframe-1-ref.html
 # Bugs
-fails-if(stylo) == 601894-1.html 601894-ref.html
-fails-if(stylo) == 601894-2.html 601894-ref.html
+== 601894-1.html 601894-ref.html
+== 601894-2.html 601894-ref.html
 == 830299-1.html 830299-1-ref.html
 # Bug 722777
 == table-1a.html table-1-ref.html
 == table-1b.html table-1-ref.html
 == table-1c.html table-1-ref.html
 == table-2a.html table-2-ref.html
 == table-2b.html table-2-ref.html
 # Bug 722463
--- a/layout/style/crashtests/large_border_image_width.html
+++ b/layout/style/crashtests/large_border_image_width.html
@@ -1,9 +1,9 @@
 <!DOCTYPE html>
 <html>
 <head>
 </head>
 <body>
-<div style="border: 10px solid transparent; border-image-source: -moz-linear-gradient(0rad, blue 25px, green 25px); border-image-width: 5464618830153;"></div>
+<div style="border: 10px solid transparent; border-image-source: linear-gradient(90deg, blue 25px, green 25px); border-image-width: 5464618830153;"></div>
 </body>
 </html>
 
--- a/layout/style/test/property_database.js
+++ b/layout/style/test/property_database.js
@@ -127,69 +127,16 @@ var validGradientAndElementValues = [
   "linear-gradient(.414rad, red 50%, 50%, blue 50%)",
   "linear-gradient(.414rad, red 50%, 20%, blue 50%)",
   "linear-gradient(.414rad, red 50%, 30%, blue 10%)",
   "linear-gradient(to right bottom, red, 20%, green 50%, 65%, blue)",
   "linear-gradient(to right bottom, red, 20%, green 10%, blue)",
   "linear-gradient(to right bottom, red, 50%, green 50%, 50%, blue)",
   "linear-gradient(to right bottom, red, 0%, green 50%, 100%, blue)",
 
-  "-moz-linear-gradient(red, blue)",
-  "-moz-linear-gradient(red, yellow, blue)",
-  "-moz-linear-gradient(red 1px, yellow 20%, blue 24em, green)",
-  "-moz-linear-gradient(red, yellow, green, blue 50%)",
-  "-moz-linear-gradient(red -50%, yellow -25%, green, blue)",
-  "-moz-linear-gradient(red -99px, yellow, green, blue 120%)",
-  "-moz-linear-gradient(#ffff00, #ef3, rgba(10, 20, 30, 0.4))",
-  "-moz-linear-gradient(rgba(10, 20, 30, 0.4), #ffff00, #ef3)",
-
-  "-moz-linear-gradient(to top, red, blue)",
-  "-moz-linear-gradient(to bottom, red, blue)",
-  "-moz-linear-gradient(to left, red, blue)",
-  "-moz-linear-gradient(to right, red, blue)",
-  "-moz-linear-gradient(to top left, red, blue)",
-  "-moz-linear-gradient(to top right, red, blue)",
-  "-moz-linear-gradient(to bottom left, red, blue)",
-  "-moz-linear-gradient(to bottom right, red, blue)",
-  "-moz-linear-gradient(to left top, red, blue)",
-  "-moz-linear-gradient(to left bottom, red, blue)",
-  "-moz-linear-gradient(to right top, red, blue)",
-  "-moz-linear-gradient(to right bottom, red, blue)",
-
-  "-moz-linear-gradient(top left, red, blue)",
-  "-moz-linear-gradient(0 0, red, blue)",
-  "-moz-linear-gradient(20% bottom, red, blue)",
-  "-moz-linear-gradient(center 20%, red, blue)",
-  "-moz-linear-gradient(left 35px, red, blue)",
-  "-moz-linear-gradient(10% 10em, red, blue)",
-  "-moz-linear-gradient(44px top, red, blue)",
-
-  "-moz-linear-gradient(0px, red, blue)",
-  "-moz-linear-gradient(0, red, blue)",
-  "-moz-linear-gradient(top left 45deg, red, blue)",
-  "-moz-linear-gradient(20% bottom -300deg, red, blue)",
-  "-moz-linear-gradient(center 20% 1.95929rad, red, blue)",
-  "-moz-linear-gradient(left 35px 30grad, red, blue)",
-  "-moz-linear-gradient(left 35px 0.1turn, red, blue)",
-  "-moz-linear-gradient(10% 10em 99999deg, red, blue)",
-  "-moz-linear-gradient(44px top -33deg, red, blue)",
-
-  "-moz-linear-gradient(-33deg, red, blue)",
-  "-moz-linear-gradient(30grad left 35px, red, blue)",
-  "-moz-linear-gradient(10deg 20px, red, blue)",
-  "-moz-linear-gradient(1turn 20px, red, blue)",
-  "-moz-linear-gradient(.414rad bottom, red, blue)",
-
-  "-moz-linear-gradient(blue calc(0px) ,green calc(25%) ,red calc(40px) ,blue calc(60px) , yellow  calc(100px))",
-  "-moz-linear-gradient(-33deg, blue calc(-25%) ,red 40px)",
-  "-moz-linear-gradient(10deg, blue calc(100px + -25%),red calc(40px))",
-  "-moz-linear-gradient(10deg, blue calc(-25px),red calc(100%))",
-  "-moz-linear-gradient(.414rad, blue calc(100px + -25px) ,green calc(100px + -25px) ,red calc(100px + -25%) ,blue calc(-25px) , yellow  calc(-25px))",
-  "-moz-linear-gradient(1turn, blue calc(-25%) ,green calc(25px) ,red calc(25%),blue calc(0px),white 50px, yellow  calc(-25px))",
-
   "radial-gradient(red, blue)",
   "radial-gradient(red, yellow, blue)",
   "radial-gradient(red 1px, yellow 20%, blue 24em, green)",
   "radial-gradient(red, yellow, green, blue 50%)",
   "radial-gradient(red -50%, yellow -25%, green, blue)",
   "radial-gradient(red -99px, yellow, green, blue 120%)",
   "radial-gradient(#ffff00, #ef3, rgba(10, 20, 30, 0.4))",
 
@@ -203,22 +150,23 @@ var validGradientAndElementValues = [
   "radial-gradient(at 10% 10em, red, blue)",
   "radial-gradient(at 44px top, red, blue)",
   "radial-gradient(at 0 0, red, blue)",
 
   "radial-gradient(farthest-corner, red, blue)",
   "radial-gradient(circle, red, blue)",
   "radial-gradient(ellipse closest-corner, red, blue)",
   "radial-gradient(closest-corner ellipse, red, blue)",
-
-  "radial-gradient(43px, red, blue)",
-  "radial-gradient(43px 43px, red, blue)",
-  "radial-gradient(50% 50%, red, blue)",
-  "radial-gradient(43px 50%, red, blue)",
-  "radial-gradient(50% 43px, red, blue)",
+  "radial-gradient(farthest-side circle, red, blue)",
+
+  "radial-gradient(at 43px, red, blue)",
+  "radial-gradient(at 43px 43px, red, blue)",
+  "radial-gradient(at 50% 50%, red, blue)",
+  "radial-gradient(at 43px 50%, red, blue)",
+  "radial-gradient(at 50% 43px, red, blue)",
   "radial-gradient(circle 43px, red, blue)",
   "radial-gradient(43px circle, red, blue)",
   "radial-gradient(ellipse 43px 43px, red, blue)",
   "radial-gradient(ellipse 50% 50%, red, blue)",
   "radial-gradient(ellipse 43px 50%, red, blue)",
   "radial-gradient(ellipse 50% 43px, red, blue)",
   "radial-gradient(50% 43px ellipse, red, blue)",
 
@@ -227,333 +175,94 @@ var validGradientAndElementValues = [
   "radial-gradient(circle farthest-side at 45px, red, blue)",
   "radial-gradient(closest-side ellipse at 50%, red, blue)",
   "radial-gradient(farthest-corner circle at 4em, red, blue)",
 
   "radial-gradient(30% 40% at top left, red, blue)",
   "radial-gradient(50px 60px at 15% 20%, red, blue)",
   "radial-gradient(7em 8em at 45px, red, blue)",
 
-  "-moz-radial-gradient(red, blue)",
-  "-moz-radial-gradient(red, yellow, blue)",
-  "-moz-radial-gradient(red 1px, yellow 20%, blue 24em, green)",
-  "-moz-radial-gradient(red, yellow, green, blue 50%)",
-  "-moz-radial-gradient(red -50%, yellow -25%, green, blue)",
-  "-moz-radial-gradient(red -99px, yellow, green, blue 120%)",
-  "-moz-radial-gradient(#ffff00, #ef3, rgba(10, 20, 30, 0.4))",
-
-  "-moz-radial-gradient(top left, red, blue)",
-  "-moz-radial-gradient(20% bottom, red, blue)",
-  "-moz-radial-gradient(center 20%, red, blue)",
-  "-moz-radial-gradient(left 35px, red, blue)",
-  "-moz-radial-gradient(10% 10em, red, blue)",
-  "-moz-radial-gradient(44px top, red, blue)",
-
-  "-moz-radial-gradient(top left 45deg, red, blue)",
-  "-moz-radial-gradient(0 0, red, blue)",
-  "-moz-radial-gradient(20% bottom -300deg, red, blue)",
-  "-moz-radial-gradient(center 20% 1.95929rad, red, blue)",
-  "-moz-radial-gradient(left 35px 30grad, red, blue)",
-  "-moz-radial-gradient(10% 10em 99999deg, red, blue)",
-  "-moz-radial-gradient(44px top -33deg, red, blue)",
-  "-moz-radial-gradient(rgba(10, 20, 30, 0.4), #ffff00, #ef3)",
-
-  "-moz-radial-gradient(-33deg, red, blue)",
-  "-moz-radial-gradient(30grad left 35px, red, blue)",
-  "-moz-radial-gradient(10deg 20px, red, blue)",
-  "-moz-radial-gradient(.414rad bottom, red, blue)",
-
-  "-moz-radial-gradient(cover, red, blue)",
-  "-moz-radial-gradient(cover circle, red, blue)",
-  "-moz-radial-gradient(contain, red, blue)",
-  "-moz-radial-gradient(contain ellipse, red, blue)",
-  "-moz-radial-gradient(circle, red, blue)",
-  "-moz-radial-gradient(ellipse closest-corner, red, blue)",
-  "-moz-radial-gradient(farthest-side circle, red, blue)",
-
-  "-moz-radial-gradient(top left, cover, red, blue)",
-  "-moz-radial-gradient(15% 20%, circle, red, blue)",
-  "-moz-radial-gradient(45px, ellipse closest-corner, red, blue)",
-  "-moz-radial-gradient(45px, farthest-side circle, red, blue)",
-
-  "-moz-radial-gradient(99deg, cover, red, blue)",
-  "-moz-radial-gradient(-1.2345rad, circle, red, blue)",
-  "-moz-radial-gradient(399grad, ellipse closest-corner, red, blue)",
-  "-moz-radial-gradient(399grad, farthest-side circle, red, blue)",
-
-  "-moz-radial-gradient(top left 99deg, cover, red, blue)",
-  "-moz-radial-gradient(15% 20% -1.2345rad, circle, red, blue)",
-  "-moz-radial-gradient(45px 399grad, ellipse closest-corner, red, blue)",
-  "-moz-radial-gradient(45px 399grad, farthest-side circle, red, blue)",
-
-  "-moz-repeating-linear-gradient(red, blue)",
-  "-moz-repeating-linear-gradient(red, yellow, blue)",
-  "-moz-repeating-linear-gradient(red 1px, yellow 20%, blue 24em, green)",
-  "-moz-repeating-linear-gradient(red, yellow, green, blue 50%)",
-  "-moz-repeating-linear-gradient(red -50%, yellow -25%, green, blue)",
-  "-moz-repeating-linear-gradient(red -99px, yellow, green, blue 120%)",
-  "-moz-repeating-linear-gradient(#ffff00, #ef3, rgba(10, 20, 30, 0.4))",
-  "-moz-repeating-linear-gradient(rgba(10, 20, 30, 0.4), #ffff00, #ef3)",
-
-  "-moz-repeating-linear-gradient(to top, red, blue)",
-  "-moz-repeating-linear-gradient(to bottom, red, blue)",
-  "-moz-repeating-linear-gradient(to left, red, blue)",
-  "-moz-repeating-linear-gradient(to right, red, blue)",
-  "-moz-repeating-linear-gradient(to top left, red, blue)",
-  "-moz-repeating-linear-gradient(to top right, red, blue)",
-  "-moz-repeating-linear-gradient(to bottom left, red, blue)",
-  "-moz-repeating-linear-gradient(to bottom right, red, blue)",
-  "-moz-repeating-linear-gradient(to left top, red, blue)",
-  "-moz-repeating-linear-gradient(to left bottom, red, blue)",
-  "-moz-repeating-linear-gradient(to right top, red, blue)",
-  "-moz-repeating-linear-gradient(to right bottom, red, blue)",
-
-  "-moz-repeating-linear-gradient(top left, red, blue)",
-  "-moz-repeating-linear-gradient(0 0, red, blue)",
-  "-moz-repeating-linear-gradient(20% bottom, red, blue)",
-  "-moz-repeating-linear-gradient(center 20%, red, blue)",
-  "-moz-repeating-linear-gradient(left 35px, red, blue)",
-  "-moz-repeating-linear-gradient(10% 10em, red, blue)",
-  "-moz-repeating-linear-gradient(44px top, red, blue)",
-
-  "-moz-repeating-linear-gradient(top left 45deg, red, blue)",
-  "-moz-repeating-linear-gradient(20% bottom -300deg, red, blue)",
-  "-moz-repeating-linear-gradient(center 20% 1.95929rad, red, blue)",
-  "-moz-repeating-linear-gradient(left 35px 30grad, red, blue)",
-  "-moz-repeating-linear-gradient(10% 10em 99999deg, red, blue)",
-  "-moz-repeating-linear-gradient(44px top -33deg, red, blue)",
-
-  "-moz-repeating-linear-gradient(-33deg, red, blue)",
-  "-moz-repeating-linear-gradient(30grad left 35px, red, blue)",
-  "-moz-repeating-linear-gradient(10deg 20px, red, blue)",
-  "-moz-repeating-linear-gradient(.414rad bottom, red, blue)",
-
-  "-moz-repeating-radial-gradient(red, blue)",
-  "-moz-repeating-radial-gradient(red, yellow, blue)",
-  "-moz-repeating-radial-gradient(red 1px, yellow 20%, blue 24em, green)",
-  "-moz-repeating-radial-gradient(red, yellow, green, blue 50%)",
-  "-moz-repeating-radial-gradient(red -50%, yellow -25%, green, blue)",
-  "-moz-repeating-radial-gradient(red -99px, yellow, green, blue 120%)",
-  "-moz-repeating-radial-gradient(#ffff00, #ef3, rgba(10, 20, 30, 0.4))",
-  "-moz-repeating-radial-gradient(rgba(10, 20, 30, 0.4), #ffff00, #ef3)",
+  "radial-gradient(circle at 15% 20%, red, blue)",
+
+  "repeating-radial-gradient(red, blue)",
+  "repeating-radial-gradient(red, yellow, blue)",
+  "repeating-radial-gradient(red 1px, yellow 20%, blue 24em, green)",
+  "repeating-radial-gradient(red, yellow, green, blue 50%)",
+  "repeating-radial-gradient(red -50%, yellow -25%, green, blue)",
+  "repeating-radial-gradient(red -99px, yellow, green, blue 120%)",
+  "repeating-radial-gradient(#ffff00, #ef3, rgba(10, 20, 30, 0.4))",
+  "repeating-radial-gradient(rgba(10, 20, 30, 0.4), #ffff00, #ef3)",
 
   "repeating-radial-gradient(at top left, red, blue)",
   "repeating-radial-gradient(at 0 0, red, blue)",
   "repeating-radial-gradient(at 20% bottom, red, blue)",
   "repeating-radial-gradient(at center 20%, red, blue)",
   "repeating-radial-gradient(at left 35px, red, blue)",
   "repeating-radial-gradient(at 10% 10em, red, blue)",
   "repeating-radial-gradient(at 44px top, red, blue)",
 
-  "-moz-repeating-radial-gradient(farthest-corner, red, blue)",
-  "-moz-repeating-radial-gradient(circle, red, blue)",
-  "-moz-repeating-radial-gradient(ellipse closest-corner, red, blue)",
-
   "repeating-radial-gradient(farthest-corner at top left, red, blue)",
   "repeating-radial-gradient(closest-corner ellipse at 45px, red, blue)",
   "repeating-radial-gradient(farthest-side circle at 45px, red, blue)",
   "repeating-radial-gradient(ellipse closest-side at 50%, red, blue)",
   "repeating-radial-gradient(circle farthest-corner at 4em, red, blue)",
 
   "repeating-radial-gradient(30% 40% at top left, red, blue)",
   "repeating-radial-gradient(50px 60px at 15% 20%, red, blue)",
   "repeating-radial-gradient(7em 8em at 45px, red, blue)",
 
   "-moz-image-rect(url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAKElEQVR42u3NQQ0AAAgEoNP+nTWFDzcoQE1udQQCgUAgEAgEAsGTYAGjxAE/G/Q2tQAAAABJRU5ErkJggg==), 2, 10, 10, 2)",
   "-moz-image-rect(url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAKElEQVR42u3NQQ0AAAgEoNP+nTWFDzcoQE1udQQCgUAgEAgEAsGTYAGjxAE/G/Q2tQAAAABJRU5ErkJggg==), 10%, 50%, 30%, 0%)",
   "-moz-image-rect(url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAKElEQVR42u3NQQ0AAAgEoNP+nTWFDzcoQE1udQQCgUAgEAgEAsGTYAGjxAE/G/Q2tQAAAABJRU5ErkJggg==), 10, 50%, 30%, 0)",
 
-  "-moz-radial-gradient(calc(25%) top, red, blue)",
-  "-moz-radial-gradient(left calc(25%), red, blue)",
-  "-moz-radial-gradient(calc(25px) top, red, blue)",
-  "-moz-radial-gradient(left calc(25px), red, blue)",
-  "-moz-radial-gradient(calc(-25%) top, red, blue)",
-  "-moz-radial-gradient(left calc(-25%), red, blue)",
-  "-moz-radial-gradient(calc(-25px) top, red, blue)",
-  "-moz-radial-gradient(left calc(-25px), red, blue)",
-  "-moz-radial-gradient(calc(100px + -25%) top, red, blue)",
-  "-moz-radial-gradient(left calc(100px + -25%), red, blue)",
-  "-moz-radial-gradient(calc(100px + -25px) top, red, blue)",
-  "-moz-radial-gradient(left calc(100px + -25px), red, blue)"
+  "radial-gradient(at calc(25%) top, red, blue)",
+  "radial-gradient(at left calc(25%), red, blue)",
+  "radial-gradient(at calc(25px) top, red, blue)",
+  "radial-gradient(at left calc(25px), red, blue)",
+  "radial-gradient(at calc(-25%) top, red, blue)",
+  "radial-gradient(at left calc(-25%), red, blue)",
+  "radial-gradient(at calc(-25px) top, red, blue)",
+  "radial-gradient(at left calc(-25px), red, blue)",
+  "radial-gradient(at calc(100px + -25%) top, red, blue)",
+  "radial-gradient(at left calc(100px + -25%), red, blue)",
+  "radial-gradient(at calc(100px + -25px) top, red, blue)",
+  "radial-gradient(at left calc(100px + -25px), red, blue)"
 ];
 var invalidGradientAndElementValues = [
   "-moz-element(#a:1)",
   "-moz-element(a#a)",
   "-moz-element(#a a)",
   "-moz-element(#a+a)",
   "-moz-element(#a())",
   /* no quirks mode colors */
   "linear-gradient(red, ff00ff)",
   /* no quirks mode colors */
-  "-moz-radial-gradient(10% bottom, ffffff, black) scroll no-repeat",
+  "radial-gradient(at 10% bottom, ffffff, black) scroll no-repeat",
   /* no quirks mode lengths */
-  "-moz-linear-gradient(10 10px -45deg, red, blue) repeat",
-  "-moz-linear-gradient(10px 10 -45deg, red, blue) repeat",
   "linear-gradient(red -99, yellow, green, blue 120%)",
   /* Unitless 0 is invalid as an <angle> */
-  "-moz-linear-gradient(top left 0, red, blue)",
-  "-moz-linear-gradient(5px 5px 0, red, blue)",
   "linear-gradient(0, red, blue)",
   /* There must be a comma between gradient-line (e.g. <angle>) and colors */
-  "-moz-linear-gradient(30deg red, blue)",
-  "-moz-linear-gradient(5px 5px 30deg red, blue)",
-  "-moz-linear-gradient(5px 5px red, blue)",
-  "-moz-linear-gradient(top left 30deg red, blue)",
+  "linear-gradient(30deg red, blue)",
   "linear-gradient(to top left red, blue)",
   "linear-gradient(to right red, blue)",
   /* Invalid color, calc() or -moz-image-rect() function */
   "linear-gradient(red, rgb(0, rubbish, 0) 50%, red)",
   "linear-gradient(red, red calc(50% + rubbish), red)",
   "linear-gradient(to top calc(50% + rubbish), red, blue)",
-  /* Old syntax */
-  "-moz-linear-gradient(10px 10px, 20px, 30px 30px, 40px, from(blue), to(red))",
-  "-moz-radial-gradient(20px 20px, 10px 10px, from(green), to(#ff00ff))",
-  "-moz-radial-gradient(10px 10px, 20%, 40px 40px, 10px, from(green), to(#ff00ff))",
-  "-moz-linear-gradient(10px, 20px, 30px, 40px, color-stop(0.5, #00ccff))",
-  "-moz-linear-gradient(20px 20px, from(blue), to(red))",
-  "-moz-linear-gradient(40px 40px, 10px 10px, from(blue) to(red) color-stop(10%, fuchsia))",
-  "-moz-linear-gradient(20px 20px 30px, 10px 10px, from(red), to(#ff0000))",
-  "-moz-radial-gradient(left top, center, 20px 20px, 10px, from(blue), to(red))",
-  "-moz-linear-gradient(left left, top top, from(blue))",
-  "-moz-linear-gradient(inherit, 10px 10px, from(blue))",
-  /* New syntax */
-  "-moz-linear-gradient(10px 10px, 20px, 30px 30px, 40px, blue 0, red 100%)",
-  "-moz-radial-gradient(20px 20px, 10px 10px, from(green), to(#ff00ff))",
-  "-moz-radial-gradient(10px 10px, 20%, 40px 40px, 10px, from(green), to(#ff00ff))",
-  "-moz-linear-gradient(10px, 20px, 30px, 40px, #00ccff 50%)",
-  "-moz-linear-gradient(40px 40px, 10px 10px, blue 0 fuchsia 10% red 100%)",
-  "-moz-linear-gradient(20px 20px 30px, 10px 10px, red 0, #ff0000 100%)",
-  "-moz-radial-gradient(left top, center, 20px 20px, 10px, from(blue), to(red))",
-  "-moz-linear-gradient(left left, top top, blue 0)",
-  "-moz-linear-gradient(inherit, 10px 10px, blue 0)",
-  "-moz-linear-gradient(left left blue red)",
-  "-moz-linear-gradient(left left blue, red)",
-  "-moz-linear-gradient()",
-  "-moz-linear-gradient(cover, red, blue)",
-  "-moz-linear-gradient(auto, red, blue)",
-  "-moz-linear-gradient(22 top, red, blue)",
-  "-moz-linear-gradient(10% red blue)",
-  "-moz-linear-gradient(10%, red blue)",
-  "-moz-linear-gradient(10%,, red, blue)",
-  "-moz-linear-gradient(45px, center, red, blue)",
-  "-moz-linear-gradient(45px, center red, blue)",
-  "-moz-radial-gradient(contain, ellipse, red, blue)",
-  "-moz-radial-gradient(10deg contain, red, blue)",
-  "-moz-radial-gradient(10deg, contain,, red, blue)",
-  "-moz-radial-gradient(contain contain, red, blue)",
-  "-moz-radial-gradient(ellipse circle, red, blue)",
-  "-moz-radial-gradient(to top left, red, blue)",
-  "-moz-radial-gradient(center, 10%, red, blue)",
-  "-moz-radial-gradient(5rad, 20px, red, blue)",
-  "-moz-radial-gradient(40%, -100px -10%, red, blue)",
-
-  "-moz-radial-gradient(at top left to cover, red, blue)",
-  "-moz-radial-gradient(at 15% 20% circle, red, blue)",
-
-  "-moz-radial-gradient(to cover, red, blue)",
-  "-moz-radial-gradient(to contain, red, blue)",
-  "-moz-radial-gradient(to closest-side circle, red, blue)",
-  "-moz-radial-gradient(to farthest-corner ellipse, red, blue)",
-
-  "-moz-radial-gradient(ellipse at 45px closest-corner, red, blue)",
-  "-moz-radial-gradient(circle at 45px farthest-side, red, blue)",
-  "-moz-radial-gradient(ellipse 45px, closest-side, red, blue)",
-  "-moz-radial-gradient(circle 45px, farthest-corner, red, blue)",
-  "-moz-radial-gradient(ellipse, ellipse closest-side, red, blue)",
-  "-moz-radial-gradient(circle, circle farthest-corner, red, blue)",
-
-  "-moz-radial-gradient(99deg to farthest-corner, red, blue)",
-  "-moz-radial-gradient(-1.2345rad circle, red, blue)",
-  "-moz-radial-gradient(ellipse 399grad to closest-corner, red, blue)",
-  "-moz-radial-gradient(circle 399grad to farthest-side, red, blue)",
-
-  "-moz-radial-gradient(at top left 99deg, to farthest-corner, red, blue)",
-  "-moz-radial-gradient(circle at 15% 20% -1.2345rad, red, blue)",
-  "-moz-radial-gradient(to top left at 30% 40%, red, blue)",
-  "-moz-radial-gradient(ellipse at 45px 399grad, to closest-corner, red, blue)",
-  "-moz-radial-gradient(at 45px 399grad to farthest-side circle, red, blue)",
-
-  "-moz-radial-gradient(to 50%, red, blue)",
-  "-moz-radial-gradient(circle to 50%, red, blue)",
-  "-moz-radial-gradient(circle to 43px 43px, red, blue)",
-  "-moz-radial-gradient(circle to 50% 50%, red, blue)",
-  "-moz-radial-gradient(circle to 43px 50%, red, blue)",
-  "-moz-radial-gradient(circle to 50% 43px, red, blue)",
-  "-moz-radial-gradient(ellipse to 43px, red, blue)",
-  "-moz-radial-gradient(ellipse to 50%, red, blue)",
-
-  "-moz-linear-gradient(to 0 0, red, blue)",
-  "-moz-linear-gradient(to 20% bottom, red, blue)",
-  "-moz-linear-gradient(to center 20%, red, blue)",
-  "-moz-linear-gradient(to left 35px, red, blue)",
-  "-moz-linear-gradient(to 10% 10em, red, blue)",
-  "-moz-linear-gradient(to 44px top, red, blue)",
-  "-moz-linear-gradient(to top left 45deg, red, blue)",
-  "-moz-linear-gradient(to 20% bottom -300deg, red, blue)",
-  "-moz-linear-gradient(to center 20% 1.95929rad, red, blue)",
-  "-moz-linear-gradient(to left 35px 30grad, red, blue)",
-  "-moz-linear-gradient(to 10% 10em 99999deg, red, blue)",
-  "-moz-linear-gradient(to 44px top -33deg, red, blue)",
-  "-moz-linear-gradient(to -33deg, red, blue)",
-  "-moz-linear-gradient(to 30grad left 35px, red, blue)",
-  "-moz-linear-gradient(to 10deg 20px, red, blue)",
-  "-moz-linear-gradient(to .414rad bottom, red, blue)",
-
-  "-moz-linear-gradient(to top top, red, blue)",
-  "-moz-linear-gradient(to bottom bottom, red, blue)",
-  "-moz-linear-gradient(to left left, red, blue)",
-  "-moz-linear-gradient(to right right, red, blue)",
-
-  "-moz-repeating-linear-gradient(10px 10px, 20px, 30px 30px, 40px, blue 0, red 100%)",
-  "-moz-repeating-radial-gradient(20px 20px, 10px 10px, from(green), to(#ff00ff))",
-  "-moz-repeating-radial-gradient(10px 10px, 20%, 40px 40px, 10px, from(green), to(#ff00ff))",
-  "-moz-repeating-linear-gradient(10px, 20px, 30px, 40px, #00ccff 50%)",
-  "-moz-repeating-linear-gradient(40px 40px, 10px 10px, blue 0 fuchsia 10% red 100%)",
-  "-moz-repeating-linear-gradient(20px 20px 30px, 10px 10px, red 0, #ff0000 100%)",
-  "-moz-repeating-radial-gradient(left top, center, 20px 20px, 10px, from(blue), to(red))",
-  "-moz-repeating-linear-gradient(left left, top top, blue 0)",
-  "-moz-repeating-linear-gradient(inherit, 10px 10px, blue 0)",
-  "-moz-repeating-linear-gradient(left left blue red)",
-  "-moz-repeating-linear-gradient()",
-
-  "-moz-repeating-linear-gradient(to 0 0, red, blue)",
-  "-moz-repeating-linear-gradient(to 20% bottom, red, blue)",
-  "-moz-repeating-linear-gradient(to center 20%, red, blue)",
-  "-moz-repeating-linear-gradient(to left 35px, red, blue)",
-  "-moz-repeating-linear-gradient(to 10% 10em, red, blue)",
-  "-moz-repeating-linear-gradient(to 44px top, red, blue)",
-  "-moz-repeating-linear-gradient(to top left 45deg, red, blue)",
-  "-moz-repeating-linear-gradient(to 20% bottom -300deg, red, blue)",
-  "-moz-repeating-linear-gradient(to center 20% 1.95929rad, red, blue)",
-  "-moz-repeating-linear-gradient(to left 35px 30grad, red, blue)",
-  "-moz-repeating-linear-gradient(to 10% 10em 99999deg, red, blue)",
-  "-moz-repeating-linear-gradient(to 44px top -33deg, red, blue)",
-  "-moz-repeating-linear-gradient(to -33deg, red, blue)",
-  "-moz-repeating-linear-gradient(to 30grad left 35px, red, blue)",
-  "-moz-repeating-linear-gradient(to 10deg 20px, red, blue)",
-  "-moz-repeating-linear-gradient(to .414rad bottom, red, blue)",
-
-  "-moz-repeating-linear-gradient(to top top, red, blue)",
-  "-moz-repeating-linear-gradient(to bottom bottom, red, blue)",
-  "-moz-repeating-linear-gradient(to left left, red, blue)",
-  "-moz-repeating-linear-gradient(to right right, red, blue)",
-
-  "-moz-repeating-radial-gradient(to top left at 30% 40%, red, blue)",
-  "-moz-repeating-radial-gradient(ellipse at 45px closest-corner, red, blue)",
-  "-moz-repeating-radial-gradient(circle at 45px farthest-side, red, blue)",
 
   "radial-gradient(circle 175px 20px, black, white)",
   "radial-gradient(175px 20px circle, black, white)",
   "radial-gradient(ellipse 175px, black, white)",
   "radial-gradient(175px ellipse, black, white)",
   "radial-gradient(50%, red, blue)",
   "radial-gradient(circle 50%, red, blue)",
   "radial-gradient(50% circle, red, blue)",
 
-  /* Valid only when prefixed */
+  /* Used to be valid only when prefixed */
   "linear-gradient(top left, red, blue)",
   "linear-gradient(0 0, red, blue)",
   "linear-gradient(20% bottom, red, blue)",
   "linear-gradient(center 20%, red, blue)",
   "linear-gradient(left 35px, red, blue)",
   "linear-gradient(10% 10em, red, blue)",
   "linear-gradient(44px top, red, blue)",
 
@@ -601,42 +310,17 @@ var invalidGradientAndElementValues = [
   "radial-gradient(99deg, cover, red, blue)",
   "radial-gradient(-1.2345rad, circle, red, blue)",
   "radial-gradient(399grad, ellipse closest-corner, red, blue)",
   "radial-gradient(399grad, farthest-side circle, red, blue)",
 
   "radial-gradient(top left 99deg, cover, red, blue)",
   "radial-gradient(15% 20% -1.2345rad, circle, red, blue)",
   "radial-gradient(45px 399grad, ellipse closest-corner, red, blue)",
-  "radial-gradient(45px 399grad, farthest-side circle, red, blue)",
-
-  /* Valid only when unprefixed */
-  "-moz-radial-gradient(at top left, red, blue)",
-  "-moz-radial-gradient(at 20% bottom, red, blue)",
-  "-moz-radial-gradient(at center 20%, red, blue)",
-  "-moz-radial-gradient(at left 35px, red, blue)",
-  "-moz-radial-gradient(at 10% 10em, red, blue)",
-  "-moz-radial-gradient(at 44px top, red, blue)",
-  "-moz-radial-gradient(at 0 0, red, blue)",
-
-  "-moz-radial-gradient(circle 43px, red, blue)",
-  "-moz-radial-gradient(ellipse 43px 43px, red, blue)",
-  "-moz-radial-gradient(ellipse 50% 50%, red, blue)",
-  "-moz-radial-gradient(ellipse 43px 50%, red, blue)",
-  "-moz-radial-gradient(ellipse 50% 43px, red, blue)",
-
-  "-moz-radial-gradient(farthest-corner at top left, red, blue)",
-  "-moz-radial-gradient(ellipse closest-corner at 45px, red, blue)",
-  "-moz-radial-gradient(circle farthest-side at 45px, red, blue)",
-  "-moz-radial-gradient(closest-side ellipse at 50%, red, blue)",
-  "-moz-radial-gradient(farthest-corner circle at 4em, red, blue)",
-
-  "-moz-radial-gradient(30% 40% at top left, red, blue)",
-  "-moz-radial-gradient(50px 60px at 15% 20%, red, blue)",
-  "-moz-radial-gradient(7em 8em at 45px, red, blue)"
+  "radial-gradient(45px 399grad, farthest-side circle, red, blue)"
 ];
 var unbalancedGradientAndElementValues = [
   "-moz-element(#a()",
 ];
 
 if (IsCSSPropertyPrefEnabled("layout.css.prefixes.webkit")) {
   // Extend gradient lists with valid/invalid webkit-prefixed expressions:
   validGradientAndElementValues.push(
@@ -2149,64 +1833,55 @@ var gCSSProperties = {
       "top left / 100px 100px",
       "top left / 100px auto",
       "top left / 100px 10%",
       "top left / 100px calc(20px)",
       "bottom right scroll none transparent repeat",
       "50% transparent",
       "transparent 50%",
       "50%",
-      "-moz-radial-gradient(10% bottom, #ffffff, black) scroll no-repeat",
-      "-moz-linear-gradient(10px 10px -45deg, red, blue) repeat",
-      "-moz-linear-gradient(10px 10px -0.125turn, red, blue) repeat",
-      "-moz-repeating-radial-gradient(10% bottom, #ffffff, black) scroll no-repeat",
-      "-moz-repeating-linear-gradient(10px 10px -45deg, red, blue) repeat",
+      "radial-gradient(at 10% bottom, #ffffff, black) scroll no-repeat",
+      "repeating-radial-gradient(at 10% bottom, #ffffff, black) scroll no-repeat",
       "-moz-element(#test) lime",
         /* multiple backgrounds */
         "url(404.png), url(404.png)",
         "url(404.png), url(404.png) transparent",
         "url(404.png), url(404.png) red",
         "repeat-x, fixed, none",
         "0% top url(404.png), url(404.png) 0% top",
         "fixed repeat-y top left url(404.png), repeat-x green",
-        "url(404.png), -moz-linear-gradient(20px 20px -45deg, blue, green), -moz-element(#a) black",
         "top left / contain, bottom right / cover",
         /* test cases with clip+origin in the shorthand */
         "url(404.png) green padding-box",
         "url(404.png) border-box transparent",
         "content-box url(404.png) blue",
         "url(404.png) green padding-box padding-box",
         "url(404.png) green padding-box border-box",
         "content-box border-box url(404.png) blue",
     ],
     invalid_values: [
       /* mixes with keywords have to be in correct order */
       "50% left", "top 50%",
       /* no quirks mode colors */
-      "-moz-radial-gradient(10% bottom, ffffff, black) scroll no-repeat",
+      "radial-gradient(at 10% bottom, ffffff, black) scroll no-repeat",
       /* no quirks mode lengths */
-      "-moz-linear-gradient(10 10px -45deg, red, blue) repeat",
-      "-moz-linear-gradient(10px 10 -45deg, red, blue) repeat",
       "linear-gradient(red -99, yellow, green, blue 120%)",
       /* bug 258080: don't accept background-position separated */
       "left url(404.png) top", "top url(404.png) left",
       /* not allowed to have color in non-bottom layer */
       "url(404.png) transparent, url(404.png)",
       "url(404.png) red, url(404.png)",
       "url(404.png) transparent, url(404.png) transparent",
       "url(404.png) transparent red, url(404.png) transparent red",
       "url(404.png) red, url(404.png) red",
       "url(404.png) rgba(0, 0, 0, 0), url(404.png)",
       "url(404.png) rgb(255, 0, 0), url(404.png)",
       "url(404.png) rgba(0, 0, 0, 0), url(404.png) rgba(0, 0, 0, 0)",
       "url(404.png) rgba(0, 0, 0, 0) rgb(255, 0, 0), url(404.png) rgba(0, 0, 0, 0) rgb(255, 0, 0)",
       "url(404.png) rgb(255, 0, 0), url(404.png) rgb(255, 0, 0)",
-      /* bug 513395: old syntax for gradients */
-      "-moz-radial-gradient(10% bottom, 30px, 20px 20px, 10px, from(#ffffff), to(black)) scroll no-repeat",
-      "-moz-linear-gradient(10px 10px, 20px 20px, from(red), to(blue)) repeat",
       /* clip and origin separated in the shorthand */
       "url(404.png) padding-box green border-box",
       "url(404.png) padding-box green padding-box",
       "transparent padding-box url(404.png) border-box",
       "transparent padding-box url(404.png) padding-box",
       /* error inside functions */
       "-moz-image-rect(url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAKElEQVR42u3NQQ0AAAgEoNP+nTWFDzcoQE1udQQCgUAgEAgEAsGTYAGjxAE/G/Q2tQAAAABJRU5ErkJggg==), rubbish, 50%, 30%, 0) transparent",
       "-moz-element(#a rubbish) black",
@@ -7002,45 +6677,39 @@ if (SupportsMaskShorthand()) {
       "top left / 100px auto",
       "top left / 100px 10%",
       "top left / 100px calc(20px)",
       "bottom right add none alpha repeat",
       "50% alpha",
       "alpha 50%",
       "50%",
       "url(#mymask)",
-      "-moz-radial-gradient(10% bottom, #ffffff, black) add no-repeat",
-      "-moz-linear-gradient(10px 10px -45deg, red, blue) repeat",
-      "-moz-linear-gradient(10px 10px -0.125turn, red, blue) repeat",
-      "-moz-repeating-radial-gradient(10% bottom, #ffffff, black) add no-repeat",
-      "-moz-repeating-linear-gradient(10px 10px -45deg, red, blue) repeat",
+      "radial-gradient(at 10% bottom, #ffffff, black) add no-repeat",
+      "repeating-radial-gradient(at 10% bottom, #ffffff, black) no-repeat",
       "-moz-element(#test) alpha",
       /* multiple mask-image */
       "url(404.png), url(404.png)",
       "repeat-x, subtract, none",
       "0% top url(404.png), url(404.png) 50% top",
       "subtract repeat-y top left url(404.png), repeat-x alpha",
-      "url(404.png), -moz-linear-gradient(20px 20px -45deg, blue, green), -moz-element(#a) alpha",
       "top left / contain, bottom right / cover",
       /* test cases with clip+origin in the shorthand */
       "url(404.png) alpha padding-box",
       "url(404.png) border-box alpha",
       "content-box url(404.png)",
       "url(404.png) alpha padding-box padding-box",
       "url(404.png) alpha padding-box border-box",
       "content-box border-box url(404.png)",
     ],
     invalid_values: [
       /* mixes with keywords have to be in correct order */
       "50% left", "top 50%",
       /* no quirks mode colors */
-      "-moz-radial-gradient(10% bottom, ffffff, black) add no-repeat",
+      "radial-gradient(at 10% bottom, ffffff, black) add no-repeat",
       /* no quirks mode lengths */
-      "-moz-linear-gradient(10 10px -45deg, red, blue) repeat",
-      "-moz-linear-gradient(10px 10 -45deg, red, blue) repeat",
       "linear-gradient(red -99, yellow, green, blue 120%)",
       /* bug 258080: don't accept background-position separated */
       "left url(404.png) top", "top url(404.png) left",
       "alpha padding-box url(404.png) border-box",
       "alpha padding-box url(404.png) padding-box",
       "-moz-element(#a rubbish)",
       "left top / match-source"
     ]
@@ -7735,17 +7404,17 @@ if (IsCSSPropertyPrefEnabled("layout.css
   gCSSProperties["border-top-right-radius"].invalid_values.push("unset 2px", "2px unset");
   gCSSProperties["-moz-border-right-colors"].invalid_values.push("red unset", "unset red");
   gCSSProperties["-moz-border-top-colors"].invalid_values.push("red unset", "unset red");
   gCSSProperties["-moz-outline-radius"].invalid_values.push("unset 2px", "unset / 2px", "2px unset", "2px / unset");
   gCSSProperties["-moz-outline-radius-bottomleft"].invalid_values.push("unset 2px", "2px unset");
   gCSSProperties["-moz-outline-radius-bottomright"].invalid_values.push("unset 2px", "2px unset");
   gCSSProperties["-moz-outline-radius-topleft"].invalid_values.push("unset 2px", "2px unset");
   gCSSProperties["-moz-outline-radius-topright"].invalid_values.push("unset 2px", "2px unset");
-  gCSSProperties["background-image"].invalid_values.push("-moz-linear-gradient(unset, 10px 10px, from(blue))", "-moz-linear-gradient(unset, 10px 10px, blue 0)", "-moz-repeating-linear-gradient(unset, 10px 10px, blue 0)");
+  gCSSProperties["background-image"].invalid_values.push("linear-gradient(unset, 10px 10px, from(blue))", "linear-gradient(unset, 10px 10px, blue 0)", "repeating-linear-gradient(unset, 10px 10px, blue 0)");
   gCSSProperties["box-shadow"].invalid_values.push("unset, 2px 2px", "2px 2px, unset", "inset unset");
   gCSSProperties["text-overflow"].invalid_values.push('"hello" unset', 'unset "hello"', 'clip unset', 'unset clip', 'unset inherit', 'unset none', 'initial unset');
   gCSSProperties["text-shadow"].invalid_values.push("unset, 2px 2px", "2px 2px, unset");
   gCSSProperties["transition"].invalid_values.push("2s unset");
   gCSSProperties["transition-property"].invalid_values.push("unset, color", "color, unset");
   if (IsCSSPropertyPrefEnabled("layout.css.filters.enabled")) {
     gCSSProperties["filter"].invalid_values.push("drop-shadow(unset, 2px 2px)", "drop-shadow(2px 2px, unset)");
   }
--- a/layout/style/test/stylo-failures.md
+++ b/layout/style/test/stylo-failures.md
@@ -65,17 +65,17 @@ to mochitest command.
 * test_bug397427.html: @import issue bug 1331291 and CSSOM support of @import [1]
 * console support bug 1352669
   * test_bug413958.html `monitorConsole` [3]
   * test_parser_diagnostics_unprintables.html [550]
 * Transition support:
   * test_transitions.html: pseudo elements [12]
   * Events:
     * test_animations_event_order.html [2]
-* test_computed_style.html `gradient`: -moz- and -webkit-prefixed gradient values [22]
+* test_computed_style.html `gradient`: -webkit-prefixed gradient values [13]
 * test_bug829816.html: counter-{reset,increment} serialization difference bug 1363968 [8]
 * \@counter-style support bug 1328319
   * test_counter_descriptor_storage.html [1]
   * test_counter_style.html [5]
   * test_value_storage.html `symbols(` [30]
   * ... `list-style-type` [60]
   * ... `'list-style'` [30]
   * ... `'content`: various value as list-style-type in counter functions [2]
@@ -111,23 +111,17 @@ to mochitest command.
 * Unimplemented prefixed properties:
   * test_variables.html `var(--var6)`: -x-system-font [1]
 * Unimplemented CSS properties:
   * font-variant-{alternates,east-asian,ligatures,numeric} properties servo/servo#15957
     * test_property_syntax_errors.html `font-variant-alternates` [2]
     * test_value_storage.html `font-variant` [167]
     * test_specified_value_serialization.html `bug-721136` [1]
 * Unsupported prefixed values
-  * moz-prefixed gradient functions bug 1337655
-    * test_value_storage.html `-moz-linear-gradient` [322]
-    * ... `-moz-radial-gradient` [309]
-    * ... `-moz-repeating-` [298]
-    * test_specified_value_serialization.html `-moz-linear-gradient` [2]
   * serialization of prefixed gradient functions bug 1358710
-    * test_specified_value_serialization.html `-webkit-linear-gradient` [1]
     * test_specified_value_serialization.html `-webkit-radial-gradient` [1]
   * moz-prefixed intrinsic width values bug 1355402
     * test_box_size_keywords.html [16]
     * test_flexbox_flex_shorthand.html `-moz-fit-content` [4]
     * test_value_storage.html `-moz-max-content` [46]
     * ... `-moz-min-content` [6]
     * ... `-moz-fit-content` [6]
     * ... `-moz-available` [4]
--- a/layout/style/test/test_computed_style.html
+++ b/layout/style/test/test_computed_style.html
@@ -198,42 +198,39 @@ var noframe_container = document.getElem
   }
 
   p.remove();
 })();
 
 (function test_bug_716628() {
   // Test that various gradient styles round-trip correctly
   var backgroundImages = [
-    [ "-moz-radial-gradient(10% bottom, #ffffff, black)",
+    [ "radial-gradient(at 10% bottom, #ffffff, black)",
       "radial-gradient(at 10% 100%, rgb(255, 255, 255), rgb(0, 0, 0))",
       "radial gradient 1" ],
-    [ "-moz-radial-gradient(#ffffff, black)",
+    [ "radial-gradient(#ffffff, black)",
       "radial-gradient(rgb(255, 255, 255), rgb(0, 0, 0))",
       "radial gradient 2" ],
-    [ "-moz-radial-gradient(cover, #ffffff, black)",
+    [ "radial-gradient(farthest-corner, #ffffff, black)",
       "radial-gradient(rgb(255, 255, 255), rgb(0, 0, 0))",
       "radial gradient 3" ],
-    [ "-moz-radial-gradient(top left -45deg, #ffffff, black)",
-      "-moz-radial-gradient(0% 0% -45deg, rgb(255, 255, 255), rgb(0, 0, 0))",
-      "radial gradient with angle in degrees" ],
-    [ "-moz-linear-gradient(red, blue)",
+    [ "linear-gradient(red, blue)",
       "linear-gradient(rgb(255, 0, 0), rgb(0, 0, 255))",
       "linear gradient 1" ],
-    [ "-moz-linear-gradient(to bottom, red, blue)",
+    [ "linear-gradient(to bottom, red, blue)",
       "linear-gradient(rgb(255, 0, 0), rgb(0, 0, 255))",
       "linear gradient 2" ],
-    [ "-moz-linear-gradient(to right, red, blue)",
+    [ "linear-gradient(to right, red, blue)",
       "linear-gradient(to right, rgb(255, 0, 0), rgb(0, 0, 255))",
       "linear gradient 3" ],
-    [ "-moz-linear-gradient(10px 10px -45deg, red, blue)",
-      "-moz-linear-gradient(10px 10px -45deg, rgb(255, 0, 0), rgb(0, 0, 255))",
+    [ "linear-gradient(-45deg, red, blue)",
+      "linear-gradient(-45deg, rgb(255, 0, 0), rgb(0, 0, 255))",
       "linear gradient with angle in degrees" ],
-    [ "-moz-linear-gradient(10px 10px -0.125turn, red, blue)",
-      "-moz-linear-gradient(10px 10px -0.125turn, rgb(255, 0, 0), rgb(0, 0, 255))",
+    [ "linear-gradient(-0.125turn, red, blue)",
+      "linear-gradient(-0.125turn, rgb(255, 0, 0), rgb(0, 0, 255))",
       "linear gradient with angle in turns" ],
   ];
 
   var p = document.createElement("p");
   var cs = getComputedStyle(p, "");
   frame_container.appendChild(p);
 
   for (var i = 0; i < backgroundImages.length; ++i) {
@@ -533,35 +530,26 @@ var noframe_container = document.getElem
 (function test_bug_1357117() {
   // Test that vendor-prefixed gradient styles round-trip with the same prefix,
   // or with no prefix.
   var backgroundImages = [
     // [ specified style,
     //   expected computed style,
     //   descriptionOfTestcase ],
     // Linear gradient with legacy-gradient-line (needs prefixed syntax):
-    [ "-moz-linear-gradient(10deg, red, blue)",
-      "-moz-linear-gradient(10deg, rgb(255, 0, 0), rgb(0, 0, 255))",
-      "-moz-linear-gradient with angled legacy-gradient-line" ],
     [ "-webkit-linear-gradient(10deg, red, blue)",
       "-webkit-linear-gradient(10deg, rgb(255, 0, 0), rgb(0, 0, 255))",
       "-webkit-linear-gradient with angled legacy-gradient-line" ],
 
     // Linear gradient with box corner (needs prefixed syntax):
-    [ "-moz-linear-gradient(top left, red, blue)",
-      "-moz-linear-gradient(0% 0%, rgb(255, 0, 0), rgb(0, 0, 255))",
-      "-moz-linear-gradient with box corner" ],
     [ "-webkit-linear-gradient(top left, red, blue)",
       "-webkit-linear-gradient(left top, rgb(255, 0, 0), rgb(0, 0, 255))",
       "-webkit-linear-gradient with box corner" ],
 
     // Radial gradients (should be serialized using modern unprefixed style):
-    [ "-moz-radial-gradient(contain, red, blue)",
-      "radial-gradient(closest-side, rgb(255, 0, 0), rgb(0, 0, 255))",
-      "-moz-radial-gradient with legacy 'contain' keyword" ],
     [ "-webkit-radial-gradient(contain, red, blue)",
       "radial-gradient(closest-side, rgb(255, 0, 0), rgb(0, 0, 255))",
       "-webkit-radial-gradient with legacy 'contain' keyword" ],
   ];
 
   var p = document.createElement("p");
   var cs = getComputedStyle(p, "");
   frame_container.appendChild(p);
--- a/layout/style/test/test_specified_value_serialization.html
+++ b/layout/style/test/test_specified_value_serialization.html
@@ -109,39 +109,26 @@
 (function test_bug_1357117() {
   // Test that vendor-prefixed gradient styles round-trip with the same prefix,
   // or with no prefix.
   var backgroundImages = [
     // [ specified style,
     //   expected serialization,
     //   descriptionOfTestcase ],
     // Linear gradient with legacy-gradient-line (needs prefixed syntax):
-    [ "-moz-linear-gradient(10deg, red, blue)",
-      "-moz-linear-gradient(10deg, red, blue)",
-      "-moz-linear-gradient with angled legacy-gradient-line" ],
     [ "-webkit-linear-gradient(10deg, red, blue)",
       "-webkit-linear-gradient(10deg, red, blue)",
       "-webkit-linear-gradient with angled legacy-gradient-line" ],
 
     // Linear gradient with box corner (needs prefixed syntax):
-    [ "-moz-linear-gradient(top left, red, blue)",
-      "-moz-linear-gradient(left top , red, blue)",
-      //                            ^
-      // (NOTE: our -moz-linear-gradient serialization inserts an extra space
-      // before the first comma in some cases. This is ugly but fine,
-      // particularly given bug 1337655).
-      "-moz-linear-gradient with box corner" ],
     [ "-webkit-linear-gradient(top left, red, blue)",
       "-webkit-linear-gradient(left top, red, blue)",
       "-webkit-linear-gradient with box corner" ],
 
     // Radial gradients (should be serialized using modern unprefixed style):
-    [ "-moz-radial-gradient(contain, red, blue)",
-      "radial-gradient(closest-side, red, blue)",
-      "-moz-radial-gradient with legacy 'contain' keyword" ],
     [ "-webkit-radial-gradient(contain, red, blue)",
       "radial-gradient(closest-side, red, blue)",
       "-webkit-radial-gradient with legacy 'contain' keyword" ],
   ];
 
   var frame_container = document.getElementById("display");
   var p = document.createElement("p");
   frame_container.appendChild(p);
--- a/layout/style/test/test_unclosed_parentheses.html
+++ b/layout/style/test/test_unclosed_parentheses.html
@@ -53,34 +53,20 @@ var declarations = [
   "background-image: linear-gradient(to",
   "background-image: linear-gradient(to top",
   "background-image: linear-gradient(to top left",
   "background-image: linear-gradient(to top left,",
   "background-image: repeating-linear-gradient(to top left, red, blue",
   "background-image: linear-gradient(to top left, red, yellow, blue",
   "background-image: linear-gradient(to top left, red 1px, yellow 5px, blue 10px",
   "background-image: linear-gradient(to top left, red, yellow, rgb(0, 0, 255)",
-  "background-image: -moz-linear-gradient(",
-  "background-image: -moz-linear-gradient( ",
-  "background-image: -moz-linear-gradient(red, blue",
-  "background-image: -moz-linear-gradient(red, yellow, blue",
-  "background-image: -moz-linear-gradient(red 1px, yellow 5px, blue 10px",
-  "background-image: -moz-linear-gradient(red, yellow, rgb(0, 0, 255)",
-  "background-image: -moz-linear-gradient(to",
-  "background-image: -moz-linear-gradient(to top",
-  "background-image: -moz-linear-gradient(to top left",
-  "background-image: -moz-linear-gradient(to top left,",
-  "background-image: -moz-repeating-linear-gradient(to top left, red, blue",
-  "background-image: -moz-linear-gradient(to top left, red, yellow, blue",
-  "background-image: -moz-linear-gradient(to top left, red 1px, yellow 5px, blue 10px",
-  "background-image: -moz-linear-gradient(to top left, red, yellow, rgb(0, 0, 255)",
-  "background-image: -moz-repeating-linear-gradient(top left, red, blue",
-  "background-image: -moz-linear-gradient(top left, red, yellow, blue",
-  "background-image: -moz-linear-gradient(top left, red 1px, yellow 5px, blue 10px",
-  "background-image: -moz-linear-gradient(top left, red, yellow, rgb(0, 0, 255)",
+  "background-image: linear-gradient(red, blue",
+  "background-image: linear-gradient(red, yellow, blue",
+  "background-image: linear-gradient(red 1px, yellow 5px, blue 10px",
+  "background-image: linear-gradient(red, yellow, rgb(0, 0, 255)",
   "background-image: radial-gradient(",
   "background-image: radial-gradient( ",
   "background-image: radial-gradient(at",
   "background-image: radial-gradient(at ",
   "background-image: radial-gradient(at center",
   "background-image: radial-gradient(at center,",
   "background-image: radial-gradient(at center ",
   "background-image: radial-gradient(closest-corner",
@@ -127,28 +113,26 @@ var declarations = [
   "background-image: radial-gradient(ellipse 50px 50px,",
   "background-image: radial-gradient(ellipse 50px 50px ",
   "background-image: radial-gradient(ellipse 50px 50px at",
   "background-image: radial-gradient(ellipse 50px 50px at ",
   "background-image: radial-gradient(ellipse 50px 50px at center",
   "background-image: radial-gradient(ellipse 50px 50px at center ",
   "background-image: radial-gradient(ellipse 50px 50px at center,",
   "background-image: radial-gradient(ellipse 50px 50px at center, red, blue",
+  "background-image: radial-gradient(at top left, red, blue",
+  "background-image: radial-gradient(farthest-corner, red, blue",
+  "background-image: radial-gradient(ellipse closest-corner, red, hsl(240, 50%, 50%)",
+  "background-image: radial-gradient(farthest-side circle, red, blue",
   "background-image: repeating-radial-gradient(50%",
   "background-image: repeating-radial-gradient(50% ",
   "background-image: repeating-radial-gradient(50% 50%",
   "background-image: repeating-radial-gradient(50% 50%,",
   "background-image: repeating-radial-gradient(50% 50%, red, blue",
-  "background-image: -moz-radial-gradient(",
-  "background-image: -moz-radial-gradient( ",
-  "background-image: -moz-radial-gradient(top left 45deg, red, blue",
-  "background-image: -moz-radial-gradient(cover, red, blue",
-  "background-image: -moz-repeating-radial-gradient(circle, red, blue",
-  "background-image: -moz-radial-gradient(ellipse closest-corner, red, hsl(240, 50%, 50%)",
-  "background-image: -moz-radial-gradient(farthest-side circle, red, blue",
+  "background-image: repeating-radial-gradient(circle, red, blue",
   "background-image: -moz-image-rect(",
   "background-image: -moz-image-rect( ",
   "background-image: -moz-image-rect(url(foo.jpg)",
   "background-image: -moz-image-rect(url(foo.jpg), 2, 10, 10",
   "background-image: -moz-image-rect(url(foo.jpg), 2, 10, 10 ",
   "background-image: -moz-image-rect(url(foo.jpg), 2, 10, 10,",
   "background-image: -moz-image-rect(url(foo.jpg), 2, 10, 10, ",
   "background-image: -moz-image-rect(url(foo.jpg), 2, 10, 10, 10",