diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 0d64487..8731455 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,5 +1,61 @@
 2018-04-27  Simon Fraser  <simon.fraser@apple.com>
 
+        Clean up color-filter tests.
+        
+        Detab the files.
+        
+        Remove calls to internals.settings.setColorFilterEnabled() which aren't needed, since
+        WebKitTestRunner and DumpRenderTree turn the feature on by default.
+
+        * css3/color-filters/color-filter-backgrounds-borders-expected.html:
+        * css3/color-filters/color-filter-backgrounds-borders.html:
+        * css3/color-filters/color-filter-box-shadow-expected.html:
+        * css3/color-filters/color-filter-box-shadow.html:
+        * css3/color-filters/color-filter-brightness-expected.html:
+        * css3/color-filters/color-filter-brightness.html:
+        * css3/color-filters/color-filter-color-property-expected.html:
+        * css3/color-filters/color-filter-color-property-list-item-expected.html:
+        * css3/color-filters/color-filter-color-property-list-item.html:
+        * css3/color-filters/color-filter-color-property.html:
+        * css3/color-filters/color-filter-color-text-decorations-expected.html:
+        * css3/color-filters/color-filter-color-text-decorations.html:
+        * css3/color-filters/color-filter-column-rule-expected.html:
+        * css3/color-filters/color-filter-column-rule.html:
+        * css3/color-filters/color-filter-contrast-expected.html:
+        * css3/color-filters/color-filter-contrast.html:
+        * css3/color-filters/color-filter-current-color-expected.html:
+        * css3/color-filters/color-filter-current-color.html:
+        * css3/color-filters/color-filter-filter-list-expected.html:
+        * css3/color-filters/color-filter-filter-list.html:
+        * css3/color-filters/color-filter-gradients-expected.html:
+        * css3/color-filters/color-filter-gradients.html:
+        * css3/color-filters/color-filter-grayscale-expected.html:
+        * css3/color-filters/color-filter-grayscale.html:
+        * css3/color-filters/color-filter-hue-rotate-expected.html:
+        * css3/color-filters/color-filter-hue-rotate.html:
+        * css3/color-filters/color-filter-inherits-expected.html:
+        * css3/color-filters/color-filter-inherits.html:
+        * css3/color-filters/color-filter-invert-expected.html:
+        * css3/color-filters/color-filter-invert.html:
+        * css3/color-filters/color-filter-opacity-expected.html:
+        * css3/color-filters/color-filter-opacity.html:
+        * css3/color-filters/color-filter-outline-expected.html:
+        * css3/color-filters/color-filter-outline.html:
+        * css3/color-filters/color-filter-parsing.html:
+        * css3/color-filters/color-filter-saturate-expected.html:
+        * css3/color-filters/color-filter-saturate.html:
+        * css3/color-filters/color-filter-sepia-expected.html:
+        * css3/color-filters/color-filter-sepia.html:
+        * css3/color-filters/color-filter-text-decoration-shadow-expected.html:
+        * css3/color-filters/color-filter-text-decoration-shadow.html:
+        * css3/color-filters/color-filter-text-emphasis-expected.html:
+        * css3/color-filters/color-filter-text-emphasis.html:
+        * css3/color-filters/color-filter-text-shadow-expected.html:
+        * css3/color-filters/color-filter-text-shadow.html:
+        * css3/color-filters/color-filter-text-stroke.html:
+
+2018-04-27  Simon Fraser  <simon.fraser@apple.com>
+
         Implement color-filter for text stroke
         https://bugs.webkit.org/show_bug.cgi?id=185098
 
diff --git a/LayoutTests/css3/color-filters/color-filter-backgrounds-borders-expected.html b/LayoutTests/css3/color-filters/color-filter-backgrounds-borders-expected.html
index cc6f660..c87bfc8 100644
--- a/LayoutTests/css3/color-filters/color-filter-backgrounds-borders-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-backgrounds-borders-expected.html
@@ -8,10 +8,10 @@
         <style type="text/css">
             .test
             {
-				width: 200px;
-				height: 200px;
-				background-color: green;
-				border: 20px solid blue;
+                width: 200px;
+                height: 200px;
+                background-color: green;
+                border: 20px solid blue;
             }
         </style>
     </head>
diff --git a/LayoutTests/css3/color-filters/color-filter-backgrounds-borders.html b/LayoutTests/css3/color-filters/color-filter-backgrounds-borders.html
index 496f384..db3a968 100644
--- a/LayoutTests/css3/color-filters/color-filter-backgrounds-borders.html
+++ b/LayoutTests/css3/color-filters/color-filter-backgrounds-borders.html
@@ -9,17 +9,13 @@
         <style type="text/css">
             .test
             {
-				width: 200px;
-				height: 200px;
-				background-color: rgb(255, 128, 255);
-				border: 20px solid yellow;
-				color-filter: invert();
+                width: 200px;
+                height: 200px;
+                background-color: rgb(255, 128, 255);
+                border: 20px solid yellow;
+                color-filter: invert();
             }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <p>Test passes if there is a green square with a blue border.</p>
diff --git a/LayoutTests/css3/color-filters/color-filter-box-shadow-expected.html b/LayoutTests/css3/color-filters/color-filter-box-shadow-expected.html
index 5ef432e..bdc517f 100644
--- a/LayoutTests/css3/color-filters/color-filter-box-shadow-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-box-shadow-expected.html
@@ -8,16 +8,12 @@
         <style type="text/css">
             .test
             {
-				width: 200px;
-				height: 200px;
-				background-color: green;
-				box-shadow: 50px 50px 0 blue;
+                width: 200px;
+                height: 200px;
+                background-color: green;
+                box-shadow: 50px 50px 0 blue;
             }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <p>Test passes if there is a green square with an offset blue square behind it.</p>
diff --git a/LayoutTests/css3/color-filters/color-filter-box-shadow.html b/LayoutTests/css3/color-filters/color-filter-box-shadow.html
index 9d50b03..f0900eb 100644
--- a/LayoutTests/css3/color-filters/color-filter-box-shadow.html
+++ b/LayoutTests/css3/color-filters/color-filter-box-shadow.html
@@ -9,17 +9,13 @@
         <style type="text/css">
             .test
             {
-				width: 200px;
-				height: 200px;
-				background-color: rgb(255, 128, 255);
-				box-shadow: 50px 50px 0 yellow;
-				color-filter: invert();
+                width: 200px;
+                height: 200px;
+                background-color: rgb(255, 128, 255);
+                box-shadow: 50px 50px 0 yellow;
+                color-filter: invert();
             }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <p>Test passes if there is a green square with an offset blue square behind it.</p>
diff --git a/LayoutTests/css3/color-filters/color-filter-brightness-expected.html b/LayoutTests/css3/color-filters/color-filter-brightness-expected.html
index 5deab07..84c15db 100644
--- a/LayoutTests/css3/color-filters/color-filter-brightness-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-brightness-expected.html
@@ -7,12 +7,12 @@
         <style type="text/css">
             .test
             {
-				width: 100px;
-				height: 100px;
-				background-color: blue;
-				border: 50px solid green;
-				margin: 10px;
-				float: left;
+                width: 100px;
+                height: 100px;
+                background-color: blue;
+                border: 50px solid green;
+                margin: 10px;
+                float: left;
             }
         </style>
     </head>
diff --git a/LayoutTests/css3/color-filters/color-filter-brightness.html b/LayoutTests/css3/color-filters/color-filter-brightness.html
index 00b5408..4847735 100644
--- a/LayoutTests/css3/color-filters/color-filter-brightness.html
+++ b/LayoutTests/css3/color-filters/color-filter-brightness.html
@@ -9,18 +9,14 @@
         <style type="text/css">
             .test
             {
-				width: 100px;
-				height: 100px;
-				background-color: blue;
-				border: 50px solid green;
-				margin: 10px;
-				float: left;
+                width: 100px;
+                height: 100px;
+                background-color: blue;
+                border: 50px solid green;
+                margin: 10px;
+                float: left;
             }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <div class="test" style="color-filter: brightness()"></div>
diff --git a/LayoutTests/css3/color-filters/color-filter-color-property-expected.html b/LayoutTests/css3/color-filters/color-filter-color-property-expected.html
index 1c7952a..478e831 100644
--- a/LayoutTests/css3/color-filters/color-filter-color-property-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-color-property-expected.html
@@ -7,8 +7,8 @@
         <style type="text/css">
             div.test
             {
-				font: 40px Ahem;
-				color: green;
+                font: 40px Ahem;
+                color: green;
             }
         </style>
     </head>
diff --git a/LayoutTests/css3/color-filters/color-filter-color-property-list-item-expected.html b/LayoutTests/css3/color-filters/color-filter-color-property-list-item-expected.html
index aa7be50..2c57239 100644
--- a/LayoutTests/css3/color-filters/color-filter-color-property-list-item-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-color-property-list-item-expected.html
@@ -8,27 +8,23 @@
         <style type="text/css">
             div.test
             {
-				font: 200px Ahem;
-				color: green
+                font: 200px Ahem;
+                color: green
             }
-			ul {
-				margin: 0;
-			}
-			li {
-				margin-left: 100px;
-			}
+            ul {
+                margin: 0;
+            }
+            li {
+                margin-left: 100px;
+            }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <p>Test passes if there is a green circle.</p>
         <div class="test">
-			<ul>
-				<li></li>
-			</ul>
-		</div>
+            <ul>
+                <li></li>
+            </ul>
+        </div>
     </body>
 </html>
diff --git a/LayoutTests/css3/color-filters/color-filter-color-property-list-item.html b/LayoutTests/css3/color-filters/color-filter-color-property-list-item.html
index cb96e67..ecc6a63 100644
--- a/LayoutTests/css3/color-filters/color-filter-color-property-list-item.html
+++ b/LayoutTests/css3/color-filters/color-filter-color-property-list-item.html
@@ -9,28 +9,24 @@
         <style type="text/css">
             div.test
             {
-				font: 200px Ahem;
-				color: rgb(255, 128, 255);
-				color-filter: invert();
+                font: 200px Ahem;
+                color: rgb(255, 128, 255);
+                color-filter: invert();
             }
-			ul {
-				margin: 0;
-			}
-			li {
-				margin-left: 100px;
-			}
+            ul {
+                margin: 0;
+            }
+            li {
+                margin-left: 100px;
+            }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <p>Test passes if there is a green circle.</p>
         <div class="test">
-			<ul>
-				<li></li>
-			</ul>
-		</div>
+            <ul>
+                <li></li>
+            </ul>
+        </div>
     </body>
 </html>
diff --git a/LayoutTests/css3/color-filters/color-filter-color-property.html b/LayoutTests/css3/color-filters/color-filter-color-property.html
index a61692f..31792ac 100644
--- a/LayoutTests/css3/color-filters/color-filter-color-property.html
+++ b/LayoutTests/css3/color-filters/color-filter-color-property.html
@@ -9,15 +9,11 @@
         <style type="text/css">
             div.test
             {
-				font: 40px Ahem;
-				color: rgb(255, 128, 255);
-				color-filter: invert();
+                font: 40px Ahem;
+                color: rgb(255, 128, 255);
+                color-filter: invert();
             }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <p>Test passes if there is a green square.</p>
diff --git a/LayoutTests/css3/color-filters/color-filter-color-text-decorations-expected.html b/LayoutTests/css3/color-filters/color-filter-color-text-decorations-expected.html
index ed58eab..46c92e7 100644
--- a/LayoutTests/css3/color-filters/color-filter-color-text-decorations-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-color-text-decorations-expected.html
@@ -7,37 +7,33 @@
         <style type="text/css">
             div.test
             {
-				font: 140px sans-serif;
-				color: green;
-				-webkit-text-decoration: underline overline blue;
+                font: 140px sans-serif;
+                color: green;
+                -webkit-text-decoration: underline overline blue;
             }
 
-			p
-			{
-				margin: 8px;
-			}
+            p
+            {
+                margin: 8px;
+            }
 
             .wavy
             {
-				-webkit-text-decoration: underline overline wavy blue;
+                -webkit-text-decoration: underline overline wavy blue;
             }
 
             .dotted
             {
-				-webkit-text-decoration: underline overline dotted blue;
+                -webkit-text-decoration: underline overline dotted blue;
             }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <p>You hsould see three green letter A. The top should have a solid bar overline and underline. The second should have a wavy overline and underline. The bottom should have a dotted overline and underline.</p>
         <div class="test">
-			<p>A<p>
-			<p class="wavy">A<p>
-			<p class="dotted">A<p>
-		</div>
+            <p>A<p>
+            <p class="wavy">A<p>
+            <p class="dotted">A<p>
+        </div>
     </body>
 </html>
diff --git a/LayoutTests/css3/color-filters/color-filter-color-text-decorations.html b/LayoutTests/css3/color-filters/color-filter-color-text-decorations.html
index 917ad26..5afe5b9 100644
--- a/LayoutTests/css3/color-filters/color-filter-color-text-decorations.html
+++ b/LayoutTests/css3/color-filters/color-filter-color-text-decorations.html
@@ -9,38 +9,34 @@
         <style type="text/css">
             div.test
             {
-				font: 140px sans-serif;
-				color: rgb(255, 128, 255);
-				-webkit-text-decoration: underline overline yellow;
-				color-filter: invert();
+                font: 140px sans-serif;
+                color: rgb(255, 128, 255);
+                -webkit-text-decoration: underline overline yellow;
+                color-filter: invert();
             }
 
-			p
-			{
-				margin: 8px;
-			}
+            p
+            {
+                margin: 8px;
+            }
 
             .wavy
             {
-				-webkit-text-decoration: underline overline wavy yellow;
+                -webkit-text-decoration: underline overline wavy yellow;
             }
 
             .dotted
             {
-				-webkit-text-decoration: underline overline dotted yellow;
+                -webkit-text-decoration: underline overline dotted yellow;
             }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <p>You hsould see three green letter A. The top should have a solid bar overline and underline. The second should have a wavy overline and underline. The bottom should have a dotted overline and underline.</p>
         <div class="test">
-			<p>A<p>
-			<p class="wavy">A<p>
-			<p class="dotted">A<p>
-		</div>
+            <p>A<p>
+            <p class="wavy">A<p>
+            <p class="dotted">A<p>
+        </div>
     </body>
 </html>
diff --git a/LayoutTests/css3/color-filters/color-filter-column-rule-expected.html b/LayoutTests/css3/color-filters/color-filter-column-rule-expected.html
index a7b08e8..6771319 100644
--- a/LayoutTests/css3/color-filters/color-filter-column-rule-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-column-rule-expected.html
@@ -6,14 +6,14 @@
         <style type="text/css">
             .test
             {
-				font: 100px Ahem;
-				color: white;
-				width: 200px;
-				height: 200px;
-				columns: 2;
-				column-rule-width: 100px;
-				column-rule-color: green;
-				column-rule-style: solid;
+                font: 100px Ahem;
+                color: white;
+                width: 200px;
+                height: 200px;
+                columns: 2;
+                column-rule-width: 100px;
+                column-rule-color: green;
+                column-rule-style: solid;
             }
         </style>
     </head>
diff --git a/LayoutTests/css3/color-filters/color-filter-column-rule.html b/LayoutTests/css3/color-filters/color-filter-column-rule.html
index 0b517bb..77c1c93 100644
--- a/LayoutTests/css3/color-filters/color-filter-column-rule.html
+++ b/LayoutTests/css3/color-filters/color-filter-column-rule.html
@@ -9,21 +9,17 @@
         <style type="text/css">
             .test
             {
-				font: 100px Ahem;
-				color: black;
-				width: 200px;
-				height: 200px;
-				columns: 2;
-				column-rule-width: 100px;
-				column-rule-color: rgb(255, 128, 255);
-				column-rule-style: solid;
-				color-filter: invert();
+                font: 100px Ahem;
+                color: black;
+                width: 200px;
+                height: 200px;
+                columns: 2;
+                column-rule-width: 100px;
+                column-rule-color: rgb(255, 128, 255);
+                column-rule-style: solid;
+                color-filter: invert();
             }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <p>Test passes if there is a vertical green bar below.</p>
diff --git a/LayoutTests/css3/color-filters/color-filter-contrast-expected.html b/LayoutTests/css3/color-filters/color-filter-contrast-expected.html
index ad74844..5579dde 100644
--- a/LayoutTests/css3/color-filters/color-filter-contrast-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-contrast-expected.html
@@ -7,12 +7,12 @@
         <style type="text/css">
             .test
             {
-				width: 100px;
-				height: 100px;
-				background-color: blue;
-				border: 50px solid green;
-				margin: 10px;
-				float: left;
+                width: 100px;
+                height: 100px;
+                background-color: blue;
+                border: 50px solid green;
+                margin: 10px;
+                float: left;
             }
         </style>
     </head>
diff --git a/LayoutTests/css3/color-filters/color-filter-contrast.html b/LayoutTests/css3/color-filters/color-filter-contrast.html
index bf127aa..83cb471 100644
--- a/LayoutTests/css3/color-filters/color-filter-contrast.html
+++ b/LayoutTests/css3/color-filters/color-filter-contrast.html
@@ -9,18 +9,14 @@
         <style type="text/css">
             .test
             {
-				width: 100px;
-				height: 100px;
-				background-color: blue;
-				border: 50px solid green;
-				margin: 10px;
-				float: left;
+                width: 100px;
+                height: 100px;
+                background-color: blue;
+                border: 50px solid green;
+                margin: 10px;
+                float: left;
             }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <div class="test" style="color-filter: contrast()"></div>
diff --git a/LayoutTests/css3/color-filters/color-filter-current-color-expected.html b/LayoutTests/css3/color-filters/color-filter-current-color-expected.html
index 2c7d97b..681a60d 100644
--- a/LayoutTests/css3/color-filters/color-filter-current-color-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-current-color-expected.html
@@ -7,23 +7,23 @@
         <style type="text/css">
             .test
             {
-				height: 200px;
-				width: 200px;
-				margin: 10px;
-				color: green;
-				border: 4px solid blue;
+                height: 200px;
+                width: 200px;
+                margin: 10px;
+                color: green;
+                border: 4px solid blue;
             }
-			
-			.first
-			{
-				background-color: currentColor;
-			}
-			
-			.second > div {
-				width: 100%;
-				height: 100%;
-				background-color: currentColor;
-			}
+            
+            .first
+            {
+                background-color: currentColor;
+            }
+            
+            .second > div {
+                width: 100%;
+                height: 100%;
+                background-color: currentColor;
+            }
         </style>
     </head>
     <body>
diff --git a/LayoutTests/css3/color-filters/color-filter-current-color.html b/LayoutTests/css3/color-filters/color-filter-current-color.html
index 7b81514..bc2569f 100644
--- a/LayoutTests/css3/color-filters/color-filter-current-color.html
+++ b/LayoutTests/css3/color-filters/color-filter-current-color.html
@@ -9,29 +9,25 @@
         <style type="text/css">
             .test
             {
-				height: 200px;
-				width: 200px;
-				margin: 10px;
-				color: rgb(255, 128, 255);
-				border: 4px solid yellow;
-				color-filter: invert();
+                height: 200px;
+                width: 200px;
+                margin: 10px;
+                color: rgb(255, 128, 255);
+                border: 4px solid yellow;
+                color-filter: invert();
             }
-			
-			.first
-			{
-				background-color: currentColor;
-			}
-			
-			.second > div {
-				width: 100%;
-				height: 100%;
-				background-color: currentColor;
-			}
+            
+            .first
+            {
+                background-color: currentColor;
+            }
+            
+            .second > div {
+                width: 100%;
+                height: 100%;
+                background-color: currentColor;
+            }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <p>Test passes if there are two green squares with a blue border.</p>
diff --git a/LayoutTests/css3/color-filters/color-filter-filter-list-expected.html b/LayoutTests/css3/color-filters/color-filter-filter-list-expected.html
index 14d0c72..5345a54 100644
--- a/LayoutTests/css3/color-filters/color-filter-filter-list-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-filter-list-expected.html
@@ -7,12 +7,12 @@
         <style type="text/css">
             .test
             {
-				width: 100px;
-				height: 100px;
-				background-color: purple;
-				outline: 50px solid green;
-				margin: 60px;
-				float: left;
+                width: 100px;
+                height: 100px;
+                background-color: purple;
+                outline: 50px solid green;
+                margin: 60px;
+                float: left;
             }
         </style>
     </head>
diff --git a/LayoutTests/css3/color-filters/color-filter-filter-list.html b/LayoutTests/css3/color-filters/color-filter-filter-list.html
index 318844b..779d3a8 100644
--- a/LayoutTests/css3/color-filters/color-filter-filter-list.html
+++ b/LayoutTests/css3/color-filters/color-filter-filter-list.html
@@ -9,18 +9,14 @@
         <style type="text/css">
             .test
             {
-				width: 100px;
-				height: 100px;
-				background-color: purple;
-				outline: 50px solid green;
-				margin: 60px;
-				float: left;
+                width: 100px;
+                height: 100px;
+                background-color: purple;
+                outline: 50px solid green;
+                margin: 60px;
+                float: left;
             }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <div class="test"></div>
diff --git a/LayoutTests/css3/color-filters/color-filter-gradients-expected.html b/LayoutTests/css3/color-filters/color-filter-gradients-expected.html
index 39a7963..3a9ce8c 100644
--- a/LayoutTests/css3/color-filters/color-filter-gradients-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-gradients-expected.html
@@ -7,10 +7,10 @@
         <style type="text/css">
             .test
             {
-				width: 200px;
-				height: 200px;
-				margin: 10px;
-				float: left;
+                width: 200px;
+                height: 200px;
+                margin: 10px;
+                float: left;
             }
         </style>
     </head>
diff --git a/LayoutTests/css3/color-filters/color-filter-gradients.html b/LayoutTests/css3/color-filters/color-filter-gradients.html
index 4e1cae9..dde0457 100644
--- a/LayoutTests/css3/color-filters/color-filter-gradients.html
+++ b/LayoutTests/css3/color-filters/color-filter-gradients.html
@@ -9,17 +9,13 @@
         <style type="text/css">
             .test
             {
-				width: 200px;
-				height: 200px;
-				margin: 10px;
-				float: left;
-				color-filter: invert();
+                width: 200px;
+                height: 200px;
+                margin: 10px;
+                float: left;
+                color-filter: invert();
             }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <div class="test" style="background-image: linear-gradient(yellow, cyan);"></div>
diff --git a/LayoutTests/css3/color-filters/color-filter-grayscale-expected.html b/LayoutTests/css3/color-filters/color-filter-grayscale-expected.html
index 9b70599..6dbcd14 100644
--- a/LayoutTests/css3/color-filters/color-filter-grayscale-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-grayscale-expected.html
@@ -7,12 +7,12 @@
         <style type="text/css">
             .test
             {
-				width: 100px;
-				height: 100px;
-				background-color: blue;
-				border: 50px solid green;
-				margin: 10px;
-				float: left;
+                width: 100px;
+                height: 100px;
+                background-color: blue;
+                border: 50px solid green;
+                margin: 10px;
+                float: left;
             }
         </style>
     </head>
diff --git a/LayoutTests/css3/color-filters/color-filter-grayscale.html b/LayoutTests/css3/color-filters/color-filter-grayscale.html
index fa5440b..c95460a 100644
--- a/LayoutTests/css3/color-filters/color-filter-grayscale.html
+++ b/LayoutTests/css3/color-filters/color-filter-grayscale.html
@@ -9,18 +9,14 @@
         <style type="text/css">
             .test
             {
-				width: 100px;
-				height: 100px;
-				background-color: blue;
-				border: 50px solid green;
-				margin: 10px;
-				float: left;
+                width: 100px;
+                height: 100px;
+                background-color: blue;
+                border: 50px solid green;
+                margin: 10px;
+                float: left;
             }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <div class="test" style="color-filter: grayscale()"></div>
diff --git a/LayoutTests/css3/color-filters/color-filter-hue-rotate-expected.html b/LayoutTests/css3/color-filters/color-filter-hue-rotate-expected.html
index 4ca29a1..becb010 100644
--- a/LayoutTests/css3/color-filters/color-filter-hue-rotate-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-hue-rotate-expected.html
@@ -7,12 +7,12 @@
         <style type="text/css">
             .test
             {
-				width: 100px;
-				height: 100px;
-				background-color: blue;
-				border: 50px solid green;
-				margin: 10px;
-				float: left;
+                width: 100px;
+                height: 100px;
+                background-color: blue;
+                border: 50px solid green;
+                margin: 10px;
+                float: left;
             }
         </style>
     </head>
diff --git a/LayoutTests/css3/color-filters/color-filter-hue-rotate.html b/LayoutTests/css3/color-filters/color-filter-hue-rotate.html
index 350bbca..a7b065c 100644
--- a/LayoutTests/css3/color-filters/color-filter-hue-rotate.html
+++ b/LayoutTests/css3/color-filters/color-filter-hue-rotate.html
@@ -9,18 +9,14 @@
         <style type="text/css">
             .test
             {
-				width: 100px;
-				height: 100px;
-				background-color: blue;
-				border: 50px solid green;
-				margin: 10px;
-				float: left;
+                width: 100px;
+                height: 100px;
+                background-color: blue;
+                border: 50px solid green;
+                margin: 10px;
+                float: left;
             }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <div class="test" style="color-filter: hue-rotate()"></div>
diff --git a/LayoutTests/css3/color-filters/color-filter-inherits-expected.html b/LayoutTests/css3/color-filters/color-filter-inherits-expected.html
index 5973ae7..efe800f 100644
--- a/LayoutTests/css3/color-filters/color-filter-inherits-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-inherits-expected.html
@@ -7,18 +7,18 @@
         <style type="text/css">
             .test
             {
-				font: 120px Ahem;
+                font: 120px Ahem;
             }
-			
-			.test > div {
-				color: green;
-			}
+            
+            .test > div {
+                color: green;
+            }
         </style>
     </head>
     <body>
         <p>Test passes if there is a green square.</p>
         <div class="test">
-			<div>A</div>
-		</div>
+            <div>A</div>
+        </div>
     </body>
 </html>
diff --git a/LayoutTests/css3/color-filters/color-filter-inherits.html b/LayoutTests/css3/color-filters/color-filter-inherits.html
index a68e6d0..b5ce2d0 100644
--- a/LayoutTests/css3/color-filters/color-filter-inherits.html
+++ b/LayoutTests/css3/color-filters/color-filter-inherits.html
@@ -9,23 +9,19 @@
         <style type="text/css">
             .test
             {
-				font: 120px Ahem;
-				color-filter: invert();
+                font: 120px Ahem;
+                color-filter: invert();
             }
-			
-			.test > div {
-				color: rgb(255, 128, 255);
-			}
+            
+            .test > div {
+                color: rgb(255, 128, 255);
+            }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <p>Test passes if there is a green square.</p>
         <div class="test">
-			<div>A</div>
-		</div>
+            <div>A</div>
+        </div>
     </body>
 </html>
diff --git a/LayoutTests/css3/color-filters/color-filter-invert-expected.html b/LayoutTests/css3/color-filters/color-filter-invert-expected.html
index 99d9edd..ccab926 100644
--- a/LayoutTests/css3/color-filters/color-filter-invert-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-invert-expected.html
@@ -7,12 +7,12 @@
         <style type="text/css">
             .test
             {
-				width: 100px;
-				height: 100px;
-				background-color: blue;
-				border: 50px solid green;
-				margin: 10px;
-				float: left;
+                width: 100px;
+                height: 100px;
+                background-color: blue;
+                border: 50px solid green;
+                margin: 10px;
+                float: left;
             }
         </style>
     </head>
diff --git a/LayoutTests/css3/color-filters/color-filter-invert.html b/LayoutTests/css3/color-filters/color-filter-invert.html
index 6aad512..a27fb08 100644
--- a/LayoutTests/css3/color-filters/color-filter-invert.html
+++ b/LayoutTests/css3/color-filters/color-filter-invert.html
@@ -9,18 +9,14 @@
         <style type="text/css">
             .test
             {
-				width: 100px;
-				height: 100px;
-				background-color: blue;
-				border: 50px solid green;
-				margin: 10px;
-				float: left;
+                width: 100px;
+                height: 100px;
+                background-color: blue;
+                border: 50px solid green;
+                margin: 10px;
+                float: left;
             }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <div class="test" style="color-filter: invert()"></div>
diff --git a/LayoutTests/css3/color-filters/color-filter-opacity-expected.html b/LayoutTests/css3/color-filters/color-filter-opacity-expected.html
index c05bc5c..ccdc1bf 100644
--- a/LayoutTests/css3/color-filters/color-filter-opacity-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-opacity-expected.html
@@ -7,39 +7,39 @@
         <style type="text/css">
             .test
             {
-				width: 200px;
-				height: 200px;
-				background-color: green;
-				margin: 10px;
-				float: left;
+                width: 200px;
+                height: 200px;
+                background-color: green;
+                margin: 10px;
+                float: left;
             }
-			
-			.test > div {
-				width: 100px;
-				height: 100px;
-				margin: 50px;
-				background-color: blue;
-			}
+            
+            .test > div {
+                width: 100px;
+                height: 100px;
+                margin: 50px;
+                background-color: blue;
+            }
         </style>
     </head>
     <body>
         <div class="test">
-			<div></div>
-		</div>
+            <div></div>
+        </div>
         <div class="test">
-			<div></div>
-		</div>
+            <div></div>
+        </div>
         <div class="test">
-			<div></div>
-		</div>
+            <div></div>
+        </div>
         <div class="test" style="background-color: rgba(0, 128, 0, 0.50196)">
-			<div style="background-color: rgba(0, 0, 255, 0.5)"></div>
-		</div>
+            <div style="background-color: rgba(0, 0, 255, 0.5)"></div>
+        </div>
         <div class="test" style="background-color: transparent">
-			<div style="background-color: transparent"></div>
-		</div>
+            <div style="background-color: transparent"></div>
+        </div>
         <div class="test">
-			<div></div>
-		</div>
+            <div></div>
+        </div>
     </body>
 </html>
diff --git a/LayoutTests/css3/color-filters/color-filter-opacity.html b/LayoutTests/css3/color-filters/color-filter-opacity.html
index fd5d9dc..ac1dc6e 100644
--- a/LayoutTests/css3/color-filters/color-filter-opacity.html
+++ b/LayoutTests/css3/color-filters/color-filter-opacity.html
@@ -9,24 +9,20 @@
         <style type="text/css">
             .test
             {
-				width: 200px;
-				height: 200px;
-				background-color: green;
-				margin: 10px;
-				float: left;
+                width: 200px;
+                height: 200px;
+                background-color: green;
+                margin: 10px;
+                float: left;
             }
-			
-			.test > div {
-				width: 100px;
-				height: 100px;
-				margin: 50px;
-				background-color: blue;
-			}
+            
+            .test > div {
+                width: 100px;
+                height: 100px;
+                margin: 50px;
+                background-color: blue;
+            }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <div class="test" style="color-filter: opacity()"><div></div></div>
diff --git a/LayoutTests/css3/color-filters/color-filter-outline-expected.html b/LayoutTests/css3/color-filters/color-filter-outline-expected.html
index 4b72668..a67ca26 100644
--- a/LayoutTests/css3/color-filters/color-filter-outline-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-outline-expected.html
@@ -7,11 +7,11 @@
         <style type="text/css">
             .test
             {
-				width: 200px;
-				height: 200px;
-				margin: 50px;
-				background-color: green;
-				outline: 20px solid blue;
+                width: 200px;
+                height: 200px;
+                margin: 50px;
+                background-color: green;
+                outline: 20px solid blue;
             }
         </style>
     </head>
diff --git a/LayoutTests/css3/color-filters/color-filter-outline.html b/LayoutTests/css3/color-filters/color-filter-outline.html
index b590cd2..7922947 100644
--- a/LayoutTests/css3/color-filters/color-filter-outline.html
+++ b/LayoutTests/css3/color-filters/color-filter-outline.html
@@ -9,18 +9,14 @@
         <style type="text/css">
             .test
             {
-				width: 200px;
-				height: 200px;
-				margin: 50px;
-				background-color: rgb(255, 128, 255);
-				outline: 20px solid yellow;
-				color-filter: invert();
+                width: 200px;
+                height: 200px;
+                margin: 50px;
+                background-color: rgb(255, 128, 255);
+                outline: 20px solid yellow;
+                color-filter: invert();
             }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <p>Test passes if there is a green square with a blue outline.</p>
diff --git a/LayoutTests/css3/color-filters/color-filter-parsing.html b/LayoutTests/css3/color-filters/color-filter-parsing.html
index 526d510..d0d426a 100644
--- a/LayoutTests/css3/color-filters/color-filter-parsing.html
+++ b/LayoutTests/css3/color-filters/color-filter-parsing.html
@@ -4,17 +4,14 @@
 
 <script>
 
-if (window.internals)
-    internals.settings.setColorFilterEnabled(true);
-
 var testDiv = document.querySelector('#test');
 
 function testColorFilterParsing(value, expected, name)
 {
     test(() => {
-		testDiv.style.colorFilter = '';
-		testDiv.style.colorFilter = value;
-		var computedStyle = getComputedStyle(testDiv).colorFilter;
+        testDiv.style.colorFilter = '';
+        testDiv.style.colorFilter = value;
+        var computedStyle = getComputedStyle(testDiv).colorFilter;
         assert_equals(computedStyle, expected);
     }, name);
 }
diff --git a/LayoutTests/css3/color-filters/color-filter-saturate-expected.html b/LayoutTests/css3/color-filters/color-filter-saturate-expected.html
index 4e7eadd..8a5967d 100644
--- a/LayoutTests/css3/color-filters/color-filter-saturate-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-saturate-expected.html
@@ -7,12 +7,12 @@
         <style type="text/css">
             .test
             {
-				width: 100px;
-				height: 100px;
-				background-color: blue;
-				border: 50px solid green;
-				margin: 10px;
-				float: left;
+                width: 100px;
+                height: 100px;
+                background-color: blue;
+                border: 50px solid green;
+                margin: 10px;
+                float: left;
             }
         </style>
     </head>
diff --git a/LayoutTests/css3/color-filters/color-filter-saturate.html b/LayoutTests/css3/color-filters/color-filter-saturate.html
index 22cd111..cc73db4 100644
--- a/LayoutTests/css3/color-filters/color-filter-saturate.html
+++ b/LayoutTests/css3/color-filters/color-filter-saturate.html
@@ -9,18 +9,14 @@
         <style type="text/css">
             .test
             {
-				width: 100px;
-				height: 100px;
-				background-color: blue;
-				border: 50px solid green;
-				margin: 10px;
-				float: left;
+                width: 100px;
+                height: 100px;
+                background-color: blue;
+                border: 50px solid green;
+                margin: 10px;
+                float: left;
             }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <div class="test" style="color-filter: saturate()"></div>
diff --git a/LayoutTests/css3/color-filters/color-filter-sepia-expected.html b/LayoutTests/css3/color-filters/color-filter-sepia-expected.html
index 6ccb7d2..7f9ef8e 100644
--- a/LayoutTests/css3/color-filters/color-filter-sepia-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-sepia-expected.html
@@ -7,12 +7,12 @@
         <style type="text/css">
             .test
             {
-				width: 100px;
-				height: 100px;
-				background-color: blue;
-				border: 50px solid green;
-				margin: 10px;
-				float: left;
+                width: 100px;
+                height: 100px;
+                background-color: blue;
+                border: 50px solid green;
+                margin: 10px;
+                float: left;
             }
         </style>
     </head>
diff --git a/LayoutTests/css3/color-filters/color-filter-sepia.html b/LayoutTests/css3/color-filters/color-filter-sepia.html
index 2dbb6cf..40cc4d5 100644
--- a/LayoutTests/css3/color-filters/color-filter-sepia.html
+++ b/LayoutTests/css3/color-filters/color-filter-sepia.html
@@ -9,18 +9,14 @@
         <style type="text/css">
             .test
             {
-				width: 100px;
-				height: 100px;
-				background-color: blue;
-				border: 50px solid green;
-				margin: 10px;
-				float: left;
+                width: 100px;
+                height: 100px;
+                background-color: blue;
+                border: 50px solid green;
+                margin: 10px;
+                float: left;
             }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <div class="test" style="color-filter: sepia()"></div>
diff --git a/LayoutTests/css3/color-filters/color-filter-text-decoration-shadow-expected.html b/LayoutTests/css3/color-filters/color-filter-text-decoration-shadow-expected.html
index 5727a38..6813a76 100644
--- a/LayoutTests/css3/color-filters/color-filter-text-decoration-shadow-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-text-decoration-shadow-expected.html
@@ -7,20 +7,20 @@
         <style type="text/css">
             .test
             {
-				font: 120px sans-serif;
-				color: green;
-				margin: 100px 20px;
-				text-decoration: underline overline line-through;
+                font: 120px sans-serif;
+                color: green;
+                margin: 100px 20px;
+                text-decoration: underline overline line-through;
             }
 
             .single
             {
-				text-shadow: 150px 0 0 yellow;
+                text-shadow: 150px 0 0 yellow;
             }
 
             .multiple
             {
-				text-shadow: 150px 0 0 yellow, 300px 0 0 cyan;
+                text-shadow: 150px 0 0 yellow, 300px 0 0 cyan;
             }
         </style>
     </head>
diff --git a/LayoutTests/css3/color-filters/color-filter-text-decoration-shadow.html b/LayoutTests/css3/color-filters/color-filter-text-decoration-shadow.html
index 144f093..ce7f7be 100644
--- a/LayoutTests/css3/color-filters/color-filter-text-decoration-shadow.html
+++ b/LayoutTests/css3/color-filters/color-filter-text-decoration-shadow.html
@@ -9,21 +9,21 @@
         <style type="text/css">
             .test
             {
-				font: 120px sans-serif;
-				color: rgb(255, 128, 255);
-				color-filter: invert();
-				margin: 100px 20px;
-				text-decoration: underline overline line-through;
+                font: 120px sans-serif;
+                color: rgb(255, 128, 255);
+                color-filter: invert();
+                margin: 100px 20px;
+                text-decoration: underline overline line-through;
             }
 
             .single
             {
-				text-shadow: 150px 0 0 blue;
+                text-shadow: 150px 0 0 blue;
             }
 
             .multiple
             {
-				text-shadow: 150px 0 0 blue, 300px 0 0 red;
+                text-shadow: 150px 0 0 blue, 300px 0 0 red;
             }
         </style>
     </head>
diff --git a/LayoutTests/css3/color-filters/color-filter-text-emphasis-expected.html b/LayoutTests/css3/color-filters/color-filter-text-emphasis-expected.html
index 413526a..bfeea4a 100644
--- a/LayoutTests/css3/color-filters/color-filter-text-emphasis-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-text-emphasis-expected.html
@@ -7,22 +7,22 @@
         <style type="text/css">
             .test
             {
-				font: 120px Ahem;
-				color: green;
-				margin: 10px;
+                font: 120px Ahem;
+                color: green;
+                margin: 10px;
             }
 
-			.over
-			{
-				-webkit-text-emphasis: "m";
-				-webkit-text-emphasis-position: over;
-			}
-			
-			.under
-			{
-				-webkit-text-emphasis: "m";
-				-webkit-text-emphasis-position: under;
-			}
+            .over
+            {
+                -webkit-text-emphasis: "m";
+                -webkit-text-emphasis-position: over;
+            }
+            
+            .under
+            {
+                -webkit-text-emphasis: "m";
+                -webkit-text-emphasis-position: under;
+            }
         </style>
     </head>
     <body>
diff --git a/LayoutTests/css3/color-filters/color-filter-text-emphasis.html b/LayoutTests/css3/color-filters/color-filter-text-emphasis.html
index 09ac26c..108f11a 100644
--- a/LayoutTests/css3/color-filters/color-filter-text-emphasis.html
+++ b/LayoutTests/css3/color-filters/color-filter-text-emphasis.html
@@ -9,28 +9,24 @@
         <style type="text/css">
             .test
             {
-				font: 120px Ahem;
-				color: rgb(255, 128, 255);
-				color-filter: invert();
-				margin: 10px;
+                font: 120px Ahem;
+                color: rgb(255, 128, 255);
+                color-filter: invert();
+                margin: 10px;
             }
 
-			.over
-			{
-				-webkit-text-emphasis: "m";
-				-webkit-text-emphasis-position: over;
-			}
-			
-			.under
-			{
-				-webkit-text-emphasis: "m";
-				-webkit-text-emphasis-position: under;
-			}
+            .over
+            {
+                -webkit-text-emphasis: "m";
+                -webkit-text-emphasis-position: over;
+            }
+            
+            .under
+            {
+                -webkit-text-emphasis: "m";
+                -webkit-text-emphasis-position: under;
+            }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <p>Test passes if there are two shapes which are entirely green.</p>
diff --git a/LayoutTests/css3/color-filters/color-filter-text-shadow-expected.html b/LayoutTests/css3/color-filters/color-filter-text-shadow-expected.html
index 5275d86..c17e66c 100644
--- a/LayoutTests/css3/color-filters/color-filter-text-shadow-expected.html
+++ b/LayoutTests/css3/color-filters/color-filter-text-shadow-expected.html
@@ -7,19 +7,19 @@
         <style type="text/css">
             .test
             {
-				font: 120px Ahem;
-				color: green;
-				margin: 100px 20px;
+                font: 120px Ahem;
+                color: green;
+                margin: 100px 20px;
             }
 
             .single
             {
-				text-shadow: 50px 50px 0 yellow;
+                text-shadow: 50px 50px 0 yellow;
             }
 
             .multiple
             {
-				text-shadow: 50px 50px 0 yellow, 100px 100px 0 cyan;
+                text-shadow: 50px 50px 0 yellow, 100px 100px 0 cyan;
             }
         </style>
     </head>
diff --git a/LayoutTests/css3/color-filters/color-filter-text-shadow.html b/LayoutTests/css3/color-filters/color-filter-text-shadow.html
index af0202c..c569ba9 100644
--- a/LayoutTests/css3/color-filters/color-filter-text-shadow.html
+++ b/LayoutTests/css3/color-filters/color-filter-text-shadow.html
@@ -9,26 +9,22 @@
         <style type="text/css">
             .test
             {
-				font: 120px Ahem;
-				color: rgb(255, 128, 255);
-				color-filter: invert();
-				margin: 100px 20px;
+                font: 120px Ahem;
+                color: rgb(255, 128, 255);
+                color-filter: invert();
+                margin: 100px 20px;
             }
 
             .single
             {
-				text-shadow: 50px 50px 0 blue;
+                text-shadow: 50px 50px 0 blue;
             }
 
             .multiple
             {
-				text-shadow: 50px 50px 0 blue, 100px 100px 0 red;
+                text-shadow: 50px 50px 0 blue, 100px 100px 0 red;
             }
         </style>
-		<script>
-			if (window.internals)
-			    internals.settings.setColorFilterEnabled(true);
-		</script>
     </head>
     <body>
         <p>At the top you should see a green square with a yellow shadow.</p>
diff --git a/LayoutTests/css3/color-filters/color-filter-text-stroke.html b/LayoutTests/css3/color-filters/color-filter-text-stroke.html
index 5752afb..e8e20c6 100644
--- a/LayoutTests/css3/color-filters/color-filter-text-stroke.html
+++ b/LayoutTests/css3/color-filters/color-filter-text-stroke.html
@@ -15,10 +15,6 @@
                 color-filter: invert();
             }
         </style>
-        <script>
-            if (window.internals)
-                internals.settings.setColorFilterEnabled(true);
-        </script>
     </head>
     <body>
         <div class="test" style="stroke-color: yellow; stroke-width: 20px;">O</div>
