LayoutTests:
authorantti <antti@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 14 Aug 2007 19:18:58 +0000 (19:18 +0000)
committerantti <antti@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 14 Aug 2007 19:18:58 +0000 (19:18 +0000)
        Reviewed by Darin.

        Add test for <rdar://problem/5143183>
        Air Mail postmark shows up wrong in Firefox due to use of CSS background-position-x/y

        Also update a few tests to expect background-position instead of background-position-x/y

        * fast/css/background-position-serialize-expected.txt: Added.
        * fast/css/background-position-serialize.html: Added.
        * fast/css/computed-style-expected.txt:
        * fast/css/computed-style-without-renderer-expected.txt:
        * fast/css/remove-shorthand-expected.txt:

WebCore:

        Reviewed by Darin.

        Fix <rdar://problem/5143183>
        Air Mail postmark shows up wrong in Firefox due to use of CSS background-position-x/y

        Safari was using non-standard background-position-x/y properties when serializing style, both normal
        and computed. As a result Safari generated CSS would not render correctly in Firefox.

        Use standard background-position property instead.

        * css/CSSComputedStyleDeclaration.cpp:
        (WebCore::):
        * css/CSSMutableStyleDeclaration.cpp:
        (WebCore::CSSMutableStyleDeclaration::cssText):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@25071 268f45cc-cd09-0410-ab3c-d52691b4dbfc

LayoutTests/ChangeLog
LayoutTests/fast/css/background-position-serialize-expected.txt [new file with mode: 0644]
LayoutTests/fast/css/background-position-serialize.html [new file with mode: 0644]
LayoutTests/fast/css/computed-style-expected.txt
LayoutTests/fast/css/computed-style-without-renderer-expected.txt
LayoutTests/fast/css/remove-shorthand-expected.txt
WebCore/ChangeLog
WebCore/css/CSSComputedStyleDeclaration.cpp
WebCore/css/CSSMutableStyleDeclaration.cpp

index 2aac39a6ebb820d1da05806bab5d99142d522d5c..79ef816fb666dde611dcddddab51471c0c9b898c 100644 (file)
@@ -1,3 +1,18 @@
+2007-08-14  Antti Koivisto  <antti@apple.com>
+
+        Reviewed by Darin.
+        
+        Add test for <rdar://problem/5143183>
+        Air Mail postmark shows up wrong in Firefox due to use of CSS background-position-x/y
+        
+        Also update a few tests to expect background-position instead of background-position-x/y
+
+        * fast/css/background-position-serialize-expected.txt: Added.
+        * fast/css/background-position-serialize.html: Added.
+        * fast/css/computed-style-expected.txt:
+        * fast/css/computed-style-without-renderer-expected.txt:
+        * fast/css/remove-shorthand-expected.txt:
+
 2007-08-13  Alexey Proskuryakov  <ap@webkit.org>
 
         Reviewed by Darin.
diff --git a/LayoutTests/fast/css/background-position-serialize-expected.txt b/LayoutTests/fast/css/background-position-serialize-expected.txt
new file mode 100644 (file)
index 0000000..fea5552
--- /dev/null
@@ -0,0 +1,62 @@
+t.style.backgroundPositionX = '5%';
+PASS: t.style.backgroundPosition should be 5% and is.
+PASS: t.style.backgroundPositionX should be 5% and is.
+PASS: t.style.backgroundPositionY should be and is.
+PASS: t.style.cssText should be background-position-x: 5%; and is.
+PASS: t.getAttribute('style') should be background-position-x: 5%; and is.
+t.style.backgroundPositionY = '5%';
+PASS: t.style.backgroundPosition should be 5% 5% and is.
+PASS: t.style.backgroundPositionX should be 5% and is.
+PASS: t.style.backgroundPositionY should be 5% and is.
+PASS: t.style.cssText should be background-position: 5% 5%; and is.
+PASS: t.getAttribute('style') should be background-position: 5% 5%; and is.
+t.style.backgroundPosition = '10% 10%';
+PASS: t.style.backgroundPosition should be 10% 10% and is.
+PASS: t.style.backgroundPositionX should be 10% and is.
+PASS: t.style.backgroundPositionY should be 10% and is.
+PASS: t.style.cssText should be background-position: 10% 10%; and is.
+PASS: t.getAttribute('style') should be background-position: 10% 10%; and is.
+t.style.backgroundPositionX = '20%';
+PASS: t.style.backgroundPosition should be 20% 10% and is.
+PASS: t.style.backgroundPositionX should be 20% and is.
+PASS: t.style.backgroundPositionY should be 10% and is.
+PASS: t.style.cssText should be background-position: 20% 10%; and is.
+PASS: t.getAttribute('style') should be background-position: 20% 10%; and is.
+t.style.backgroundPositionY = '20%';
+PASS: t.style.backgroundPosition should be 20% 20% and is.
+PASS: t.style.backgroundPositionX should be 20% and is.
+PASS: t.style.backgroundPositionY should be 20% and is.
+PASS: t.style.cssText should be background-position: 20% 20%; and is.
+PASS: t.getAttribute('style') should be background-position: 20% 20%; and is.
+t.setAttribute('style', 'background-position: 30% 30%');
+PASS: t.style.backgroundPosition should be 30% 30% and is.
+PASS: t.style.backgroundPositionX should be 30% and is.
+PASS: t.style.backgroundPositionY should be 30% and is.
+PASS: t.style.cssText should be background-position: 30% 30%; and is.
+PASS: t.getAttribute('style') should be background-position: 30% 30% and is.
+t.style.backgroundPositionX = '20%';
+PASS: t.style.backgroundPosition should be 20% 30% and is.
+PASS: t.style.backgroundPositionX should be 20% and is.
+PASS: t.style.backgroundPositionY should be 30% and is.
+PASS: t.style.cssText should be background-position: 20% 30%; and is.
+PASS: t.getAttribute('style') should be background-position: 20% 30%; and is.
+t.style.backgroundPositionY = '20%';
+PASS: t.style.backgroundPosition should be 20% 20% and is.
+PASS: t.style.backgroundPositionX should be 20% and is.
+PASS: t.style.backgroundPositionY should be 20% and is.
+PASS: t.style.cssText should be background-position: 20% 20%; and is.
+PASS: t.getAttribute('style') should be background-position: 20% 20%; and is.
+t.setAttribute('style', 'background-position: 60% 60% !important;');
+PASS: t.style.backgroundPosition should be 60% 60% and is.
+PASS: t.style.backgroundPositionX should be 60% and is.
+PASS: t.style.backgroundPositionY should be 60% and is.
+PASS: t.style.cssText should be background-position: 60% 60% !important; and is.
+t.setAttribute('style', 'background-position: 10px 15px, 20px 25px, 30px 35px');
+PASS: t.style.backgroundPosition should be 10px 15px, 20px 25px, 30px 35px and is.
+PASS: t.style.backgroundPositionX should be 10px, 20px, 30px and is.
+PASS: t.style.backgroundPositionY should be 15px, 25px, 35px and is.
+PASS: t.style.cssText should be background-position: 10px 15px, 20px 25px, 30px 35px; and is.
+t.setAttribute('style', 'background: url(about:blank) 80% 80%;');
+t.style.backgroundPositionY = '50px'
+style.cssText =
+background-image: url(about:blank); background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: initial; background-position: 80% 50px;
diff --git a/LayoutTests/fast/css/background-position-serialize.html b/LayoutTests/fast/css/background-position-serialize.html
new file mode 100644 (file)
index 0000000..504862e
--- /dev/null
@@ -0,0 +1,118 @@
+<html>
+<body>
+<div id=t></div>
+<div id=console></div>
+<script>
+function print(message, color) 
+{
+    var paragraph = document.createElement("div");
+    paragraph.appendChild(document.createTextNode(message));
+    paragraph.style.fontFamily = "monospace";
+    if (color)
+        paragraph.style.color = color;
+    document.getElementById("console").appendChild(paragraph);
+}
+
+function run(a)
+{
+    print(a);
+    try {
+        eval(a);
+    } catch(e) {
+        print(e);
+    }
+}
+
+function shouldBe(a, b)
+{
+    var evalA;
+    try {
+        evalA = eval(a);
+    } catch(e) {
+        evalA = e;
+    }
+    
+    if (evalA == b)
+        print("PASS: " + a + " should be " + b + " and is.", "green");
+    else
+        print("FAIL: " + a + " should be " + b + " but instead is " + evalA + ".", "red");
+}
+
+if (window.layoutTestController)
+    layoutTestController.dumpAsText();
+
+var t = document.getElementById('t');
+
+run("t.style.backgroundPositionX = '5%';");
+shouldBe("t.style.backgroundPosition", "5%");
+shouldBe("t.style.backgroundPositionX", "5%");
+shouldBe("t.style.backgroundPositionY", "");
+shouldBe("t.style.cssText", "background-position-x: 5%; ");
+shouldBe("t.getAttribute('style')", "background-position-x: 5%; ");
+
+run("t.style.backgroundPositionY = '5%';");
+shouldBe("t.style.backgroundPosition", "5% 5%");
+shouldBe("t.style.backgroundPositionX", "5%");
+shouldBe("t.style.backgroundPositionY", "5%");
+shouldBe("t.style.cssText", "background-position: 5% 5%; ");
+shouldBe("t.getAttribute('style')", "background-position: 5% 5%; ");
+
+run("t.style.backgroundPosition = '10% 10%';");
+shouldBe("t.style.backgroundPosition", "10% 10%");
+shouldBe("t.style.backgroundPositionX", "10%");
+shouldBe("t.style.backgroundPositionY", "10%");
+shouldBe("t.style.cssText", "background-position: 10% 10%; ");
+shouldBe("t.getAttribute('style')", "background-position: 10% 10%; ");
+
+run("t.style.backgroundPositionX = '20%';");
+shouldBe("t.style.backgroundPosition", "20% 10%");
+shouldBe("t.style.backgroundPositionX", "20%");
+shouldBe("t.style.backgroundPositionY", "10%");
+shouldBe("t.style.cssText", "background-position: 20% 10%; ");
+shouldBe("t.getAttribute('style')", "background-position: 20% 10%; ");
+
+run("t.style.backgroundPositionY = '20%';");
+shouldBe("t.style.backgroundPosition", "20% 20%");
+shouldBe("t.style.backgroundPositionX", "20%");
+shouldBe("t.style.backgroundPositionY", "20%");
+shouldBe("t.style.cssText", "background-position: 20% 20%; ");
+shouldBe("t.getAttribute('style')", "background-position: 20% 20%; ");
+
+run("t.setAttribute('style', 'background-position: 30% 30%');");
+shouldBe("t.style.backgroundPosition", "30% 30%");
+shouldBe("t.style.backgroundPositionX", "30%");
+shouldBe("t.style.backgroundPositionY", "30%");
+shouldBe("t.style.cssText", "background-position: 30% 30%; ");
+shouldBe("t.getAttribute('style')", "background-position: 30% 30%");
+
+run("t.style.backgroundPositionX = '20%';");
+shouldBe("t.style.backgroundPosition", "20% 30%");
+shouldBe("t.style.backgroundPositionX", "20%");
+shouldBe("t.style.backgroundPositionY", "30%");
+shouldBe("t.style.cssText", "background-position: 20% 30%; ");
+shouldBe("t.getAttribute('style')", "background-position: 20% 30%; ");
+
+run("t.style.backgroundPositionY = '20%';");
+shouldBe("t.style.backgroundPosition", "20% 20%");
+shouldBe("t.style.backgroundPositionX", "20%");
+shouldBe("t.style.backgroundPositionY", "20%");
+shouldBe("t.style.cssText", "background-position: 20% 20%; ");
+shouldBe("t.getAttribute('style')", "background-position: 20% 20%; ");
+
+run("t.setAttribute('style', 'background-position: 60% 60% !important;');");
+shouldBe("t.style.backgroundPosition", "60% 60%");
+shouldBe("t.style.backgroundPositionX", "60%");
+shouldBe("t.style.backgroundPositionY", "60%");
+shouldBe("t.style.cssText", "background-position: 60% 60% !important; ");
+
+run("t.setAttribute('style', 'background-position: 10px 15px, 20px 25px, 30px 35px');");
+shouldBe("t.style.backgroundPosition", "10px 15px, 20px 25px, 30px 35px");
+shouldBe("t.style.backgroundPositionX", "10px, 20px, 30px");
+shouldBe("t.style.backgroundPositionY", "15px, 25px, 35px");
+shouldBe("t.style.cssText", "background-position: 10px 15px, 20px 25px, 30px 35px; ");
+
+run("t.setAttribute('style', 'background: url(about:blank) 80% 80%;');");
+run("t.style.backgroundPositionY = '50px'");
+print("style.cssText =");
+print(t.style.cssText);
+</script>
index 33ccb95bb0ffc32549854a1d1dce499e29f478a3..bdca895f2cbaf60c291e13b56208ce74e6fa68e1 100644 (file)
@@ -3,8 +3,7 @@ Attributes that are exposed in the CSS computed style object:
 background-attachment: scroll;
 background-color: rgba(0, 0, 0, 0);
 background-image: none;
-background-position-x: 0%;
-background-position-y: 0%;
+background-position: 0% 0%;
 background-repeat: repeat;
 border-bottom-color: rgb(0, 0, 0);
 border-bottom-style: none;
index b0f2d9b2540c571779fa77963ae44937a7f2f6a8..6b8909370e818af0a46d3167e77baf3e3a832a0b 100644 (file)
@@ -2,8 +2,7 @@ Computed style of an element whose parent's 'display' value is 'none':
     background-attachment: scroll
     background-color: rgb(0, 128, 0)
     background-image: none
-    background-position-x: 0%
-    background-position-y: 0%
+    background-position: 0% 0%
     background-repeat: repeat
     border-bottom-color: rgb(0, 0, 0)
     border-bottom-style: none
index 1ca180e3e531c40c77ea1012507d46db30b155ca..7756617ce8455b71e8353b6458e9d0684d9e3d33 100644 (file)
@@ -2,25 +2,25 @@ Test for http://bugs.webkit.org/show_bug.cgi?id=9284 Quirksmode (CSS1): Removing
 
 Starting with a declaration containing all properties that are constituents of shortcuts, see what is left when a shortcut property is removed. The shortcut’s constituents and only them should be removed.
 
-Removing 'border' leaves 'background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
-Removing 'border-top' leaves 'border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
-Removing 'border-right' leaves 'border-top-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
-Removing 'border-bottom' leaves 'border-top-width: thin; border-right-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
-Removing 'border-left' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
-Removing 'border-width' leaves 'border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
-Removing 'border-style' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
-Removing 'border-color' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
+Removing 'border' leaves 'background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; background-position: 100% 100%; '
+Removing 'border-top' leaves 'border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; background-position: 100% 100%; '
+Removing 'border-right' leaves 'border-top-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; background-position: 100% 100%; '
+Removing 'border-bottom' leaves 'border-top-width: thin; border-right-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; background-position: 100% 100%; '
+Removing 'border-left' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; background-position: 100% 100%; '
+Removing 'border-width' leaves 'border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; background-position: 100% 100%; '
+Removing 'border-style' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; background-position: 100% 100%; '
+Removing 'border-color' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; background-position: 100% 100%; '
 Removing 'background' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; -webkit-background-clip: initial; -webkit-background-origin: initial; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
 Removing 'background-position' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
-Removing 'list-style' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
-Removing 'margin' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
-Removing '-webkit-margin-collapse' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
-Removing '-webkit-marquee' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
-Removing 'padding' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
-Removing '-webkit-text-stroke' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
-Removing '-webkit-columns' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
-Removing '-webkit-column-rule' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
-Removing 'border-spacing' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; '
-Removing '-webkit-border-radius' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; overflow-x: scroll; overflow-y: scroll; '
-Removing 'overflow' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; background-position-x: 100%; background-position-y: 100%; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; '
+Removing 'list-style' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; background-position: 100% 100%; '
+Removing 'margin' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; background-position: 100% 100%; '
+Removing '-webkit-margin-collapse' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; background-position: 100% 100%; '
+Removing '-webkit-marquee' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; background-position: 100% 100%; '
+Removing 'padding' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; background-position: 100% 100%; '
+Removing '-webkit-text-stroke' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; background-position: 100% 100%; '
+Removing '-webkit-columns' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; background-position: 100% 100%; '
+Removing '-webkit-column-rule' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; background-position: 100% 100%; '
+Removing 'border-spacing' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; overflow-x: scroll; overflow-y: scroll; background-position: 100% 100%; '
+Removing '-webkit-border-radius' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; overflow-x: scroll; overflow-y: scroll; background-position: 100% 100%; '
+Removing 'overflow' leaves 'border-top-width: thin; border-right-width: thin; border-bottom-width: thin; border-left-width: thin; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: purple; border-right-color: purple; border-bottom-color: purple; border-left-color: purple; background-image: url(file:///background.png); background-repeat: repeat-y; background-attachment: scroll; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: red; list-style-type: square; list-style-position: outside; list-style-image: url(file:///marker.png); margin-top: 5%; margin-right: 5%; margin-bottom: 5%; margin-left: 5%; -webkit-margin-top-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-marquee-direction: ahead; -webkit-marquee-increment: small; -webkit-marquee-repetition: infinite; -webkit-marquee-style: slide; -webkit-marquee-speed: slow; padding-top: 2em; padding-right: 2em; padding-bottom: 2em; padding-left: 2em; -webkit-text-stroke-color: orange; -webkit-text-stroke-width: 1pt; -webkit-column-width: 100px; -webkit-column-count: 3; -webkit-column-rule-width: thick; -webkit-column-rule-style: dashed; -webkit-column-rule-color: silver; -webkit-border-horizontal-spacing: 10px; -webkit-border-vertical-spacing: 20px; -webkit-border-top-right-radius: 6px 8px; -webkit-border-top-left-radius: 6px 8px; -webkit-border-bottom-left-radius: 6px 8px; -webkit-border-bottom-right-radius: 6px 8px; background-position: 100% 100%; '
 
index 572886e68fee4e548477c194f6c5fbab0c7d990c..4c878e55c2dd0aed484d66727c1faf4436af8d33 100644 (file)
@@ -1,3 +1,20 @@
+2007-08-14  Antti Koivisto  <antti@apple.com>
+
+        Reviewed by Darin.
+        
+        Fix <rdar://problem/5143183>
+        Air Mail postmark shows up wrong in Firefox due to use of CSS background-position-x/y
+        
+        Safari was using non-standard background-position-x/y properties when serializing style, both normal 
+        and computed. As a result Safari generated CSS would not render correctly in Firefox. 
+        
+        Use standard background-position property instead.
+
+        * css/CSSComputedStyleDeclaration.cpp:
+        (WebCore::):
+        * css/CSSMutableStyleDeclaration.cpp:
+        (WebCore::CSSMutableStyleDeclaration::cssText):
+
 2007-08-14  Sam Weinig  <sam@webkit.org>
 
         Reviewed by Brady and Dr. Harrison.
index 53cee1a9054cc3ef90a5178db4be58f69e5057e9..c34f95f61796ad749c0646a7f0988273b8090b1a 100644 (file)
@@ -42,8 +42,8 @@ static const int computedProperties[] = {
     CSS_PROP_BACKGROUND_ATTACHMENT,
     CSS_PROP_BACKGROUND_COLOR,
     CSS_PROP_BACKGROUND_IMAGE,
-    CSS_PROP_BACKGROUND_POSITION_X,
-    CSS_PROP_BACKGROUND_POSITION_Y,
+    // more specific background-position-x/y are non-standard
+    CSS_PROP_BACKGROUND_POSITION,
     CSS_PROP_BACKGROUND_REPEAT,
     CSS_PROP_BORDER_BOTTOM_COLOR,
     CSS_PROP_BORDER_BOTTOM_STYLE,
index 33ab0bb5141da8ea7ee3ad1d1fef89b76ace7180..68cb12600a861631e78da7110ea5cd9099a07e01 100644 (file)
@@ -602,10 +602,39 @@ String CSSMutableStyleDeclaration::item(unsigned i) const
 String CSSMutableStyleDeclaration::cssText() const
 {
     String result = "";
+    
+    const CSSProperty* positionXProp = 0;
+    const CSSProperty* positionYProp = 0;
 
     DeprecatedValueListConstIterator<CSSProperty> end;
-    for (DeprecatedValueListConstIterator<CSSProperty> it = m_values.begin(); it != end; ++it)
-        result += (*it).cssText();
+    for (DeprecatedValueListConstIterator<CSSProperty> it = m_values.begin(); it != end; ++it) {
+        const CSSProperty& prop = *it;
+        if (prop.id() == CSS_PROP_BACKGROUND_POSITION_X)
+            positionXProp = &prop;
+        else if (prop.id() == CSS_PROP_BACKGROUND_POSITION_Y)
+            positionYProp = &prop;
+        else
+            result += prop.cssText();
+    }
+    
+    // FIXME: This is a not-so-nice way to turn x/y positions into single background-position in output.
+    // It is required because background-position-x/y are non-standard properties and WebKit generated output 
+    // would not work in Firefox (<rdar://problem/5143183>)
+    // It would be a better solution if background-position was CSS_PAIR.
+    if (positionXProp && positionYProp && positionXProp->isImportant() == positionYProp->isImportant()) {
+        String positionValue;
+        const int properties[2] = { CSS_PROP_BACKGROUND_POSITION_X, CSS_PROP_BACKGROUND_POSITION_Y };
+        if (positionXProp->value()->isValueList() || positionYProp->value()->isValueList()) 
+            positionValue = getLayeredShorthandValue(properties, 2);
+        else
+            positionValue = positionXProp->value()->cssText() + " " + positionYProp->value()->cssText();
+        result += "background-position: " + positionValue + (positionXProp->isImportant() ? " !important" : "") + "; ";
+    } else {
+        if (positionXProp) 
+            result += positionXProp->cssText();
+        if (positionYProp)
+            result += positionYProp->cssText();
+    }
 
     return result;
 }