summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/css-writing-modes/support
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:22:09 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:22:09 +0000
commit43a97878ce14b72f0981164f87f2e35e14151312 (patch)
tree620249daf56c0258faa40cbdcf9cfba06de2a846 /testing/web-platform/tests/css/css-writing-modes/support
parentInitial commit. (diff)
downloadfirefox-upstream.tar.xz
firefox-upstream.zip
Adding upstream version 110.0.1.upstream/110.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/css/css-writing-modes/support')
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/100x100-lime.pngbin0 -> 649 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/100x100-red.pngbin0 -> 510 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/DejaVuSerif-webfont.woffbin0 -> 18096 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/WidthTest-Regular.otfbin0 -> 3248 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/bg-red-1col-2row-320x320.pngbin0 -> 1735 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/bg-red-1col-3row-320x320.pngbin0 -> 1735 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/bg-red-2col-2row-320x320.pngbin0 -> 1731 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/bg-red-2col-3row-320x320.pngbin0 -> 1735 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/bg-red-3col-2row-320x320.pngbin0 -> 1732 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/bg-red-3col-3row-320x320.pngbin0 -> 1734 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/bg-red-4col-2row-320x320.pngbin0 -> 1708 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/bg-red-4col-3row-320x320.pngbin0 -> 1707 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/bg-red-low-left-corn-320x320.pngbin0 -> 1729 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/bg-red-low-rght-corn-320x320.pngbin0 -> 1700 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/bg-red-upp-left-corn-320x320.pngbin0 -> 1732 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/bg-red-upp-rght-corn-320x320.pngbin0 -> 1705 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/block-flow-direction-025-exp-res.pngbin0 -> 4187 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/block-flow-direction-066-exp-res.pngbin0 -> 4055 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/blue-200x100.pngbin0 -> 257 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/blue-horiz-line-220x1.pngbin0 -> 159 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/blue-horiz-line-320x1.pngbin0 -> 160 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/blue-vert-line-1x220.pngbin0 -> 1031 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/blue-vert-line-1x320.pngbin0 -> 1429 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/blue-yellow-206w-165h.pngbin0 -> 463 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/blue1x1.pngbin0 -> 162 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/blue20x20.pngbin0 -> 940 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/cat.pngbin0 -> 1883 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/clearance-calculation-vrl-002.pngbin0 -> 320 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/clearance-calculation-vrl-004.pngbin0 -> 334 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/clearance-calculation-vrl-006.pngbin0 -> 327 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-007.html96
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-009.html96
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-015.html96
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-017.html96
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-019.html97
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-021.html97
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-023.html97
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-025.html97
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-027.html97
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-029.html97
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-031.html99
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-033.html99
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-006.html96
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-008.html96
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-014.html96
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-016.html96
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-018.html97
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-020.html97
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-022.html97
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-024.html97
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-026.html97
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-028.html97
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-030.html99
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-032.html99
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-for-background-size-root-vrl-002.html28
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-for-background-size-root-vrl-004.html29
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-for-background-size-root-vrl-006.html30
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-for-background-size-root-vrl-008.html31
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/left-bottom-200x300.pngbin0 -> 700 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/left-bottom-green-200x300.pngbin0 -> 702 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/left-center-200x300.pngbin0 -> 704 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/left-center-green-200x300.pngbin0 -> 705 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/left-side-filled-square-40x160.pngbin0 -> 1039 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/left-top-200x300.pngbin0 -> 699 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/margin-collapse-2em-space-wm-vert.pngbin0 -> 304 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/mn+arabic.pngbin0 -> 3764 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/mn+latin.pngbin0 -> 4013 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/mn-orientation.pngbin0 -> 2013 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/mn_ar_wrap.pngbin0 -> 3958 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/mn_en_wrap.pngbin0 -> 4148 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/opaque-square-40x160.pngbin0 -> 1032 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/ortho-htb-alongside-vrl-floats-002-exp-res.pngbin0 -> 3501 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/page-flow-direction-002p1.pngbin0 -> 14211 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/page-flow-direction-002p2.pngbin0 -> 3138 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/page-flow-direction-002p3.pngbin0 -> 3172 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/page-flow-direction-002p4.pngbin0 -> 3051 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-abs-pos-non-replaced.pngbin0 -> 3466 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-002.pngbin0 -> 9285 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-004.pngbin0 -> 9553 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-006.pngbin0 -> 9346 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-008.pngbin0 -> 9699 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-010.pngbin0 -> 14727 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-012.pngbin0 -> 14511 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-014.pngbin0 -> 14969 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-016.pngbin0 -> 14620 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-018.pngbin0 -> 2324 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-box-offsets-rel-pos.pngbin0 -> 3774 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-clearance-calculations.pngbin0 -> 3210 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-first-page-vlr-003.pngbin0 -> 10269 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-first-page-vrl-002.pngbin0 -> 10187 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-float-contiguous.pngbin0 -> 4410 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-horiz-rule.pngbin0 -> 3902 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pattern-gg-gr-100x100.pngbin0 -> 309 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pattern-gg-rg-100x100.pngbin0 -> 311 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pattern-gg-rr-100x100.pngbin0 -> 307 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pattern-gr-gg-100x100.pngbin0 -> 307 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pattern-gr-gr-100x100.pngbin0 -> 301 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pattern-gr-rg-100x100.pngbin0 -> 308 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pattern-gr-rr-100x100.pngbin0 -> 309 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pattern-rg-gg-100x100.pngbin0 -> 304 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pattern-rg-gr-100x100.pngbin0 -> 309 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pattern-rg-rg-100x100.pngbin0 -> 300 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pattern-rg-rr-100x100.pngbin0 -> 325 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pattern-rr-gr-100x100.pngbin0 -> 330 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/pattern-rr-rg-100x100.pngbin0 -> 330 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/right-bottom-200x300.pngbin0 -> 700 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/right-bottom-green-200x300.pngbin0 -> 702 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/right-center-200x300.pngbin0 -> 705 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/right-center-green-200x300.pngbin0 -> 704 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/right-side-filled-square-40x160.pngbin0 -> 1037 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/right-top-200x300.pngbin0 -> 703 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/right-top-green-200x300.pngbin0 -> 700 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/swatch-aqua.pngbin0 -> 175 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/swatch-blue.pngbin0 -> 84 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/swatch-fuchsia.pngbin0 -> 133 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/swatch-green.pngbin0 -> 84 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/swatch-olive.pngbin0 -> 170 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/swatch-orange.pngbin0 -> 84 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/swatch-teal.pngbin0 -> 156 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/swatch-yellow.pngbin0 -> 84 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/tcu-font.otfbin0 -> 235940 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/tcy.css11
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/test-bl.pngbin0 -> 1368 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/test-br.pngbin0 -> 1045 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/test-tl.pngbin0 -> 1025 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/test-tr.pngbin0 -> 1235 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/text-orientation-010.pngbin0 -> 5405 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/text-orientation-012.pngbin0 -> 5113 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/text-orientation-mixed-vrl-002.pngbin0 -> 2671 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/text-orientation-sideways-left-001.pngbin0 -> 1237 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/text-orientation-sideways-lr.pngbin0 -> 6202 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/text-orientation-sideways-right-001.pngbin0 -> 1382 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/text-orientation-upright-001.pngbin0 -> 1783 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/text-orientation-upright-vrl-002.pngbin0 -> 2189 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/text-orientation.js217
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/width-test.css7
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/wm-propagation-body-003-exp-res.pngbin0 -> 4379 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/wm-propagation-body-035-exp-res.pngbin0 -> 4003 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/world.pngbin0 -> 19377 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/yellow-square-59x59.pngbin0 -> 477 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/yellow-square-horiz-redline-bottom-59x59.pngbin0 -> 480 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/yellow-square-vert-redline-center-59x59.pngbin0 -> 483 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/yellow-square-vert-redline-left-59x59.pngbin0 -> 477 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/yellow-square-vert-redline-right-59x59.pngbin0 -> 480 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/zh+arabic.pngbin0 -> 6289 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/zh+latin.pngbin0 -> 6303 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/zh-orientation.pngbin0 -> 4011 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/zh_ar_wrap.pngbin0 -> 6323 bytes
-rw-r--r--testing/web-platform/tests/css/css-writing-modes/support/zh_en_wrap.pngbin0 -> 6368 bytes
149 files changed, 2681 insertions, 0 deletions
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/100x100-lime.png b/testing/web-platform/tests/css/css-writing-modes/support/100x100-lime.png
new file mode 100644
index 0000000000..1b94770080
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/100x100-lime.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/100x100-red.png b/testing/web-platform/tests/css/css-writing-modes/support/100x100-red.png
new file mode 100644
index 0000000000..57bf3ddc52
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/100x100-red.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/DejaVuSerif-webfont.woff b/testing/web-platform/tests/css/css-writing-modes/support/DejaVuSerif-webfont.woff
new file mode 100644
index 0000000000..4583cc675d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/DejaVuSerif-webfont.woff
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/WidthTest-Regular.otf b/testing/web-platform/tests/css/css-writing-modes/support/WidthTest-Regular.otf
new file mode 100644
index 0000000000..06b1d3c025
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/WidthTest-Regular.otf
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/bg-red-1col-2row-320x320.png b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-1col-2row-320x320.png
new file mode 100644
index 0000000000..7ca197bc06
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-1col-2row-320x320.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/bg-red-1col-3row-320x320.png b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-1col-3row-320x320.png
new file mode 100644
index 0000000000..f5c13ab550
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-1col-3row-320x320.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/bg-red-2col-2row-320x320.png b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-2col-2row-320x320.png
new file mode 100644
index 0000000000..4f354e9352
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-2col-2row-320x320.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/bg-red-2col-3row-320x320.png b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-2col-3row-320x320.png
new file mode 100644
index 0000000000..6eded69a4a
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-2col-3row-320x320.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/bg-red-3col-2row-320x320.png b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-3col-2row-320x320.png
new file mode 100644
index 0000000000..5f4b53c46b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-3col-2row-320x320.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/bg-red-3col-3row-320x320.png b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-3col-3row-320x320.png
new file mode 100644
index 0000000000..4c2f6c8e63
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-3col-3row-320x320.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/bg-red-4col-2row-320x320.png b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-4col-2row-320x320.png
new file mode 100644
index 0000000000..052d224df1
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-4col-2row-320x320.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/bg-red-4col-3row-320x320.png b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-4col-3row-320x320.png
new file mode 100644
index 0000000000..1826531268
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-4col-3row-320x320.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/bg-red-low-left-corn-320x320.png b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-low-left-corn-320x320.png
new file mode 100644
index 0000000000..4614673810
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-low-left-corn-320x320.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/bg-red-low-rght-corn-320x320.png b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-low-rght-corn-320x320.png
new file mode 100644
index 0000000000..3d3a3c029d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-low-rght-corn-320x320.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/bg-red-upp-left-corn-320x320.png b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-upp-left-corn-320x320.png
new file mode 100644
index 0000000000..b0db0c2e4e
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-upp-left-corn-320x320.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/bg-red-upp-rght-corn-320x320.png b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-upp-rght-corn-320x320.png
new file mode 100644
index 0000000000..af756b7ba6
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/bg-red-upp-rght-corn-320x320.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/block-flow-direction-025-exp-res.png b/testing/web-platform/tests/css/css-writing-modes/support/block-flow-direction-025-exp-res.png
new file mode 100644
index 0000000000..851eeea039
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/block-flow-direction-025-exp-res.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/block-flow-direction-066-exp-res.png b/testing/web-platform/tests/css/css-writing-modes/support/block-flow-direction-066-exp-res.png
new file mode 100644
index 0000000000..d325b15a4c
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/block-flow-direction-066-exp-res.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/blue-200x100.png b/testing/web-platform/tests/css/css-writing-modes/support/blue-200x100.png
new file mode 100644
index 0000000000..e32c47dd1e
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/blue-200x100.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/blue-horiz-line-220x1.png b/testing/web-platform/tests/css/css-writing-modes/support/blue-horiz-line-220x1.png
new file mode 100644
index 0000000000..3898d5a2d9
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/blue-horiz-line-220x1.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/blue-horiz-line-320x1.png b/testing/web-platform/tests/css/css-writing-modes/support/blue-horiz-line-320x1.png
new file mode 100644
index 0000000000..7d9151c848
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/blue-horiz-line-320x1.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/blue-vert-line-1x220.png b/testing/web-platform/tests/css/css-writing-modes/support/blue-vert-line-1x220.png
new file mode 100644
index 0000000000..07b0239fc5
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/blue-vert-line-1x220.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/blue-vert-line-1x320.png b/testing/web-platform/tests/css/css-writing-modes/support/blue-vert-line-1x320.png
new file mode 100644
index 0000000000..6049e27150
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/blue-vert-line-1x320.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/blue-yellow-206w-165h.png b/testing/web-platform/tests/css/css-writing-modes/support/blue-yellow-206w-165h.png
new file mode 100644
index 0000000000..47ceb84d3f
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/blue-yellow-206w-165h.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/blue1x1.png b/testing/web-platform/tests/css/css-writing-modes/support/blue1x1.png
new file mode 100644
index 0000000000..667b655889
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/blue1x1.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/blue20x20.png b/testing/web-platform/tests/css/css-writing-modes/support/blue20x20.png
new file mode 100644
index 0000000000..e0af555330
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/blue20x20.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/cat.png b/testing/web-platform/tests/css/css-writing-modes/support/cat.png
new file mode 100644
index 0000000000..85dd732481
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/cat.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/clearance-calculation-vrl-002.png b/testing/web-platform/tests/css/css-writing-modes/support/clearance-calculation-vrl-002.png
new file mode 100644
index 0000000000..7fc9f14ed6
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/clearance-calculation-vrl-002.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/clearance-calculation-vrl-004.png b/testing/web-platform/tests/css/css-writing-modes/support/clearance-calculation-vrl-004.png
new file mode 100644
index 0000000000..2d1355e3bd
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/clearance-calculation-vrl-004.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/clearance-calculation-vrl-006.png b/testing/web-platform/tests/css/css-writing-modes/support/clearance-calculation-vrl-006.png
new file mode 100644
index 0000000000..5145c22c48
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/clearance-calculation-vrl-006.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-007.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-007.html
new file mode 100644
index 0000000000..9616e67c24
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-007.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vlr-007 in 'writing-mode: vertical-rl'</title>
+
+ <!--
+ position absolute and 'vertical-lr' - 'left' and 'width' are 'auto', 'right' is not 'auto' with 'direction: ltr' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: ltr;
+ }
+
+ div
+ {
+ border-left: green solid 25px;
+ border-right: green solid 75px;
+ height: 100px;
+ left: auto;
+ position: absolute;
+ right: 80%;
+ top: 0px;
+ width: auto;
+ writing-mode: vertical-lr;
+ }
+
+ /*
+ "
+ 1. [If] 'left' and 'width' are 'auto' and 'right' is not 'auto', then the width is shrink-to-fit. Then solve for 'left'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ auto : left
+ +
+ 0px : margin-left
+ +
+ 25px : border-left-width
+ +
+ 0px : padding-left
+ +
+ auto : width
+ +
+ 0px : padding-right
+ +
+ 75px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 80% : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ (solve) : left
+ +
+ 0px : margin-left
+ +
+ 25px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 0px : width (shrink-to-fit)
+ +
+ 0px : padding-right
+ +
+ 75px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 400px : right (80% of 500px == 400px)
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used left offset value must be 0 .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-009.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-009.html
new file mode 100644
index 0000000000..7cd83eb446
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-009.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vlr-009 in 'writing-mode: vertical-rl'</title>
+
+ <!--
+ position absolute and 'vertical-lr' - 'left' and 'width' are 'auto', 'right' is not 'auto' with 'direction: rtl' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: rtl;
+ }
+
+ div
+ {
+ border-left: green solid 25px;
+ border-right: green solid 75px;
+ height: 100px;
+ left: auto;
+ position: absolute;
+ right: 20%;
+ top: 0px;
+ width: auto;
+ writing-mode: vertical-lr;
+ }
+
+ /*
+ "
+ 1. [If] 'left' and 'width' are 'auto' and 'right' is not 'auto', then the width is shrink-to-fit. Then solve for 'left'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ auto : left
+ +
+ 0px : margin-left
+ +
+ 25px : border-left-width
+ +
+ 0px : padding-left
+ +
+ auto : width
+ +
+ 0px : padding-right
+ +
+ 75px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 20% : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ (solve) : left
+ +
+ 0px : margin-left
+ +
+ 25px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 0px : width (shrink-to-fit)
+ +
+ 0px : padding-right
+ +
+ 75px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 400px : right (20% of 500px == 100px)
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used left offset value must be 300px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-015.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-015.html
new file mode 100644
index 0000000000..371febed0d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-015.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vlr-015 in 'writing-mode: vertical-lr'</title>
+
+ <!--
+ position absolute and 'vertical-rl' - 'width' and 'right' are 'auto' and 'left' is not 'auto' with 'direction: ltr' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: ltr;
+ }
+
+ div
+ {
+ border-left: green solid 25px;
+ border-right: green solid 75px;
+ height: 100px;
+ left: 60%;
+ position: absolute;
+ right: auto;
+ top: 0px;
+ width: auto;
+ writing-mode: vertical-lr;
+ }
+
+ /*
+ "
+ 3. [If] 'width' and 'right' are 'auto' and 'left' is not 'auto', then the width is shrink-to-fit. Then solve for 'right'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ 60% : left
+ +
+ 0px : margin-left
+ +
+ 25px : border-left-width
+ +
+ 0px : padding-left
+ +
+ auto : width (set to shrink-to-fit)
+ +
+ 0px : padding-right
+ +
+ 75px : border-right-width
+ +
+ 0px : margin-right
+ +
+ solve : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ 300px : left (60% of 500px == 300px)
+ +
+ 0px : margin-left
+ +
+ 25px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 0px : width (shrink-to-fit)
+ +
+ 0px : padding-right
+ +
+ 75px : border-right-width
+ +
+ 0px : margin-right
+ +
+ solve : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used right offset value must be 100px.
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-017.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-017.html
new file mode 100644
index 0000000000..f421df9127
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-017.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vlr-017 in 'writing-mode: vertical-lr'</title>
+
+ <!--
+ position absolute and 'vertical-lr' - 'width' and 'right' are 'auto' and 'left' is not 'auto' with 'direction: rtl' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: rtl;
+ }
+
+ div
+ {
+ border-left: green solid 25px;
+ border-right: green solid 75px;
+ height: 100px;
+ left: 60%;
+ position: absolute;
+ right: auto;
+ top: 0px;
+ width: auto;
+ writing-mode: vertical-lr;
+ }
+
+ /*
+ "
+ 3. [If] 'width' and 'right' are 'auto' and 'left' is not 'auto', then the width is shrink-to-fit. Then solve for 'right'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ 60% : left
+ +
+ 0px : margin-left
+ +
+ 25px : border-left-width
+ +
+ 0px : padding-left
+ +
+ auto : width (set to shrink-to-fit)
+ +
+ 0px : padding-right
+ +
+ 75px : border-right-width
+ +
+ 0px : margin-right
+ +
+ solve : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ 300px : left (60% of 500px == 300px)
+ +
+ 0px : margin-left
+ +
+ 25px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 0px : width (shrink-to-fit)
+ +
+ 0px : padding-right
+ +
+ 75px : border-right-width
+ +
+ 0px : margin-right
+ +
+ solve : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used right offset value must be 100px.
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-019.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-019.html
new file mode 100644
index 0000000000..5b60921c9d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-019.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vlr-019 in 'writing-mode: vertical-lr'</title>
+
+ <!--
+ position absolute and 'vertical-rl' - 'left' is 'auto', 'width' and 'right' are not 'auto' with 'direction: ltr' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: ltr;
+ }
+
+ div
+ {
+ background-color: green;
+ border-left: green solid 35px;
+ border-right: green solid 15px;
+ height: 100px;
+ left: auto;
+ position: absolute;
+ right: 80%;
+ top: 0px;
+ width: 50px;
+ writing-mode: vertical-lr;
+ }
+
+ /*
+ "
+ 4. [If] 'left' is 'auto', 'width' and 'right' are not 'auto', then solve for 'left'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ auto : left
+ +
+ 0px : margin-left
+ +
+ 35px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 50px : width
+ +
+ 0px : padding-right
+ +
+ 15px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 80% : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ (solve) : left
+ +
+ 0px : margin-left
+ +
+ 35px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 50px : width
+ +
+ 0px : padding-right
+ +
+ 15px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 400px : right (80% of 500px == 400px)
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used left offset value must be 0px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-021.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-021.html
new file mode 100644
index 0000000000..8248aed9c8
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-021.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vlr-021 in 'writing-mode: vertical-rl'</title>
+
+ <!--
+ position absolute and 'vertical-rl' - 'left' is 'auto', 'width' and 'right' are not 'auto' with 'direction: rtl' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: rtl;
+ }
+
+ div
+ {
+ background-color: green;
+ border-left: green solid 35px;
+ border-right: green solid 15px;
+ height: 100px;
+ left: auto;
+ position: absolute;
+ right: 80%;
+ top: 0px;
+ width: 50px;
+ writing-mode: vertical-lr;
+ }
+
+ /*
+ "
+ 4. [If] 'left' is 'auto', 'width' and 'right' are not 'auto', then solve for 'left'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ auto : left
+ +
+ 0px : margin-left
+ +
+ 35px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 50px : width
+ +
+ 0px : padding-right
+ +
+ 15px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 80% : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ (solve) : left
+ +
+ 0px : margin-left
+ +
+ 35px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 50px : width
+ +
+ 0px : padding-right
+ +
+ 15px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 400px : right (80% of 500px == 400px)
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used left offset value must be 0px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-023.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-023.html
new file mode 100644
index 0000000000..e0a3caff3f
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-023.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vrl-023 in 'writing-mode: vertical-lr'</title>
+
+ <!--
+ position absolute and 'vertical-lr' - 'width' is 'auto', 'left' and 'right' are not 'auto' with 'direction: ltr' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: ltr;
+ }
+
+ div
+ {
+ background-color: green;
+ border-left: green none 0px;
+ border-right: green none 0px;
+ height: 100px;
+ left: 60%;
+ position: absolute;
+ right: 20%;
+ top: 0px;
+ width: auto;
+ writing-mode: vertical-lr;
+ }
+
+ /*
+ "
+ 5. [If] 'width' is 'auto', 'left' and 'right' are not 'auto', then solve for 'width'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ 60% : left
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ auto : width
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 20% : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ 300px : left (60% of 500px)
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ solve : width
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 100px : right (20% of 500px == 100px)
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used width value must be 100px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-025.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-025.html
new file mode 100644
index 0000000000..010c8b539a
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-025.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vlr-025 in 'writing-mode: vertical-lr'</title>
+
+ <!--
+ position absolute and 'vertical-lr' - 'width' is 'auto', 'left' and 'right' are not 'auto' with 'direction: rtl' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: rtl;
+ }
+
+ div
+ {
+ background-color: green;
+ border-left: green none 0px;
+ border-right: green none 0px;
+ height: 100px;
+ left: 60%;
+ position: absolute;
+ right: 20%;
+ top: 0px;
+ width: auto;
+ writing-mode: vertical-lr;
+ }
+
+ /*
+ "
+ 5. [If] 'width' is 'auto', 'left' and 'right' are not 'auto', then solve for 'width'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ 60% : left
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ auto : width
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 20% : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ 300px : left (60% of 500px)
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ solve : width
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 100px : right (20% of 500px == 100px)
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used width value must be 100px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-027.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-027.html
new file mode 100644
index 0000000000..2dcb3d8fbf
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-027.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vlr-027 in 'writing-mode: vertical-lr'</title>
+
+ <!--
+ position absolute and 'vertical-lr' - 'right' is 'auto', 'left' and 'width' are not 'auto' with 'direction: ltr' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: ltr;
+ }
+
+ div
+ {
+ background-color: green;
+ border-left: green none 0px;
+ border-right: green none 0px;
+ height: 100px;
+ left: 60%;
+ position: absolute;
+ right: auto;
+ top: 0px;
+ width: 20%;
+ writing-mode: vertical-lr;
+ }
+
+ /*
+ "
+ 6. [If] 'right' is 'auto', 'left' and 'width' are not 'auto', then solve for 'right'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ 60% : left
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 20% : width
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ auto : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ 300px : left (60% of 500px)
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 100px : width (20% of 500px == 100px)
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ solve : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used right offset value must be 100px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-029.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-029.html
new file mode 100644
index 0000000000..3164e13b17
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-029.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vlr-029 in 'writing-mode: vertical-lr'</title>
+
+ <!--
+ position absolute and 'vertical-lr' - 'right' is 'auto', 'left' and 'width' are not 'auto' with 'direction: rtl' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: rtl;
+ }
+
+ div
+ {
+ background-color: green;
+ border-left: green none 0px;
+ border-right: green none 0px;
+ height: 100px;
+ left: 60%;
+ position: absolute;
+ right: auto;
+ top: 0px;
+ width: 20%;
+ writing-mode: vertical-lr;
+ }
+
+ /*
+ "
+ 6. [If] 'right' is 'auto', 'left' and 'width' are not 'auto', then solve for 'right'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ 60% : left
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 20% : width
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ auto : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ 300px : left (60% of 500px)
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 100px : width (20% of 500px == 100px)
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ solve : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used right offset value must be 100px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-031.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-031.html
new file mode 100644
index 0000000000..27e2509c38
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-031.html
@@ -0,0 +1,99 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vlr-031 in 'writing-mode: vertical-lr'</title>
+
+ <!--
+ position absolute and 'vertical-lr' - overconstrained values with 'direction: ltr' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: ltr;
+ }
+
+ div
+ {
+ background-color: green;
+ border-left: green none 0px;
+ border-right: green none 0px;
+ height: 100px;
+ left: 60%;
+ margin-left: 0px;
+ margin-right: 0px;
+ position: absolute;
+ right: 40%;
+ top: 0px;
+ width: 20%;
+ writing-mode: vertical-lr;
+ }
+
+ /*
+ "
+ If the values are over-constrained, ignore the value for 'left' (in case the 'direction' property of the containing block is 'rtl') or 'right' (in case 'direction' is 'ltr') and solve for that value.
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ 60% : left
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 20% : width
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 40% : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ 300px : left (60% of 500px)
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 100px : width (20% of 500px == 100px)
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ignore and solve : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used right offset value must be 100px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-033.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-033.html
new file mode 100644
index 0000000000..f25b101972
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vlr-033.html
@@ -0,0 +1,99 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vlr-033 in 'writing-mode: vertical-lr'</title>
+
+ <!--
+ position absolute and 'vertical-lr' - overconstrained values with 'direction: rtl' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: rtl;
+ }
+
+ div
+ {
+ background-color: green;
+ border-left: green none 0px;
+ border-right: green none 0px;
+ height: 100px;
+ left: 20%;
+ margin-left: 0px;
+ margin-right: 0px;
+ position: absolute;
+ right: 20%;
+ top: 0px;
+ width: 20%;
+ writing-mode: vertical-lr;
+ }
+
+ /*
+ "
+ If the values are over-constrained, ignore the value for 'left' (in case the 'direction' property of the containing block is 'rtl') or 'right' (in case 'direction' is 'ltr') and solve for that value.
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ 20% : left
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 20% : width
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 20% : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ignore and solve : left
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 100px : width (20% of 500px == 100px)
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 100px : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used left offset value must be 300px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-006.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-006.html
new file mode 100644
index 0000000000..a882508c91
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-006.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vrl-006 in 'writing-mode: vertical-rl'</title>
+
+ <!--
+ position absolute and 'vertical-rl' - 'left' and 'width' are 'auto', 'right' is not 'auto' with 'direction: ltr' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: ltr;
+ }
+
+ div
+ {
+ border-left: green solid 25px;
+ border-right: green solid 75px;
+ height: 100px;
+ left: auto;
+ position: absolute;
+ right: 80%;
+ top: 0px;
+ width: auto;
+ writing-mode: vertical-rl;
+ }
+
+ /*
+ "
+ 1. [If] 'left' and 'width' are 'auto' and 'right' is not 'auto', then the width is shrink-to-fit. Then solve for 'left'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ auto : left
+ +
+ 0px : margin-left
+ +
+ 25px : border-left-width
+ +
+ 0px : padding-left
+ +
+ auto : width
+ +
+ 0px : padding-right
+ +
+ 75px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 80% : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ (solve) : left
+ +
+ 0px : margin-left
+ +
+ 25px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 0px : width (shrink-to-fit)
+ +
+ 0px : padding-right
+ +
+ 75px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 400px : right (80% of 500px == 400px)
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used left offset value must be 0px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-008.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-008.html
new file mode 100644
index 0000000000..9ac1219d55
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-008.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vrl-008 in 'writing-mode: vertical-rl'</title>
+
+ <!--
+ position absolute and 'vertical-rl' - 'left' and 'width' are 'auto', 'right' is not 'auto' with 'direction: rtl' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: rtl;
+ }
+
+ div
+ {
+ border-left: green solid 25px;
+ border-right: green solid 75px;
+ height: 100px;
+ left: auto;
+ position: absolute;
+ right: 20%;
+ top: 0px;
+ width: auto;
+ writing-mode: vertical-rl;
+ }
+
+ /*
+ "
+ 1. [If] 'left' and 'width' are 'auto' and 'right' is not 'auto', then the width is shrink-to-fit. Then solve for 'left'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ auto : left
+ +
+ 0px : margin-left
+ +
+ 25px : border-left-width
+ +
+ 0px : padding-left
+ +
+ auto : width
+ +
+ 0px : padding-right
+ +
+ 75px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 20% : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ (solve) : left
+ +
+ 0px : margin-left
+ +
+ 25px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 0px : width (shrink-to-fit)
+ +
+ 0px : padding-right
+ +
+ 75px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 100px : right (20% of 500px == 100px)
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used left offset value must be 300px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-014.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-014.html
new file mode 100644
index 0000000000..67d7a6b38a
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-014.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vrl-014 in 'writing-mode: vertical-rl'</title>
+
+ <!--
+ position absolute and 'vertical-rl' - 'width' and 'right' are 'auto' and 'left' is not 'auto' with 'direction: ltr' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: ltr;
+ }
+
+ div
+ {
+ border-left: green solid 25px;
+ border-right: green solid 75px;
+ height: 100px;
+ left: 60%;
+ position: absolute;
+ right: auto;
+ top: 0px;
+ width: auto;
+ writing-mode: vertical-rl;
+ }
+
+ /*
+ "
+ 3. [If] 'width' and 'right' are 'auto' and 'left' is not 'auto', then the width is shrink-to-fit. Then solve for 'right'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ 60% : left
+ +
+ 0px : margin-left
+ +
+ 25px : border-left-width
+ +
+ 0px : padding-left
+ +
+ auto : width (set to shrink-to-fit)
+ +
+ 0px : padding-right
+ +
+ 75px : border-right-width
+ +
+ 0px : margin-right
+ +
+ solve : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ 300px : left (60% of 500px == 300px)
+ +
+ 0px : margin-left
+ +
+ 25px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 0px : width (shrink-to-fit)
+ +
+ 0px : padding-right
+ +
+ 75px : border-right-width
+ +
+ 0px : margin-right
+ +
+ solve : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used right offset value must be 100px.
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-016.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-016.html
new file mode 100644
index 0000000000..4008d0b587
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-016.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vrl-016 in 'writing-mode: vertical-rl'</title>
+
+ <!--
+ position absolute and 'vertical-rl' - 'width' and 'right' are 'auto' and 'left' is not 'auto' with 'direction: rtl' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: rtl;
+ }
+
+ div
+ {
+ border-left: green solid 25px;
+ border-right: green solid 75px;
+ height: 100px;
+ left: 60%;
+ position: absolute;
+ right: auto;
+ top: 0px;
+ width: auto;
+ writing-mode: vertical-rl;
+ }
+
+ /*
+ "
+ 3. [If] 'width' and 'right' are 'auto' and 'left' is not 'auto', then the width is shrink-to-fit. Then solve for 'right'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ 60% : left
+ +
+ 0px : margin-left
+ +
+ 25px : border-left-width
+ +
+ 0px : padding-left
+ +
+ auto : width (set to shrink-to-fit)
+ +
+ 0px : padding-right
+ +
+ 75px : border-right-width
+ +
+ 0px : margin-right
+ +
+ solve : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ 300px : left (60% of 500px == 300px)
+ +
+ 0px : margin-left
+ +
+ 25px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 0px : width (shrink-to-fit)
+ +
+ 0px : padding-right
+ +
+ 75px : border-right-width
+ +
+ 0px : margin-right
+ +
+ solve : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used right offset value must be 100px.
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-018.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-018.html
new file mode 100644
index 0000000000..a21cc4a455
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-018.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vrl-018 in 'writing-mode: vertical-rl'</title>
+
+ <!--
+ position absolute and 'vertical-rl' - 'left' is 'auto', 'width' and 'right' are not 'auto' with 'direction: ltr' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: ltr;
+ }
+
+ div
+ {
+ background-color: green;
+ border-left: green solid 35px;
+ border-right: green solid 15px;
+ height: 100px;
+ left: auto;
+ position: absolute;
+ right: 80%;
+ top: 0px;
+ width: 50px;
+ writing-mode: vertical-rl;
+ }
+
+ /*
+ "
+ 4. [If] 'left' is 'auto', 'width' and 'right' are not 'auto', then solve for 'left'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ auto : left
+ +
+ 0px : margin-left
+ +
+ 35px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 50px : width
+ +
+ 0px : padding-right
+ +
+ 15px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 80% : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ (solve) : left
+ +
+ 0px : margin-left
+ +
+ 35px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 50px : width
+ +
+ 0px : padding-right
+ +
+ 15px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 400px : right (80% of 500px == 400px)
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used left offset value must be 0px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-020.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-020.html
new file mode 100644
index 0000000000..c92176722d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-020.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vrl-020 in 'writing-mode: vertical-rl'</title>
+
+ <!--
+ position absolute and 'vertical-rl' - 'left' is 'auto', 'width' and 'right' are not 'auto' with 'direction: rtl' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: rtl;
+ }
+
+ div
+ {
+ background-color: green;
+ border-left: green solid 35px;
+ border-right: green solid 15px;
+ height: 100px;
+ left: auto;
+ position: absolute;
+ right: 80%;
+ top: 0px;
+ width: 50px;
+ writing-mode: vertical-rl;
+ }
+
+ /*
+ "
+ 4. [If] 'left' is 'auto', 'width' and 'right' are not 'auto', then solve for 'left'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ auto : left
+ +
+ 0px : margin-left
+ +
+ 35px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 50px : width
+ +
+ 0px : padding-right
+ +
+ 15px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 80% : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ (solve) : left
+ +
+ 0px : margin-left
+ +
+ 35px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 50px : width
+ +
+ 0px : padding-right
+ +
+ 15px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 400px : right (80% of 500px == 400px)
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used left offset value must be 0px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-022.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-022.html
new file mode 100644
index 0000000000..eb7eff5fd3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-022.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vrl-022 in 'writing-mode: vertical-rl'</title>
+
+ <!--
+ position absolute and 'vertical-rl' - 'width' is 'auto', 'left' and 'right' are not 'auto' with 'direction: ltr' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: ltr;
+ }
+
+ div
+ {
+ background-color: green;
+ border-left: green none 0px;
+ border-right: green none 0px;
+ height: 100px;
+ left: 60%;
+ position: absolute;
+ right: 20%;
+ top: 0px;
+ width: auto;
+ writing-mode: vertical-rl;
+ }
+
+ /*
+ "
+ 5. [If] 'width' is 'auto', 'left' and 'right' are not 'auto', then solve for 'width'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ 60% : left
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ auto : width
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 20% : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ 300px : left (60% of 500px)
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ solve : width
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 100px : right (20% of 500px == 100px)
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used width value must be 100px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-024.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-024.html
new file mode 100644
index 0000000000..11602443a6
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-024.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vrl-024 in 'writing-mode: vertical-rl'</title>
+
+ <!--
+ position absolute and 'vertical-rl' - 'width' is 'auto', 'left' and 'right' are not 'auto' with 'direction: rtl' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: rtl;
+ }
+
+ div
+ {
+ background-color: green;
+ border-left: green none 0px;
+ border-right: green none 0px;
+ height: 100px;
+ left: 60%;
+ position: absolute;
+ right: 20%;
+ top: 0px;
+ width: auto;
+ writing-mode: vertical-rl;
+ }
+
+ /*
+ "
+ 5. [If] 'width' is 'auto', 'left' and 'right' are not 'auto', then solve for 'width'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ 60% : left
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ auto : width
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 20% : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ 300px : left (60% of 500px)
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ solve : width
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 100px : right (20% of 500px == 100px)
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used width value must be 100px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-026.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-026.html
new file mode 100644
index 0000000000..abd8aa80c9
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-026.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vrl-026 in 'writing-mode: vertical-rl'</title>
+
+ <!--
+ position absolute and 'vertical-rl' - 'right' is 'auto', 'left' and 'width' are not 'auto' with 'direction: ltr' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: ltr;
+ }
+
+ div
+ {
+ background-color: green;
+ border-left: green none 0px;
+ border-right: green none 0px;
+ height: 100px;
+ left: 60%;
+ position: absolute;
+ right: auto;
+ top: 0px;
+ width: 20%;
+ writing-mode: vertical-rl;
+ }
+
+ /*
+ "
+ 6. [If] 'right' is 'auto', 'left' and 'width' are not 'auto', then solve for 'right'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ 60% : left
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 20% : width
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ auto : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ 300px : left (60% of 500px)
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 100px : width (20% of 500px == 100px)
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ solve : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used right offset value must be 100px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-028.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-028.html
new file mode 100644
index 0000000000..38a7d271a0
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-028.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vrl-028 in 'writing-mode: vertical-rl'</title>
+
+ <!--
+ position absolute and 'vertical-rl' - 'right' is 'auto', 'left' and 'width' are not 'auto' with 'direction: rtl' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: rtl;
+ }
+
+ div
+ {
+ background-color: green;
+ border-left: green none 0px;
+ border-right: green none 0px;
+ height: 100px;
+ left: 60%;
+ position: absolute;
+ right: auto;
+ top: 0px;
+ width: 20%;
+ writing-mode: vertical-rl;
+ }
+
+ /*
+ "
+ 6. [If] 'right' is 'auto', 'left' and 'width' are not 'auto', then solve for 'right'
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ 60% : left
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 20% : width
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ auto : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ 300px : left (60% of 500px)
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 100px : width (20% of 500px == 100px)
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ solve : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used right offset value must be 100px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-030.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-030.html
new file mode 100644
index 0000000000..291bc3c2b8
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-030.html
@@ -0,0 +1,99 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vrl-030 in 'writing-mode: vertical-rl'</title>
+
+ <!--
+ position absolute and 'vertical-rl' - overconstrained values with 'direction: ltr' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: ltr;
+ }
+
+ div
+ {
+ background-color: green;
+ border-left: green none 0px;
+ border-right: green none 0px;
+ height: 100px;
+ left: 60%;
+ margin-left: 0px;
+ margin-right: 0px;
+ position: absolute;
+ right: 40%;
+ top: 0px;
+ width: 20%;
+ writing-mode: vertical-rl;
+ }
+
+ /*
+ "
+ If the values are over-constrained, ignore the value for 'left' (in case the 'direction' property of the containing block is 'rtl') or 'right' (in case 'direction' is 'ltr') and solve for that value.
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ 60% : left
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 20% : width
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 40% : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ 300px : left (60% of 500px)
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 100px : width (20% of 500px == 100px)
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ignore and solve : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used right offset value must be 100px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-032.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-032.html
new file mode 100644
index 0000000000..3df277356c
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-abs-pos-non-replaced-icb-vrl-032.html
@@ -0,0 +1,99 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+ <title>Embedded HTML document for abs-pos-non-replaced-icb-vrl-032 in 'writing-mode: vertical-rl'</title>
+
+ <!--
+ position absolute and 'vertical-rl' - overconstrained values with 'direction: rtl' in initial containing block
+ -->
+
+ <style type="text/css">
+ html
+ {
+ direction: rtl;
+ }
+
+ div
+ {
+ background-color: green;
+ border-left: green none 0px;
+ border-right: green none 0px;
+ height: 100px;
+ left: 20%;
+ margin-left: 0px;
+ margin-right: 0px;
+ position: absolute;
+ right: 20%;
+ top: 0px;
+ width: 20%;
+ writing-mode: vertical-rl;
+ }
+
+ /*
+ "
+ If the values are over-constrained, ignore the value for 'left' (in case the 'direction' property of the containing block is 'rtl') or 'right' (in case 'direction' is 'ltr') and solve for that value.
+ "
+ 10.3.7 Absolutely positioned, non-replaced elements
+ http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+ So:
+
+ 20% : left
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 20% : width
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 20% : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ becomes
+
+ignore and solve : left
+ +
+ 0px : margin-left
+ +
+ 0px : border-left-width
+ +
+ 0px : padding-left
+ +
+ 100px : width (20% of 500px == 100px)
+ +
+ 0px : padding-right
+ +
+ 0px : border-right-width
+ +
+ 0px : margin-right
+ +
+ 100px : right
+ ====================
+ 500px : width of containing block (width of Initial Containing Block)
+
+ so used left offset value must be 300px .
+
+ */
+ </style>
+ </head>
+
+ <body>
+
+ <div></div>
+
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-for-background-size-root-vrl-002.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-for-background-size-root-vrl-002.html
new file mode 100644
index 0000000000..f4c21ad9dd
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-for-background-size-root-vrl-002.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+
+<html>
+
+ <head>
+
+ <meta charset="UTF-8">
+
+ <link rel="author" title="Koji Ishii" href="mailto:kojiishi@gmail.com">
+ <link rel="reviewer" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/"> <!-- 2015-05-01 -->
+
+ <title>Embedded HTML document for background-size-document-root-vrl-002</title>
+
+ <style>
+ html
+ {
+ background-image: url("swatch-green.png");
+ background-repeat: no-repeat;
+ background-size: 100% 100%;
+ writing-mode: vertical-rl;
+
+ width: 100px;
+ }
+ </style>
+
+ </head>
+
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-for-background-size-root-vrl-004.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-for-background-size-root-vrl-004.html
new file mode 100644
index 0000000000..bbc1f91d58
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-for-background-size-root-vrl-004.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+
+<html>
+
+ <head>
+
+ <meta charset="UTF-8">
+
+ <link rel="author" title="Koji Ishii" href="mailto:kojiishi@gmail.com">
+ <link rel="reviewer" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/"> <!-- 2015-05-01 -->
+
+ <title>Embedded HTML document for background-size-document-root-vrl-004</title>
+
+ <style>
+ html
+ {
+ background-image: url("swatch-green.png");
+ background-repeat: no-repeat;
+ background-size: 100% 100%;
+ writing-mode: vertical-rl;
+
+ border-right: green solid 20px;
+ width: 80px;
+ }
+ </style>
+
+ </head>
+
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-for-background-size-root-vrl-006.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-for-background-size-root-vrl-006.html
new file mode 100644
index 0000000000..f4c1fa0396
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-for-background-size-root-vrl-006.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+
+<html>
+
+ <head>
+
+ <meta charset="UTF-8">
+
+ <link rel="author" title="Koji Ishii" href="mailto:kojiishi@gmail.com">
+ <link rel="reviewer" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/"> <!-- 2015-05-01 -->
+
+ <title>Embedded HTML document for background-size-document-root-vrl-006</title>
+
+ <style>
+ html
+ {
+ background-image: url("swatch-green.png");
+ background-repeat: no-repeat;
+ background-size: 100% 100%;
+ writing-mode: vertical-rl;
+
+ margin-right: 50px;
+ padding-right: 50px;
+ width: 50px;
+ }
+ </style>
+
+ </head>
+
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-for-background-size-root-vrl-008.html b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-for-background-size-root-vrl-008.html
new file mode 100644
index 0000000000..4e67786f13
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/embedded-doc-for-background-size-root-vrl-008.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+
+<html>
+
+ <head>
+
+ <meta charset="UTF-8">
+
+ <link rel="author" title="Koji Ishii" href="mailto:kojiishi@gmail.com">
+ <link rel="reviewer" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/"> <!-- 2015-05-01 -->
+
+ <title>Embedded HTML document for background-size-document-root-vrl-008</title>
+
+ <style>
+ html
+ {
+ background-image: url("swatch-green.png");
+ background-repeat: no-repeat;
+ background-size: 100% 100%;
+ writing-mode: vertical-rl;
+
+ border-left: white solid 20px;
+ margin-right: 50px;
+ padding-right: 50px;
+ width: 50px;
+ }
+ </style>
+
+ </head>
+
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/left-bottom-200x300.png b/testing/web-platform/tests/css/css-writing-modes/support/left-bottom-200x300.png
new file mode 100644
index 0000000000..6e30eba507
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/left-bottom-200x300.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/left-bottom-green-200x300.png b/testing/web-platform/tests/css/css-writing-modes/support/left-bottom-green-200x300.png
new file mode 100644
index 0000000000..30668751df
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/left-bottom-green-200x300.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/left-center-200x300.png b/testing/web-platform/tests/css/css-writing-modes/support/left-center-200x300.png
new file mode 100644
index 0000000000..6025c4e85b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/left-center-200x300.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/left-center-green-200x300.png b/testing/web-platform/tests/css/css-writing-modes/support/left-center-green-200x300.png
new file mode 100644
index 0000000000..b2645c0fe6
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/left-center-green-200x300.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/left-side-filled-square-40x160.png b/testing/web-platform/tests/css/css-writing-modes/support/left-side-filled-square-40x160.png
new file mode 100644
index 0000000000..86fd7e5671
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/left-side-filled-square-40x160.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/left-top-200x300.png b/testing/web-platform/tests/css/css-writing-modes/support/left-top-200x300.png
new file mode 100644
index 0000000000..43e739acbc
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/left-top-200x300.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/margin-collapse-2em-space-wm-vert.png b/testing/web-platform/tests/css/css-writing-modes/support/margin-collapse-2em-space-wm-vert.png
new file mode 100644
index 0000000000..8a2fa55efd
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/margin-collapse-2em-space-wm-vert.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/mn+arabic.png b/testing/web-platform/tests/css/css-writing-modes/support/mn+arabic.png
new file mode 100644
index 0000000000..d999c3d309
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/mn+arabic.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/mn+latin.png b/testing/web-platform/tests/css/css-writing-modes/support/mn+latin.png
new file mode 100644
index 0000000000..224297163c
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/mn+latin.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/mn-orientation.png b/testing/web-platform/tests/css/css-writing-modes/support/mn-orientation.png
new file mode 100644
index 0000000000..0167dfbde6
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/mn-orientation.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/mn_ar_wrap.png b/testing/web-platform/tests/css/css-writing-modes/support/mn_ar_wrap.png
new file mode 100644
index 0000000000..c7d5ca5806
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/mn_ar_wrap.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/mn_en_wrap.png b/testing/web-platform/tests/css/css-writing-modes/support/mn_en_wrap.png
new file mode 100644
index 0000000000..e697c992bc
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/mn_en_wrap.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/opaque-square-40x160.png b/testing/web-platform/tests/css/css-writing-modes/support/opaque-square-40x160.png
new file mode 100644
index 0000000000..11636f5f77
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/opaque-square-40x160.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/ortho-htb-alongside-vrl-floats-002-exp-res.png b/testing/web-platform/tests/css/css-writing-modes/support/ortho-htb-alongside-vrl-floats-002-exp-res.png
new file mode 100644
index 0000000000..54d35eb05e
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/ortho-htb-alongside-vrl-floats-002-exp-res.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/page-flow-direction-002p1.png b/testing/web-platform/tests/css/css-writing-modes/support/page-flow-direction-002p1.png
new file mode 100644
index 0000000000..f5adb11b4b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/page-flow-direction-002p1.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/page-flow-direction-002p2.png b/testing/web-platform/tests/css/css-writing-modes/support/page-flow-direction-002p2.png
new file mode 100644
index 0000000000..7ecf84bae3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/page-flow-direction-002p2.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/page-flow-direction-002p3.png b/testing/web-platform/tests/css/css-writing-modes/support/page-flow-direction-002p3.png
new file mode 100644
index 0000000000..d7c58d6224
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/page-flow-direction-002p3.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/page-flow-direction-002p4.png b/testing/web-platform/tests/css/css-writing-modes/support/page-flow-direction-002p4.png
new file mode 100644
index 0000000000..04dc0fe2e9
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/page-flow-direction-002p4.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-abs-pos-non-replaced.png b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-abs-pos-non-replaced.png
new file mode 100644
index 0000000000..15fd6065ef
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-abs-pos-non-replaced.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-002.png b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-002.png
new file mode 100644
index 0000000000..a0db690941
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-002.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-004.png b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-004.png
new file mode 100644
index 0000000000..ec130f10f4
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-004.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-006.png b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-006.png
new file mode 100644
index 0000000000..981741b7e5
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-006.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-008.png b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-008.png
new file mode 100644
index 0000000000..9b2a0610e4
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-008.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-010.png b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-010.png
new file mode 100644
index 0000000000..a2d6614618
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-010.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-012.png b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-012.png
new file mode 100644
index 0000000000..23b1beb9cd
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-012.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-014.png b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-014.png
new file mode 100644
index 0000000000..64e081c72f
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-014.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-016.png b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-016.png
new file mode 100644
index 0000000000..952e0089b8
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-016.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-018.png b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-018.png
new file mode 100644
index 0000000000..22f51030c3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-bg-pos-vrl-018.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-box-offsets-rel-pos.png b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-box-offsets-rel-pos.png
new file mode 100644
index 0000000000..e81c0ae4cf
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-box-offsets-rel-pos.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-clearance-calculations.png b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-clearance-calculations.png
new file mode 100644
index 0000000000..ec502d3532
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-clearance-calculations.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-first-page-vlr-003.png b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-first-page-vlr-003.png
new file mode 100644
index 0000000000..f8c677b8e0
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-first-page-vlr-003.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-first-page-vrl-002.png b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-first-page-vrl-002.png
new file mode 100644
index 0000000000..48555d3acc
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-first-page-vrl-002.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-float-contiguous.png b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-float-contiguous.png
new file mode 100644
index 0000000000..8d35d98e9c
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-float-contiguous.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-horiz-rule.png b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-horiz-rule.png
new file mode 100644
index 0000000000..f9cc0b1eef
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pass-cdts-horiz-rule.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pattern-gg-gr-100x100.png b/testing/web-platform/tests/css/css-writing-modes/support/pattern-gg-gr-100x100.png
new file mode 100644
index 0000000000..fd9b7e1ef2
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pattern-gg-gr-100x100.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pattern-gg-rg-100x100.png b/testing/web-platform/tests/css/css-writing-modes/support/pattern-gg-rg-100x100.png
new file mode 100644
index 0000000000..80c7035f1f
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pattern-gg-rg-100x100.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pattern-gg-rr-100x100.png b/testing/web-platform/tests/css/css-writing-modes/support/pattern-gg-rr-100x100.png
new file mode 100644
index 0000000000..a98636ddef
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pattern-gg-rr-100x100.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pattern-gr-gg-100x100.png b/testing/web-platform/tests/css/css-writing-modes/support/pattern-gr-gg-100x100.png
new file mode 100644
index 0000000000..fd1f7a7b50
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pattern-gr-gg-100x100.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pattern-gr-gr-100x100.png b/testing/web-platform/tests/css/css-writing-modes/support/pattern-gr-gr-100x100.png
new file mode 100644
index 0000000000..431b99f933
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pattern-gr-gr-100x100.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pattern-gr-rg-100x100.png b/testing/web-platform/tests/css/css-writing-modes/support/pattern-gr-rg-100x100.png
new file mode 100644
index 0000000000..63248d4dd1
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pattern-gr-rg-100x100.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pattern-gr-rr-100x100.png b/testing/web-platform/tests/css/css-writing-modes/support/pattern-gr-rr-100x100.png
new file mode 100644
index 0000000000..6fba835830
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pattern-gr-rr-100x100.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pattern-rg-gg-100x100.png b/testing/web-platform/tests/css/css-writing-modes/support/pattern-rg-gg-100x100.png
new file mode 100644
index 0000000000..47ee743880
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pattern-rg-gg-100x100.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pattern-rg-gr-100x100.png b/testing/web-platform/tests/css/css-writing-modes/support/pattern-rg-gr-100x100.png
new file mode 100644
index 0000000000..6b19ec9a4e
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pattern-rg-gr-100x100.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pattern-rg-rg-100x100.png b/testing/web-platform/tests/css/css-writing-modes/support/pattern-rg-rg-100x100.png
new file mode 100644
index 0000000000..e28bdba9dd
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pattern-rg-rg-100x100.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pattern-rg-rr-100x100.png b/testing/web-platform/tests/css/css-writing-modes/support/pattern-rg-rr-100x100.png
new file mode 100644
index 0000000000..797e289e05
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pattern-rg-rr-100x100.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pattern-rr-gr-100x100.png b/testing/web-platform/tests/css/css-writing-modes/support/pattern-rr-gr-100x100.png
new file mode 100644
index 0000000000..97aac24065
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pattern-rr-gr-100x100.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/pattern-rr-rg-100x100.png b/testing/web-platform/tests/css/css-writing-modes/support/pattern-rr-rg-100x100.png
new file mode 100644
index 0000000000..177743874e
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/pattern-rr-rg-100x100.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/right-bottom-200x300.png b/testing/web-platform/tests/css/css-writing-modes/support/right-bottom-200x300.png
new file mode 100644
index 0000000000..38904b2508
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/right-bottom-200x300.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/right-bottom-green-200x300.png b/testing/web-platform/tests/css/css-writing-modes/support/right-bottom-green-200x300.png
new file mode 100644
index 0000000000..a3c6bb63b6
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/right-bottom-green-200x300.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/right-center-200x300.png b/testing/web-platform/tests/css/css-writing-modes/support/right-center-200x300.png
new file mode 100644
index 0000000000..b9987017a0
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/right-center-200x300.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/right-center-green-200x300.png b/testing/web-platform/tests/css/css-writing-modes/support/right-center-green-200x300.png
new file mode 100644
index 0000000000..8f54bf5a89
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/right-center-green-200x300.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/right-side-filled-square-40x160.png b/testing/web-platform/tests/css/css-writing-modes/support/right-side-filled-square-40x160.png
new file mode 100644
index 0000000000..f76b208311
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/right-side-filled-square-40x160.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/right-top-200x300.png b/testing/web-platform/tests/css/css-writing-modes/support/right-top-200x300.png
new file mode 100644
index 0000000000..59467ec3f1
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/right-top-200x300.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/right-top-green-200x300.png b/testing/web-platform/tests/css/css-writing-modes/support/right-top-green-200x300.png
new file mode 100644
index 0000000000..313c37f4df
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/right-top-green-200x300.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/swatch-aqua.png b/testing/web-platform/tests/css/css-writing-modes/support/swatch-aqua.png
new file mode 100644
index 0000000000..dd47e28665
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/swatch-aqua.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/swatch-blue.png b/testing/web-platform/tests/css/css-writing-modes/support/swatch-blue.png
new file mode 100644
index 0000000000..bf2759634d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/swatch-blue.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/swatch-fuchsia.png b/testing/web-platform/tests/css/css-writing-modes/support/swatch-fuchsia.png
new file mode 100644
index 0000000000..3f8f8b4ea3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/swatch-fuchsia.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/swatch-green.png b/testing/web-platform/tests/css/css-writing-modes/support/swatch-green.png
new file mode 100644
index 0000000000..0aa79b0c86
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/swatch-green.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/swatch-olive.png b/testing/web-platform/tests/css/css-writing-modes/support/swatch-olive.png
new file mode 100644
index 0000000000..8fff8179ef
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/swatch-olive.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/swatch-orange.png b/testing/web-platform/tests/css/css-writing-modes/support/swatch-orange.png
new file mode 100644
index 0000000000..d3cd498b52
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/swatch-orange.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/swatch-teal.png b/testing/web-platform/tests/css/css-writing-modes/support/swatch-teal.png
new file mode 100644
index 0000000000..0293ce89de
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/swatch-teal.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/swatch-yellow.png b/testing/web-platform/tests/css/css-writing-modes/support/swatch-yellow.png
new file mode 100644
index 0000000000..1591aa0e2e
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/swatch-yellow.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/tcu-font.otf b/testing/web-platform/tests/css/css-writing-modes/support/tcu-font.otf
new file mode 100644
index 0000000000..d6e6e7fc18
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/tcu-font.otf
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/tcy.css b/testing/web-platform/tests/css/css-writing-modes/support/tcy.css
new file mode 100644
index 0000000000..0117e215eb
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/tcy.css
@@ -0,0 +1,11 @@
+.tcy {
+ text-combine-upright: all;
+}
+.fake-tcy {
+ display: inline-block;
+ writing-mode: horizontal-tb;
+ width: 1em;
+ height: 1em;
+ text-align: center;
+ line-height: 1em;
+}
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/test-bl.png b/testing/web-platform/tests/css/css-writing-modes/support/test-bl.png
new file mode 100644
index 0000000000..904e24e996
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/test-bl.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/test-br.png b/testing/web-platform/tests/css/css-writing-modes/support/test-br.png
new file mode 100644
index 0000000000..f413ff5c1a
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/test-br.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/test-tl.png b/testing/web-platform/tests/css/css-writing-modes/support/test-tl.png
new file mode 100644
index 0000000000..f6ac0ef7e8
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/test-tl.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/test-tr.png b/testing/web-platform/tests/css/css-writing-modes/support/test-tr.png
new file mode 100644
index 0000000000..59843ae54b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/test-tr.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-010.png b/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-010.png
new file mode 100644
index 0000000000..d5d96d9cd1
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-010.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-012.png b/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-012.png
new file mode 100644
index 0000000000..7d5e9a4e24
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-012.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-mixed-vrl-002.png b/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-mixed-vrl-002.png
new file mode 100644
index 0000000000..88f06722fc
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-mixed-vrl-002.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-sideways-left-001.png b/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-sideways-left-001.png
new file mode 100644
index 0000000000..51921a7e91
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-sideways-left-001.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-sideways-lr.png b/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-sideways-lr.png
new file mode 100644
index 0000000000..2c1c8f7f4c
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-sideways-lr.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-sideways-right-001.png b/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-sideways-right-001.png
new file mode 100644
index 0000000000..f4bfd48549
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-sideways-right-001.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-upright-001.png b/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-upright-001.png
new file mode 100644
index 0000000000..d7df4098ed
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-upright-001.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-upright-vrl-002.png b/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-upright-vrl-002.png
new file mode 100644
index 0000000000..22eff43039
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/text-orientation-upright-vrl-002.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/text-orientation.js b/testing/web-platform/tests/css/css-writing-modes/support/text-orientation.js
new file mode 100644
index 0000000000..fb6eb7d60d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/text-orientation.js
@@ -0,0 +1,217 @@
+(function () {
+ var log = function () {};
+
+ function OrientationTester(container, orientation) {
+ this.container = container;
+ this.setOrientation(orientation);
+ }
+ extend(OrientationTester.prototype, {
+ setOrientation: function (orientation) {
+ this.orientation = orientation;
+ },
+ measure: function (results) {
+ this.results = results;
+ this._measureNode(this.container);
+ },
+ _measureNode: function (node, block) {
+ switch (node.nodeType) {
+ case Node.ELEMENT_NODE:
+ var blockOverride = node.dataset.block;
+ if (blockOverride)
+ block = blockOverride;
+ var nodes = node.childNodes;
+ for (var i = 0; i < nodes.length; i++)
+ this._measureNode(nodes[i], block);
+ return;
+ case Node.TEXT_NODE:
+ break;
+ default:
+ return;
+ }
+
+ if (this.orientation == "R") {
+ var advanceExpected = 8;
+ var advanceFailed = 4;
+ } else {
+ advanceExpected = 4;
+ advanceFailed = 8;
+ }
+
+ var range = document.createRange();
+ var text = node.textContent;
+ for (var ich = 0; ich < text.length; ich++) {
+ var code = text.charCodeAt(ich);
+ if (code == 10 || code == 13)
+ continue;
+ range.setStart(node, ich);
+ if (code >= 0xD800 && code <= 0xDBFF) {
+ var next = text.charCodeAt(ich+1);
+ if (next >= 0xDC00 && next <= 0xDFFF) {
+ ich++;
+ code = ((code & 0x3FF) << 10) + (next & 0x3FF) + 0x10000;
+ }
+ }
+ range.setEnd(node, ich + 1);
+ rect = range.getBoundingClientRect();
+ if (rect.width == 16) {
+ if (rect.height == advanceExpected) {
+ this.results.passCount++;
+ continue;
+ }
+ //log("U+" + stringFromUnicode(code) + " " + rect.width + "x" + rect.height);
+ if (rect.height == advanceFailed) {
+ this.results.failed(this, code, block);
+ continue;
+ }
+ }
+ this.results.inconclusive(this, code, block, rect);
+ }
+ }});
+
+ function Results(name) {
+ this.details = document.createElement("details");
+ this.summary = appendChildElement(this.details, "summary");
+ this.summary.textContent = name;
+ var typeList = appendChildElement(this.details, "ul");
+ this.failList = appendChildElement(appendChildElement(typeList, "li", "Failures"), "ol");
+ this.inconclusiveList = appendChildElement(appendChildElement(typeList, "li", "Inconclusives"), "ol");
+ this.passCount = 0;
+ this.failCount = 0;
+ this.inconclusiveCount = 0;
+ }
+ extend(Results.prototype, {
+ failed: function (test, code, block) {
+ this.failCount++;
+ this.append(this.failList, test, code, block);
+ },
+ inconclusive: function (test, code, block, rect) {
+ this.inconclusiveCount++;
+ this.append(this.inconclusiveList, test, code, block, " but inconclusive (rendered as " + rect.width + "x" + rect.height + ")");
+ },
+ append: function (list, test, code, block, message) {
+ var text = stringFromUnicode(code) + " should be " + test.orientation;
+ if (block)
+ text = block + ": " + text;
+ if (message)
+ text += message;
+ appendChildElement(list, "li", text);
+ },
+ done: function (test) {
+ this.summary.textContent += " (" + this.passCount + " passes, " +
+ this.failCount + " fails, " +
+ this.inconclusiveCount + " inconclusives)";
+ details.appendChild(this.details);
+ assert_equals(this.failCount, 0, "Fail count");
+ assert_greater_than(this.passCount, 0, "Pass count");
+ test.done();
+ }});
+
+ function Runner() {
+ var nodes = document.querySelectorAll("div[data-vo]");
+ this.testers = [];
+ for (var i = 0; i < nodes.length; i++) {
+ var node = nodes[i];
+ var vo = node.dataset.vo;
+ var tester = new OrientationTester(node, vo);
+ tester.test = async_test("Default orientation for vo=" + vo);
+ this.testers.push(tester);
+ }
+ this.testU = async_test("Orientation=Upright");
+ this.testR = async_test("Orientation=Rotated");
+ }
+ extend(Runner.prototype, {
+ run: function () {
+ log("Started");
+ var start = new Date;
+
+ for (var i = 0; i < this.testers.length; i++) {
+ var tester = this.testers[i];
+ var test = tester.test;
+ test.step(function () {
+ var results = new Results(test.name);
+ tester.measure(results);
+ results.done(test);
+ });
+ }
+ this.runOrientation(this.testU, "U");
+ this.runOrientation(this.testR, "R");
+
+ log("Elapsed " + (new Date() - start));
+ done();
+ },
+ runOrientation: function (test, orientation) {
+ container.classList.add(orientation);
+ var results = new Results(test.name);
+ var me = this;
+ test.step(function () {
+ for (var i = 0; i < me.testers.length; i++) {
+ var tester = me.testers[i];
+ tester.setOrientation(orientation);
+ tester.measure(results);
+ }
+ results.done(test);
+ })
+ container.classList.remove(orientation);
+ }});
+
+ setup({explicit_done:true, explicit_timeout:true});
+ var runner = new Runner();
+ window.onload = function () {
+ if (window.location.search == "?wait") {
+ log("Sleeping 5 secs for debug purpose");
+ return setTimeout(run, 5000);
+ }
+ run();
+ }
+
+ function run() {
+ onFontReady("16px orientation", function () { runner.run(); });
+ }
+
+ function onFontReady(font, func) {
+ log("Waiting test fonts to load");
+ if (document.fonts) {
+ if ('load' in document.fonts)
+ return document.fonts.load(font).then(func);
+ if ('ready' in document.fonts)
+ return document.fonts.ready.then(func);
+ }
+ document.offsetTop; // last resort to load @font-face
+ func();
+ }
+
+ function arrayFromRangesByValue(dict) {
+ var array = [];
+ for (var value in dict) {
+ var ranges = dict[value];
+ for (var i = 0; i < ranges.length; i += 2) {
+ var to = ranges[i+1];
+ for (var code = ranges[i]; code <= to; code++)
+ array[code] = value;
+ }
+ }
+ return array;
+ };
+
+ function stringFromUnicode(code) {
+ var hex = code.toString(16).toUpperCase();
+ if (hex.length < 4) {
+ hex = "0000" + hex;
+ hex = hex.substr(hex.length - 4);
+ }
+ return hex + ' "' + String.fromCharCode(code) + '"';
+ }
+
+ function appendChildElement(parent, tag, text) {
+ var node = document.createElement(tag);
+ if (text)
+ node.textContent = text;
+ parent.appendChild(node);
+ return node;
+ }
+
+ function extend(target, dict) {
+ for (var key in dict)
+ target[key] = dict[key];
+ }
+})();
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/width-test.css b/testing/web-platform/tests/css/css-writing-modes/support/width-test.css
new file mode 100644
index 0000000000..4f15976ccc
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/width-test.css
@@ -0,0 +1,7 @@
+@font-face {
+ font-family: WidthTest;
+ src: url(WidthTest-Regular.otf);
+}
+.test {
+ font: 72px/1 WidthTest;
+}
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/wm-propagation-body-003-exp-res.png b/testing/web-platform/tests/css/css-writing-modes/support/wm-propagation-body-003-exp-res.png
new file mode 100644
index 0000000000..b437e8fb8d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/wm-propagation-body-003-exp-res.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/wm-propagation-body-035-exp-res.png b/testing/web-platform/tests/css/css-writing-modes/support/wm-propagation-body-035-exp-res.png
new file mode 100644
index 0000000000..33f2820daf
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/wm-propagation-body-035-exp-res.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/world.png b/testing/web-platform/tests/css/css-writing-modes/support/world.png
new file mode 100644
index 0000000000..b56ada3ef1
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/world.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/yellow-square-59x59.png b/testing/web-platform/tests/css/css-writing-modes/support/yellow-square-59x59.png
new file mode 100644
index 0000000000..50816d38f6
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/yellow-square-59x59.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/yellow-square-horiz-redline-bottom-59x59.png b/testing/web-platform/tests/css/css-writing-modes/support/yellow-square-horiz-redline-bottom-59x59.png
new file mode 100644
index 0000000000..d6139238de
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/yellow-square-horiz-redline-bottom-59x59.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/yellow-square-vert-redline-center-59x59.png b/testing/web-platform/tests/css/css-writing-modes/support/yellow-square-vert-redline-center-59x59.png
new file mode 100644
index 0000000000..c352b10954
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/yellow-square-vert-redline-center-59x59.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/yellow-square-vert-redline-left-59x59.png b/testing/web-platform/tests/css/css-writing-modes/support/yellow-square-vert-redline-left-59x59.png
new file mode 100644
index 0000000000..8baf6f6040
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/yellow-square-vert-redline-left-59x59.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/yellow-square-vert-redline-right-59x59.png b/testing/web-platform/tests/css/css-writing-modes/support/yellow-square-vert-redline-right-59x59.png
new file mode 100644
index 0000000000..7e881312b3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/yellow-square-vert-redline-right-59x59.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/zh+arabic.png b/testing/web-platform/tests/css/css-writing-modes/support/zh+arabic.png
new file mode 100644
index 0000000000..019debeae6
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/zh+arabic.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/zh+latin.png b/testing/web-platform/tests/css/css-writing-modes/support/zh+latin.png
new file mode 100644
index 0000000000..8fa56d5b6c
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/zh+latin.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/zh-orientation.png b/testing/web-platform/tests/css/css-writing-modes/support/zh-orientation.png
new file mode 100644
index 0000000000..fa05cfe797
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/zh-orientation.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/zh_ar_wrap.png b/testing/web-platform/tests/css/css-writing-modes/support/zh_ar_wrap.png
new file mode 100644
index 0000000000..747e816e21
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/zh_ar_wrap.png
Binary files differ
diff --git a/testing/web-platform/tests/css/css-writing-modes/support/zh_en_wrap.png b/testing/web-platform/tests/css/css-writing-modes/support/zh_en_wrap.png
new file mode 100644
index 0000000000..a3d6591863
--- /dev/null
+++ b/testing/web-platform/tests/css/css-writing-modes/support/zh_en_wrap.png
Binary files differ