summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/css-text/white-space/reference
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/css/css-text/white-space/reference')
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/break-spaces-tab-003-ref.html14
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/break-spaces-tab-005-ref.html16
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/control-chars-000-ref.html6
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/control-chars-00D-ref.html26
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/eol-spaces-bidi-001-ref.html38
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/eol-spaces-bidi-002-ref.html48
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/eol-spaces-bidi-003-ref.html22
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/eol-spaces-bidi-alt-003-ref.html23
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/full-width-leading-spaces-001-ref.html6
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/line-edge-white-space-collapse-001-ref.html23
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/line-edge-white-space-collapse-002-ref.html24
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/pre-float-001-ref.html31
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-001-ref.html17
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-012-ref.html21
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-013-ref.html21
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-014-ref.html18
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-018-ref.html23
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-019-ref.html21
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-020-ref.html19
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-float-001-ref.html31
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/tab-bidi-001-ref.html42
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/tab-stop-threshold-001-ref.html16
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/tab-stop-threshold-002-ref.html16
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/text-space-collapse-discard-001-ref.xht26
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/text-space-collapse-preserve-breaks-001-ref.xht32
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/text-space-trim-trim-inner-001-ref.xht36
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/textarea-pre-wrap-001-ref.html34
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/textarea-pre-wrap-014-ref.html5
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-001-ref.html17
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-002-ref.html18
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-003-ref.html11
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-004-ref.html11
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-011-ref.html15
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-alt-003-ref.html22
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-alt-011-ref.html11
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-break-spaces-001-ref.html13
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-ogham-001-ref.html19
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-001-ref.html19
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-002-ref.html33
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-break-spaces-001-ref.html31
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-break-spaces-002-ref.html31
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-break-spaces-009-ref.html31
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-break-spaces-013-ref.html31
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-align-start-ref.html17
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-001-ref.html27
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-002-ref.html27
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-rtl-001-ref.html29
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-rtl-002-ref.html29
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-rtl-005-ref.html29
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-rtl-001-ref.html19
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-applies-to-text-001-ref.html139
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-break-spaces-005-ref.html15
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-001-ref.html17
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-002-ref.html20
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-003-ref.html17
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-004-ref.html18
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-letter-spacing-001-ref.html21
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-normal-011-ref.html31
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-nowrap-011-ref.html28
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-011-ref.html30
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-031-ref.html30
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-034-ref.html30
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-001-ref.html18
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-002-ref.html20
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-003-ref.html16
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-004-ref.html17
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-012-ref.html15
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-013-ref.html13
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-014-ref.html15
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-015-ref.html15
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-021-ref.html37
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-004-ref.html16
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-012-ref.html15
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-013-ref.html13
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-014-ref.html15
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-015-ref.html15
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-wrap-after-nowrap-001-ref.html28
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-zero-fontsize-001-ref.html16
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/white-space-zero-fontsize-002-ref.html17
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-001-ref.html29
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-003-ref.html29
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-006-ref.html35
-rw-r--r--testing/web-platform/tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-012-ref.html35
83 files changed, 1970 insertions, 0 deletions
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/break-spaces-tab-003-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/break-spaces-tab-003-ref.html
new file mode 100644
index 0000000000..52a8c491cc
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/break-spaces-tab-003-ref.html
@@ -0,0 +1,14 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test reference</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ font: 20px/1 Ahem;
+ color: green;
+}
+</style>
+
+<p>Test passes if there are two <strong>filled green squares</strong> and <strong>no red</strong>.</p>
+<div>X<br><br><br><br><br>X</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/break-spaces-tab-005-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/break-spaces-tab-005-ref.html
new file mode 100644
index 0000000000..798e35fd66
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/break-spaces-tab-005-ref.html
@@ -0,0 +1,16 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test reference</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ font: 20px/1 Ahem;
+ white-space: break-spaces;
+ color: green;
+ white-space: pre;
+}
+</style>
+
+<p>Test passes if there is a green rectangle and no red.
+<div>XX<br>XX<br>XX<br>XX<br>XX<br>XX<br>XX</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/control-chars-000-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/control-chars-000-ref.html
new file mode 100644
index 0000000000..9d5fcb2714
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/control-chars-000-ref.html
@@ -0,0 +1,6 @@
+<!doctype html>
+<meta charset=utf-8>
+<title>CSS test mismatch reference</title>
+<link rel=author title="Florian Rivoal" href="https://florian.rivoal.net">
+
+<p>Test passes if there is a visible character below.
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/control-chars-00D-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/control-chars-00D-ref.html
new file mode 100644
index 0000000000..ae214b7485
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/control-chars-00D-ref.html
@@ -0,0 +1,26 @@
+<!doctype html>
+<meta charset=utf-8>
+<title>Reference file</title>
+<link rel=author title="Florian Rivoal" href="https://florian.rivoal.net">
+<style>
+div {
+ font-size: 2em;
+ font-family: monospace;
+ color: blue;
+ width: 4ch;
+}
+#ref {
+ color: orange;
+}
+.p {white-space: pre;}
+.pw {white-space: pre-wrap;}
+.pl {white-space: pre-line;}
+.bs {white-space: break-spaces;}
+.nw {white-space: nowrap;}
+</style>
+
+<p>Test passes if blue charaters are arranged exactly in the same way as the orange ones.
+
+<div>A B C<span class=p> </span>D<span class=pw> </span>E<span class=pl> </span>F<span class=bs> </span>G<span class=nw> </span>H</div>
+
+<div id=ref>A B C<span class=p> </span>D<span class=pw> </span>E<span class=pl> </span>F<span class=bs> </span>G<span class=nw> </span>H</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/eol-spaces-bidi-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/eol-spaces-bidi-001-ref.html
new file mode 100644
index 0000000000..430706c556
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/eol-spaces-bidi-001-ref.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Text 3 test reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+
+<style>
+div {
+ font-family: monospace;
+ border: solid blue;
+ font-size: 1.5em;
+ white-space: pre;
+}
+.ref {
+ border-color: orange;
+}
+.w5 { width: 5ch; }
+.w6 { width: 6ch; }
+.w7 { width: 7ch; }
+
+.blue { background: #aaaaff; }
+.red { background: #ffaaaa; }
+.green { background: #aaffaa; }
+</style>
+
+<p>Test passes if each pair of blue / orange boxes are identical (except for the color of their border).
+
+<div class="w5">A<span class=blue> </span>B<span class=red> </span>ا<br>ب</div>
+<div class="w5 ref">A<span class=blue> </span>B<span class=red> </span>ا<br>ب</div>
+
+<hr>
+
+<div class="w6">A<span class=blue> </span>B<span class=red> </span>ا<br>ب</div>
+<div class="w6 ref">A<span class=blue> </span>B<span class=red> </span>ا<br>ب</div>
+
+<hr>
+
+<div class="w7">A<span class=blue> </span>B<span class=red> </span>ا<span class=green> </span>ب</div>
+<div class="w7 ref">A<span class=blue> </span>B<span class=red> </span>ا<span class=green> </span>ب</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/eol-spaces-bidi-002-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/eol-spaces-bidi-002-ref.html
new file mode 100644
index 0000000000..30a4ffd303
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/eol-spaces-bidi-002-ref.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Text 3 test reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+
+<style>
+div {
+ font-family: monospace;
+ border: solid blue;
+ font-size: 1.5em;
+ white-space: pre;
+}
+.ref {
+ border-color: orange;
+}
+.w6 { width: 6ch; }
+.w7 { width: 7ch; }
+.w8 { width: 8ch; }
+.w9 { width: 9ch; }
+
+.blue { background: #aaaaff; }
+.red { background: #ffaaaa; }
+.green { background: #aaffaa; }
+.pink { background: #ffaaff; }
+.yellow { background: #ffffaa; }
+</style>
+
+<p>Test passes if each pair of blue / orange boxes are identical (except for the color of their border).
+
+
+<div class="w6"><span class=pink> </span>A<span class=blue> </span>B<span class=red> </span>ا<br>ب<span class=yellow> </span></div>
+<div class="w6 ref"><span class=pink> </span>A<span class=blue> </span>B<span class=red> </span>ا<br>ب<span class=yellow> </span></div>
+
+<hr>
+
+<div class="w7"><span class=pink> </span>A<span class=blue> </span>B<span class=red> </span>ا<span class=green> </span><br>ب<span class=yellow> </span></div>
+<div class="w7 ref"><span class=pink> </span>A<span class=blue> </span>B<span class=red> </span>ا<span class=green> </span><br>ب<span class=yellow> </span></div>
+
+<hr>
+
+<div class="w8"><span class=pink> </span>A<span class=blue> </span>B<span class=red> </span>ا<span class=green> </span>ب</div>
+<div class="w8 ref"><span class=pink> </span>A<span class=blue> </span>B<span class=red> </span>ا<span class=green> </span>ب</div>
+
+<hr>
+
+<div class="w9"><span class=pink> </span>A<span class=blue> </span>B<span class=red> </span>ا<span class=green> </span>ب<span class=yellow> </span></div>
+<div class="w9 ref"><span class=pink> </span>A<span class=blue> </span>B<span class=red> </span>ا<span class=green> </span>ب<span class=yellow> </span></div>
+
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/eol-spaces-bidi-003-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/eol-spaces-bidi-003-ref.html
new file mode 100644
index 0000000000..57e23bdc10
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/eol-spaces-bidi-003-ref.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Text 3 test reference</title>
+<link rel="author" title="Jose Dapena Paz" href="mailto:jdapena@igalia.com">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+
+<style>
+ div {
+ direction: rtl;
+
+ font: 20px/1 Ahem;
+ margin-left: 20px;
+ background: green;
+
+ width: 4ch;
+ }
+ .blue { color: blue; }
+ .space { color: transparent; }
+ .text { background: blue; }
+</style>
+<p>Test passes if a blue box (the white space) is visible at the left start in first line.</p>
+<div>ب<span class="blue">X</span><span class="text">OP</span><span class="space">X<br>XXX</span>D</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/eol-spaces-bidi-alt-003-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/eol-spaces-bidi-alt-003-ref.html
new file mode 100644
index 0000000000..6861ec61de
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/eol-spaces-bidi-alt-003-ref.html
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Text 3 test reference</title>
+<link rel="author" title="Jose Dapena Paz" href="mailto:jdapena@igalia.com">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+
+<style>
+ div {
+ direction: rtl;
+
+ font: 20px/1 Ahem;
+ margin-left: 20px;
+ background: green;
+
+ width: 4ch;
+ overflow: hidden;
+ }
+ .blue { color: blue; }
+ .space { color: transparent; }
+ .text { background: blue; }
+</style>
+<p>Test passes if a blue box (the white space) is visible at the left start in first line.</p>
+<div>ب<span class="blue">X</span><span class="text">OP</span><span class="space">X<br>XXX</span>D</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/full-width-leading-spaces-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/full-width-leading-spaces-001-ref.html
new file mode 100644
index 0000000000..2b9cf1c3b2
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/full-width-leading-spaces-001-ref.html
@@ -0,0 +1,6 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS test reference</title>
+<link rel="author" title="Javier Fernandez Garcia-Boente" href="mailto:jfernandez@igalia.com">
+<p>Test passes if the characters below are arranged in a green rectangle and if there is no red.
+<div style="width: 100px; height: 20px; background: green"></div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/line-edge-white-space-collapse-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/line-edge-white-space-collapse-001-ref.html
new file mode 100644
index 0000000000..02fa594255
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/line-edge-white-space-collapse-001-ref.html
@@ -0,0 +1,23 @@
+<!doctype html>
+<html>
+<meta charset=utf-8>
+<link rel="author" title="Mike Bremford" href="mailto:mike@bfo.com">
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net">
+<title>CSS test reference</title>
+<style>
+div { font: 30px/30px monospace; }
+span { border-left: 30px solid green }
+</style>
+
+<p>Test passes if there is a single green rectangle next to ABCDEFGHIJ, and no red.
+
+<div>A<span></span></div>
+<div>B<span></span></div>
+<div>C<span></span></div>
+<div>D<span></span></div>
+<div>E<span></span></div>
+<div>F<span></span></div>
+<div>G<span></span></div>
+<div>H<span></span></div>
+<div>I<span></span></div>
+<div>J<span></span></div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/line-edge-white-space-collapse-002-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/line-edge-white-space-collapse-002-ref.html
new file mode 100644
index 0000000000..ea1faa2ed1
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/line-edge-white-space-collapse-002-ref.html
@@ -0,0 +1,24 @@
+<!doctype html>
+<html>
+<meta charset=utf-8>
+<link rel="author" title="Mike Bremford" href="mailto:mike@bfo.com">
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net">
+<title>CSS test reference</title>
+<style>
+div { font: 30px/30px monospace; }
+span { border-left: 30px solid green }
+</style>
+
+<p>Test passes if there is a single green rectangle, and no red. The letters KLMNOPQRST must be immediately to its right, vertically aligned with each other.
+
+<div><span>K</span></div>
+<div><span>L</span></div>
+<div><span>M</span></div>
+<div><span>N</span></div>
+<div><span>O</span></div>
+<div><span>P</span></div>
+<div><span>Q</span></div>
+<div><span>R</span></div>
+<div><span>S</span></div>
+<div><span>T</span></div>
+
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/pre-float-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/pre-float-001-ref.html
new file mode 100644
index 0000000000..9753cb37b6
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/pre-float-001-ref.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+html {
+ font-family: Ahem;
+ font-size: 20px;
+ line-height: 1;
+}
+.container {
+ white-space: pre;
+ margin-bottom: 1em;
+}
+.float {
+ float: left;
+ width: 3ch;
+ height: 2em;
+ background: orange;
+}
+</style>
+<body>
+ <div class="float"></div>
+ <div class="container">123456<br>123456</div>
+ <div class="float"></div>
+ <div class="container">1234567<br>1234567</div>
+ <div class="float"></div>
+ <div class="container">1234567<br>1234567</div>
+ <div class="float"></div>
+ <div class="container">1234567<br>1234567</div>
+ <div class="float"></div>
+ <div class="container">12345678<br>12345678</div>
+</body>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-001-ref.html
new file mode 100644
index 0000000000..c60a342a03
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-001-ref.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Text level 3 Test reference file</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ font-size: 20px;
+ font-family: Ahem;
+ line-height: 1em;
+ color: green;
+}
+</style>
+<body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div>XX<br>XX</div>
+</body>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-012-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-012-ref.html
new file mode 100644
index 0000000000..a0aee138b9
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-012-ref.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Text level 3 Test reference</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ font-size: 20px;
+ font-family: Ahem;
+ line-height: 1em;
+ color: green;
+
+ width: 2ch;
+ margin-left: 1ch;
+}
+</style>
+<body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div>XX
+XX</div>
+</body>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-013-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-013-ref.html
new file mode 100644
index 0000000000..b91fc8b6c1
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-013-ref.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Text level 3 Test reference</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ font-size: 20px;
+ font-family: Ahem;
+ line-height: 1em;
+ color: green;
+
+ width: 2ch;
+ margin-left: 0.5ch;
+}
+</style>
+<body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div>XX
+XX</div>
+</body>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-014-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-014-ref.html
new file mode 100644
index 0000000000..87d51f6067
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-014-ref.html
@@ -0,0 +1,18 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Text level 3 Test reference</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ font-size: 20px;
+ font-family: Ahem;
+ line-height: 1em;
+ color: green;
+
+}
+</style>
+<body>
+ <p>Test passes if there is a <strong>filled green rectangle</strong> and <strong>no red</strong>.</p>
+ <div>XXXX</div>
+</body>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-018-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-018-ref.html
new file mode 100644
index 0000000000..a87649432f
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-018-ref.html
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test reference</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<style>
+div {
+ font-size: 2rem;
+ margin: 1rem;
+ white-space: pre;
+ width: 5ch;
+ border: solid 1px;
+ font-family: monospace;
+}
+span {
+ text-decoration: underline;
+}
+
+</style>
+
+<p>Test passes if the two boxes below are identical.
+
+<div> <span> 0 </span></div>
+<div> <span> 0 </span></div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-019-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-019-ref.html
new file mode 100644
index 0000000000..e3be478a35
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-019-ref.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test reference</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ font-size: 2rem;
+ font-family: Ahem;
+ width: 3ch;
+ white-space: pre;
+ color: green;
+}
+
+</style>
+
+<p>Test passes if there are green squares below and no red.
+
+<div class=ref> 0 <br>0 0 <br>0 </div>
+
+<div class=ref> 0<br>0 0 <br> 0</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-020-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-020-ref.html
new file mode 100644
index 0000000000..2ef5e7f408
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-020-ref.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>test reference</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ font-size: 2rem;
+ font-family: Ahem;
+ width: 3ch;
+ white-space: pre;
+ color: green;
+}
+
+</style>
+
+<p>Test passes if there are green rectangles below and no red.
+
+<div>0 0<br>0 0</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-float-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-float-001-ref.html
new file mode 100644
index 0000000000..e72b3c94ea
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-float-001-ref.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+html {
+ font-family: Ahem;
+ font-size: 20px;
+ line-height: 1;
+}
+.container {
+ white-space: pre;
+ margin-bottom: 1em;
+}
+.float {
+ float: left;
+ width: 3ch;
+ height: 2em;
+ background: orange;
+}
+</style>
+<body>
+ <div class="float"></div>
+ <div class="container">123456<br>123456</div>
+ <div class="float"></div>
+ <div class="container">1234567<br>1234567</div>
+ <div class="float"></div>
+ <div class="container">1234567<br>1234567</div>
+ <div class="float"></div>
+ <div class="container">1234567<br>1234567</div>
+ <div class="float"></div>
+ <div class="container"><br><br>12345678<br>12345678</div>
+</body>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/tab-bidi-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/tab-bidi-001-ref.html
new file mode 100644
index 0000000000..9f081f9103
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/tab-bidi-001-ref.html
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Text Reference: Tabs vs. Bidi</title>
+<link rel="author" title="Elika J. Etemad" href="http://fantasai.inkedblade.net/contact">
+<style>
+body > div {
+ border: solid blue;
+ margin: 1em;
+}
+div > div {
+ white-space: pre;
+ font: 20px/1 monospace;
+ text-align: left;
+}
+div > span { /* measure bounds */
+ border: orange;
+ border-style: none solid;
+}
+</style>
+
+<p>Test passes if all three rows of each box are identical.
+
+<div>
+ <div style="unicode-bidi: bidi-override; direction: ltr"><span>A B C D </span></div>
+ <div style="unicode-bidi: bidi-override; direction: ltr"><span>A B C D </span></div>
+ <div style="unicode-bidi: bidi-override; direction: ltr"><span>A B C D </span></div>
+</div>
+<div>
+ <div style="unicode-bidi: bidi-override; direction: ltr"><span>א בּ ג ד </span></div>
+ <div style="unicode-bidi: bidi-override; direction: ltr"><span>א בּ ג ד </span></div>
+ <div style="unicode-bidi: bidi-override; direction: ltr"><span>א בּ ג ד </span></div>
+</div>
+<div>
+ <div style="unicode-bidi: bidi-override; direction: rtl"><span>A B C D </span></div>
+ <div style="unicode-bidi: bidi-override; direction: rtl"><span>A B C D </span></div>
+ <div style="unicode-bidi: bidi-override; direction: rtl"><span>A B C D </span></div>
+</div>
+<div>
+ <div style="unicode-bidi: bidi-override; direction: rtl"><span>א בּ ג ד </span></div>
+ <div style="unicode-bidi: bidi-override; direction: rtl"><span>א בּ ג ד </span></div>
+ <div style="unicode-bidi: bidi-override; direction: rtl"><span>א בּ ג ד </span></div>
+</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/tab-stop-threshold-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/tab-stop-threshold-001-ref.html
new file mode 100644
index 0000000000..5694dd2f52
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/tab-stop-threshold-001-ref.html
@@ -0,0 +1,16 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Test reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+<style>
+div {
+ white-space: pre;
+ font-family: monospace;
+}
+</style>
+
+<p>Test passes if the 4 letters bellow are vertically aligned.
+<div> P</div>
+<div> A</div>
+<div> S</div>
+<div> S</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/tab-stop-threshold-002-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/tab-stop-threshold-002-ref.html
new file mode 100644
index 0000000000..35c568bbca
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/tab-stop-threshold-002-ref.html
@@ -0,0 +1,16 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS test reference</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<style>
+div {
+ white-space: pre;
+ font-family: monospace;
+ tab-size: 8; /* the initial value, but since we're measuring against it, we might as well be sure */
+}
+</style>
+<p>Test passes if the 4 letters bellow are vertically aligned.
+<div> P</div>
+<div> A</div>
+<div> S</div>
+<div> S</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/text-space-collapse-discard-001-ref.xht b/testing/web-platform/tests/css/css-text/white-space/reference/text-space-collapse-discard-001-ref.xht
new file mode 100644
index 0000000000..b07483773f
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/text-space-collapse-discard-001-ref.xht
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: text-space-collapse - discard - basic cases Reftest Reference</title>
+ <link rel="author" title="Satoshi Umehara" href="mailto:umehara@est.co.jp" />
+ <style type="text/css">
+ <![CDATA[
+ span {
+ color: Blue;
+ }
+ ]]>
+ </style>
+ </head>
+ <body>
+ <p>
+ Test passes if the first sentence matches the second one.
+ </p>
+ <div>
+ <span>AllWhiteSpaceInTheElementShouldBeDiscarded.</span>
+ </div>
+ <div>
+ <span>AllWhiteSpaceInTheElementShouldBeDiscarded.</span>
+ </div>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/text-space-collapse-preserve-breaks-001-ref.xht b/testing/web-platform/tests/css/css-text/white-space/reference/text-space-collapse-preserve-breaks-001-ref.xht
new file mode 100644
index 0000000000..3fa9f07ed1
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/text-space-collapse-preserve-breaks-001-ref.xht
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: text-space-collapse - preserve-breaks - basic cases Reftest Reference</title>
+ <link rel="author" title="Satoshi Umehara" href="mailto:umehara@est.co.jp" />
+ <style type="text/css">
+ <![CDATA[
+ span {
+ color: Blue;
+ }
+ ]]>
+ </style>
+ </head>
+ <body>
+ <p>
+ Test passes if the first two sentences matches the second one.
+ </p>
+ <p>
+ <span>
+ Sequences of white space should collapse into a single character.<br />
+ But segment breaks as forced line breaks are preserved.
+ </span>
+ </p>
+ <p>
+ <span>
+ Sequences of white space should collapse into a single character.<br />
+ But segment breaks as forced line breaks are preserved.
+ </span>
+ </p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/text-space-trim-trim-inner-001-ref.xht b/testing/web-platform/tests/css/css-text/white-space/reference/text-space-trim-trim-inner-001-ref.xht
new file mode 100644
index 0000000000..19e42688a2
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/text-space-trim-trim-inner-001-ref.xht
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: text-space-trim - trim-inner - basic cases Reftest Reference</title>
+ <link rel="author" title="Satoshi Umehara" href="mailto:umehara@est.co.jp" />
+ <style type="text/css">
+ <![CDATA[
+ span {
+ color: Blue;
+ }
+ ]]>
+ </style>
+ </head>
+ <body>
+ <p>
+ Test passes if each text positions in the first line match the corresponding positions in the second line.
+ </p>
+ <div>
+ [<span>1 2</span>]
+ [<span>  3  4  </span>]
+ [<span>5 6</span>]
+ [<span>7
+
+8</span>]
+ </div>
+ <div>
+ [<span>1 2</span>]
+ [<span>  3  4  </span>]
+ [<span>5 6</span>]
+ [<span>7
+
+8</span>]
+ </div>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/textarea-pre-wrap-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/textarea-pre-wrap-001-ref.html
new file mode 100644
index 0000000000..31070ea928
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/textarea-pre-wrap-001-ref.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Text level 3 Test reference file</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<!-- pre-wrap-001-ref.html could probably be used instead,
+but since textarea is a form control that's not fully specified,
+using a separate reference just in case something is indeed different
+is safer. -->
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+textarea {
+ word-wrap: initial; /*deprecated alias*/
+ overflow-wrap: initial;
+ line-break: initial;
+ word-break: initial;
+ margin: 0;
+ padding: 0;
+ border: none;
+ outline: none;
+ resize: none;
+ overflow: hidden; /* I don't want scrollbars, and overflow:visible isn't typically supported on textarea */
+
+ font-size: 20px;
+ font-family: Ahem;
+ line-height: 1em;
+ color: green;
+ white-space: pre;
+}
+</style>
+<body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <textarea>XX
+XX</textarea>
+</body>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/textarea-pre-wrap-014-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/textarea-pre-wrap-014-ref.html
new file mode 100644
index 0000000000..99a38bf88b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/textarea-pre-wrap-014-ref.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test reference</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<p>Test passes if there is <strong>no red</strong> below.</p>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-001-ref.html
new file mode 100644
index 0000000000..aa97e2bc83
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-001-ref.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS test reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+<style>
+div {
+ line-height: 1;
+ color: transparent;
+ background: green;
+ float: left;
+ clear: left;
+}
+</style>
+
+<p>Test passes if the shape below is green and if there is no red.
+
+<div>あああ</div><div>ああ</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-002-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-002-ref.html
new file mode 100644
index 0000000000..7563151d4d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-002-ref.html
@@ -0,0 +1,18 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS test reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+<style>
+div {
+ line-height: 1;
+ color: transparent;
+ background: green;
+ float: left;
+ clear: left;
+}
+</style>
+
+<p>Test passes if the shape below is green and if there is no red.
+
+<div>ああああ あ あ</div>
+<div>ああ</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-003-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-003-ref.html
new file mode 100644
index 0000000000..7c59b1f6f2
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-003-ref.html
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS test reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+<style>
+div { white-space: pre; }
+span { background: blue; }
+</style>
+
+<p>Test passes if the characters below are arranged in a square and if there is a blue rectangle at the end of the first line.
+<div>ああ<span>&#x3000;</span><br>ああ</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-004-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-004-ref.html
new file mode 100644
index 0000000000..a72e050031
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-004-ref.html
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS test reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+<style>
+div { white-space: pre; }
+span { background: blue; }
+</style>
+
+<p>Test passes if the characters below are arranged in a square and if there is a blue rectangle at the end of the first line.
+<div>ああ<span>&#x3000;&#x3000; &#x3000; &#x3000;</span><br>ああ</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-011-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-011-ref.html
new file mode 100644
index 0000000000..a2efec2490
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-011-ref.html
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS test reference</title>
+<link rel="author" title="Javier Fernandez Garcia-Boente" href="mailto:jfernandez@igalia.com">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+<style>
+div {
+ font: 20px/1 Ahem;
+ white-space: pre;
+}
+span { background: blue; }
+</style>
+
+<p>Test passes if the characters below are arranged in a single line and if there is a blue square at the end of the first line.
+<div>X X<span> </span></div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-alt-003-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-alt-003-ref.html
new file mode 100644
index 0000000000..9f579f29e0
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-alt-003-ref.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS test reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+<style>
+div { white-space: pre; }
+span {
+ background: blue;
+
+ /* to make the span go under the right border */
+ z-index:-1;
+ position: relative;
+}
+aside {
+ display: inline-block;
+ width: 0.5em;
+ border-right: 1em white solid;
+}
+</style>
+
+<p>Test passes if the characters below are arranged in a square and if there is a blue rectangle at the end of the first line.
+<div>ああ<aside><span>&#x3000;</span></aside><br>ああ</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-alt-011-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-alt-011-ref.html
new file mode 100644
index 0000000000..03023f5359
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-alt-011-ref.html
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS test reference</title>
+<link rel="author" title="Javier Fernandez Garcia-Boente" href="mailto:jfernandez@igalia.com">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+<style>
+div { font: 20px/1 Ahem; }
+</style>
+
+<p>Test passes if the characters below are arranged in a square and if there is a blue rectangle at the end of the first line.
+<div>X X<span>X</span></div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-break-spaces-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-break-spaces-001-ref.html
new file mode 100644
index 0000000000..293f752174
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ideographic-space-break-spaces-001-ref.html
@@ -0,0 +1,13 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS test reference</title>
+<link rel="author" title="Javier Fernandez Garcia-Boente" href="mailto:jfernandez@igalia.com"/>
+<style>
+ div {
+ white-space: pre;
+ line-height: 1;
+ }
+</style>
+
+<p>Test passes if the characters below are arranged in pairs with a empty line in between.</p>
+<div>ああ<br><br>ああ</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ogham-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ogham-001-ref.html
new file mode 100644
index 0000000000..1b6fddd30e
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-ogham-001-ref.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Text level 3 Test Reference</title>
+<link rel="author" title="Florian Rivoal" href="http://florian.rivoal.net/">
+<style>
+div {
+ border: solid;
+ width: min-content;
+}
+.soft-wrap { border-color: blue; }
+.hard-break { border-color: orange; }
+
+</style>
+
+<p>Test passes if the content of the blue and orange boxes is identical to that of the black box.
+
+<div class=soft-wrap>᚛ᚑᚌᚐᚋ᚜<br>᚛ᚑᚌᚐᚋ᚜</div>
+<div class=hard-break>᚛ᚑᚌᚐᚋ᚜<br>᚛ᚑᚌᚐᚋ᚜</div>
+<div class=ref>᚛ᚑᚌᚐᚋ᚜<br>᚛ᚑᚌᚐᚋ᚜</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-001-ref.html
new file mode 100644
index 0000000000..e406b86a3a
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-001-ref.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS test reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+<style>
+div {
+ line-height: 1;
+ color: transparent;
+ background: green;
+ float: left;
+ clear: left;
+ white-space: pre;
+}
+</style>
+
+<p>Test passes if the shape below is green and if there is no red.
+
+<div>xx&#x1680;&#x2000; &#x2001;&#x2002;&#x2003; &#x2004;&#x2005;&#x2006; &#x2007;&#x2008;&#x2009;&#x200A; &#x202F;&#x205F; &#x3000;</div>
+<div>xx</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-002-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-002-ref.html
new file mode 100644
index 0000000000..3939dabe5d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-002-ref.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ white-space: pre-wrap;
+ font-family: Ahem;
+ font-size: 10px;
+ line-height: 1;
+ color: green;
+}
+</style>
+
+<p>Test passes if there are two green tall boxes below and no red.
+
+<div>x x<br>x x</div>
+<div>x x<br>x x</div>
+<div>x x<br>x x</div>
+<div>x x<br>x x</div>
+<div>x x<br>x x</div>
+<div>x x<br>x x</div>
+<div>x x<br>x x</div>
+<div>x x<br>x x</div>
+<div>x x<br>x x</div>
+<div>x x<br>x x</div>
+<div>x x<br>x x</div>
+<div>x x<br>x x</div>
+<div>x x<br>x x</div>
+<div>x x<br>x x</div>
+<div>x x<br>x x</div>
+<div>x x<br>x x</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-break-spaces-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-break-spaces-001-ref.html
new file mode 100644
index 0000000000..1be4e240bc
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-break-spaces-001-ref.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ white-space: pre;
+ font-size: 10px;
+ line-height: 1;
+ width: 2em;
+}
+section {
+ font-family: Ahem;
+ float: left;
+ margin: 0 1em;
+ color: blue;
+}
+.ref {
+ color: orange;
+}
+</style>
+
+<p>Test passes if the orange and blue parts of this page are identical.
+
+<section class=ref>
+ <div>xx&#x1680;<br>あ<br>あ&#x1680;<br>あ<br>あ&#x1680;<br>xx</div><!-- BA, tailorable -->
+</section>
+<section>
+ <div>xx&#x1680;<br>あ<br>あ&#x1680;<br>あ<br>あ&#x1680;<br>xx</div><!-- BA, tailorable -->
+</section>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-break-spaces-002-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-break-spaces-002-ref.html
new file mode 100644
index 0000000000..98115699a2
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-break-spaces-002-ref.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ white-space: pre;
+ font-size: 10px;
+ line-height: 1;
+ width: 2em;
+}
+section {
+ font-family: Ahem;
+ float: left;
+ margin: 0 1em;
+ color: blue;
+}
+.ref {
+ color: orange;
+}
+</style>
+
+<p>Test passes if the orange and blue parts of this page are identical.
+
+<section class=ref>
+ <div>xx<br>あ<br>あ<br>あ<br>あ<br>xx</div>
+</section>
+<section>
+ <div>xx<br>あ<br>あ<br>あ<br>あ<br>xx</div>
+</section>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-break-spaces-009-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-break-spaces-009-ref.html
new file mode 100644
index 0000000000..d62e758e2f
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-break-spaces-009-ref.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ white-space: pre;
+ font-size: 10px;
+ line-height: 1;
+ width: 2em;
+}
+section {
+ font-family: Ahem;
+ float: left;
+ margin: 0 1em;
+ color: blue;
+}
+.ref {
+ color: orange;
+}
+</style>
+
+<p>Test passes if the orange and blue parts of this page are identical.
+
+<section class=ref>
+ <div>xx&#x2007;あ<br>あ&#x2007;あ<br>あ&#x2007;xx</div><!--GL, non tailorable after, tailorable before-->
+</section>
+<section>
+ <div>xx&#x2007;あ<br>あ&#x2007;あ<br>あ&#x2007;xx</div><!--GL, non tailorable after, tailorable before-->
+</section>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-break-spaces-013-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-break-spaces-013-ref.html
new file mode 100644
index 0000000000..07a78787cb
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-other-space-separators-break-spaces-013-ref.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ white-space: pre;
+ font-size: 10px;
+ line-height: 1;
+ width: 2em;
+}
+section {
+ font-family: Ahem;
+ float: left;
+ margin: 0 1em;
+ color: blue;
+}
+.ref {
+ color: orange;
+}
+</style>
+
+<p>Test passes if the orange and blue parts of this page are identical.
+
+<section class=ref>
+ <div>xx&#x202F;あ<br>あ&#x202F;あ<br>あ&#x202F;xx</div>
+</section>
+<section>
+ <div>xx&#x202F;あ<br>あ&#x202F;あ<br>あ&#x202F;xx</div>
+</section>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-align-start-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-align-start-ref.html
new file mode 100644
index 0000000000..b65a8fe754
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-align-start-ref.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<style>
+div {
+ font-family: monospace;
+ font-size: 30px;
+ width: 3ch;
+ overflow: auto;
+ white-space: pre;
+}
+</style>
+<body>
+ <div>0 00</div>
+ <div>0 0</div>
+ <div>0 0</div>
+ <div>0 0</div>
+ <div>0 0<br>0 0</div>
+</body>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-001-ref.html
new file mode 100644
index 0000000000..3dbb85a711
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-001-ref.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Text Reference File</title>
+<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com" />
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+ div {
+ display: inline-block;
+ width: 3ch;
+ height: 100px;
+ font: 40px/1 Ahem;
+ border: 1px solid black;
+ box-sizing: content-box;
+ overflow-y: hidden;
+ overflow-x: auto;
+ }
+.left { text-align: left; }
+.center { text-align: center; }
+.right { text-align: right; }
+.start { text-align: start; }
+.end { text-align: end; }
+</style>
+<div class="left">XXX&#10;X</div>
+<div class="center">XXX&#10;X</div>
+<div class="right">XXX&#10;X</div>
+<div class="start">XXX&#10;X</div>
+<div class="end">XXX&#10;X</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-002-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-002-ref.html
new file mode 100644
index 0000000000..a0811e61a1
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-002-ref.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Text Reference File</title>
+<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com" />
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+ div {
+ display: inline-block;
+ width: 3ch;
+ height: 100px;
+ font: 40px/1 Ahem;
+ border: 1px solid black;
+ box-sizing: content-box;
+ overflow-y: hidden;
+ overflow-x: auto;
+ }
+.left { text-align: left; }
+.center { text-align: center; }
+.right { text-align: right; }
+.start { text-align: start; }
+.end { text-align: end; }
+</style>
+<div class="left">XXXX&#10;X</div>
+<div class="center">XXXX&#10;X</div>
+<div class="right">XXXX&#10;X</div>
+<div class="start">XXXX&#10;X</div>
+<div class="end">XXXX&#10;X</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-rtl-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-rtl-001-ref.html
new file mode 100644
index 0000000000..3de3f475b0
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-rtl-001-ref.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Text Reference File</title>
+<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com" />
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+ div {
+ display: inline-block;
+ width: 3ch;
+ height: 100px;
+ font: 40px/1 Ahem;
+ border: 1px solid black;
+ box-sizing: content-box;
+ overflow-y: hidden;
+ overflow-x: auto;
+
+ direction: rtl;
+ }
+.left { text-align: left; }
+.center { text-align: center; }
+.right { text-align: right; }
+.start { text-align: start; }
+.end { text-align: end; }
+</style>
+<div class="left">XXX&#10;X</div>
+<div class="center">XXX&#10;X</div>
+<div class="right">XXX&#10;X</div>
+<div class="start">XXX&#10;X</div>
+<div class="end">XXX&#10;X</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-rtl-002-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-rtl-002-ref.html
new file mode 100644
index 0000000000..8b29f31dbf
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-rtl-002-ref.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Text Reference File</title>
+<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com" />
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+ div {
+ display: inline-block;
+ width: 3ch;
+ height: 100px;
+ font: 40px/1 Ahem;
+ border: 1px solid black;
+ box-sizing: content-box;
+ overflow-y: hidden;
+ overflow-x: auto;
+
+ direction: rtl;
+ }
+.left { text-align: left; }
+.center { text-align: center; }
+.right { text-align: right; }
+.start { text-align: start; }
+.end { text-align: end; }
+</style>
+<div class="left">XXXX&#10;X</div>
+<div class="center">XXXX&#10;X</div>
+<div class="right">XXXX&#10;X</div>
+<div class="start">XXXX&#10;X</div>
+<div class="end">XXXX&#10;X</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-rtl-005-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-rtl-005-ref.html
new file mode 100644
index 0000000000..e93ee65281
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-and-text-alignment-rtl-005-ref.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Text Reference File</title>
+<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com" />
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+ div {
+ display: inline-block;
+ width: 3ch;
+ height: 100px;
+ font: 40px/1 Ahem;
+ border: 1px solid black;
+ box-sizing: content-box;
+ overflow-y: hidden;
+ overflow-x: auto;
+
+ direction: rtl;
+ }
+.left { text-align: left; }
+.center { text-align: center; }
+.right { text-align: right; }
+.start { text-align: start; }
+.end { text-align: end; }
+</style>
+<div class="left">&nbsp;XXX&#10;X</div>
+<div class="center">&nbsp;XXX&#10;X</div>
+<div class="right">&nbsp;XXX&#10;X</div>
+<div class="start">&nbsp;XXX&#10;X</div>
+<div class="end">&nbsp;XXX&#10;X</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-rtl-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-rtl-001-ref.html
new file mode 100644
index 0000000000..f3f2523591
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/trailing-space-rtl-001-ref.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<style>
+body {
+ direction: rtl;
+ white-space: pre-wrap;
+}
+.bg {
+ background: orange;
+}
+.override {
+ unicode-bidi: bidi-override;
+}
+</style>
+<body>
+<div>אבג <span class="bg">אבגד</span> אבגדה</div>
+<div>אבג <span class="bg">אבגד</span> אבגדה</div>
+<div class="override">123 <span class="bg override">12345</span> 1234567</div>
+<div class="override">123 <span class="bg override">12345</span> 1234567</div>
+</body>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-applies-to-text-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-applies-to-text-001-ref.html
new file mode 100644
index 0000000000..d9d8336365
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-applies-to-text-001-ref.html
@@ -0,0 +1,139 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ section
+ {
+ border: black solid 2px;
+ float: left;
+ font-family: monospace;
+ font-size: 14px;
+ line-height: 1; /* computes to 14px */
+ margin-bottom: 10px;
+ width: 16ch;
+ }
+
+ section.odds
+ {
+ clear: both;
+ }
+
+ section.even
+ {
+ margin-left: 10em;
+ }
+
+ div.first-subtest
+ {
+ white-space: normal;
+ }
+
+ div.second-subtest
+ {
+ white-space: nowrap;
+ }
+
+ div.third-subtest
+ {
+ white-space: pre;
+ }
+
+ div.fourth-subtest
+ {
+ white-space: pre-wrap;
+ }
+
+ div.fifth-subtest
+ {
+ white-space: break-spaces;
+ }
+
+ div.sixth-subtest
+ {
+ white-space: pre-line;
+ }
+
+ hr
+ {
+ clear: both;
+ margin: 4em auto 1.5em 0em;
+ width: 480px;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black bordered rectangles on the lefthand side are laid out identically to their counterparts on the righthand side.
+
+ <section class="odds">
+ <div class="first-subtest">Lorem ipsum. Dolor&NewLine;
+ sit.</div>
+ </section>
+
+ <section class="even">
+ <div class="first-subtest">Lorem ipsum. Dolor&NewLine;
+ sit.</div>
+ </section>
+
+ <hr>
+
+ <section class="odds">
+ <div class="second-subtest">Lorem ipsum. Dolor&NewLine;
+ sit.</div>
+ </section>
+
+ <section class="even">
+ <div class="second-subtest">Lorem ipsum. Dolor&NewLine;
+ sit.</div>
+ </section>
+
+ <hr>
+
+ <section class="odds">
+ <div class="third-subtest">Lorem ipsum. Dolor&NewLine;
+ sit.</div>
+ </section>
+
+ <section class="even">
+ <div class="third-subtest">Lorem ipsum. Dolor&NewLine;
+ sit.</div>
+ </section>
+
+ <hr>
+
+ <section class="odds">
+ <div class="fourth-subtest">Lorem ipsum. Dolor&NewLine;
+ sit.</div>
+ </section>
+
+ <section class="even">
+ <div class="fourth-subtest">Lorem ipsum. Dolor&NewLine;
+ sit.</div>
+ </section>
+
+ <hr>
+
+ <section class="odds">
+ <div class="fifth-subtest">Lorem ipsum. Dolor&NewLine;
+ sit.</div>
+ </section>
+
+ <section class="even">
+ <div class="fifth-subtest">Lorem ipsum. Dolor&NewLine;
+ sit.</div>
+ </section>
+
+ <hr>
+
+ <section class="odds">
+ <div class="sixth-subtest">Lorem ipsum. Dolor&NewLine;
+ sit.</div>
+ </section>
+
+ <section class="even">
+ <div class="sixth-subtest">Lorem ipsum. Dolor&NewLine;
+ sit.</div>
+ </section>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-break-spaces-005-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-break-spaces-005-ref.html
new file mode 100644
index 0000000000..dece5f7394
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-break-spaces-005-ref.html
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Text Reference File</title>
+<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com" />
+<style>
+div {
+ width: 100px;
+ height: 100px;
+ background: green;
+}
+</style>
+<body>
+ <p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
+ <div></div>
+</body>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-001-ref.html
new file mode 100644
index 0000000000..3fbc32b1b1
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-001-ref.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>test reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ font-family: Ahem;
+ color: transparent;
+ font-size: 50px;
+ background: green;
+ width: 2em;
+}
+</style>
+
+<p>Test passes if there is a green rectangle below and no red.
+<div>XS<br>S<br>XS<br>S</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-002-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-002-ref.html
new file mode 100644
index 0000000000..dfc2690923
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-002-ref.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>test reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ color: transparent;
+ background: blue;
+ font-family: Ahem;
+ font-size: 50px;
+ width: 3ch;
+}
+</style>
+
+<p>Test passes if there is a single blue rectangle below.
+<div>
+XXX<br>
+XXX
+</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-003-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-003-ref.html
new file mode 100644
index 0000000000..0047109982
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-003-ref.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>test reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ font-family: Ahem;
+ color: transparent;
+ font-size: 50px;
+ background: green;
+ width: 1em;
+}
+</style>
+
+<p>Test passes if there is a green rectangle below and no red.
+<div>X<br>X</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-004-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-004-ref.html
new file mode 100644
index 0000000000..93b8b913cc
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-004-ref.html
@@ -0,0 +1,18 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>test reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+<style>
+div {
+ color: transparent;
+ font-family: monospace;
+ font-size: 50px;
+ width: 3ch;
+ height: 2em;
+ background: green;
+}
+</style>
+
+<p>Test passes if there is a single green rectangle below and no red.
+<div>
+</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-letter-spacing-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-letter-spacing-001-ref.html
new file mode 100644
index 0000000000..2324661d08
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-letter-spacing-001-ref.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+<meta charset="utf-8"/>
+<title>CSS Test reference</title>
+<style>
+div {
+ font: 16px monospace;
+ float: left;
+ clear: left;
+ border: 1px solid silver;
+ margin: 1em;
+ letter-spacing: .5em;
+}
+</style>
+<p>The five boxes below should all look the same:</p>
+<div>Two lines<br>of text</div>
+<div>Two lines<br>of text</div>
+<div>Two lines<br>of text</div>
+<div>Two lines<br>of text</div>
+<div>Two lines<br>of text</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-normal-011-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-normal-011-ref.html
new file mode 100644
index 0000000000..ac1f95f623
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-normal-011-ref.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ white-space: pre;
+ width: 16ch;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="reference">Lorem ipsum.
+Dolor sit amet.
+consectetur</div>
+
+ <div id="reference">Lorem ipsum.
+Dolor sit amet.
+consectetur</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-nowrap-011-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-nowrap-011-ref.html
new file mode 100644
index 0000000000..b70f993c80
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-nowrap-011-ref.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 16ch;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically. Only "or sit amet." should be outside of black-bordered rectangles.
+
+ <div id="reference">Lorem&nbsp;ipsum.&nbsp;Dolor&nbsp;sit&nbsp;amet.<br>
+consectetur</div>
+
+ <div id="reference">Lorem&nbsp;ipsum.&nbsp;Dolor&nbsp;sit&nbsp;amet.<br>
+consectetur</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-011-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-011-ref.html
new file mode 100644
index 0000000000..c3aecc8dfb
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-011-ref.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 16ch;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically. Only "Dolor" should be outside of black-bordered rectangles.
+
+ <div id="reference">Lorem&nbsp;ipsum.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dolor<br>
+&nbsp;&nbsp;&nbsp;sit&nbsp;&nbsp;amet.&nbsp;<br>
+consectetur</div>
+
+ <div id="reference">Lorem&nbsp;ipsum.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dolor<br>
+&nbsp;&nbsp;&nbsp;sit&nbsp;&nbsp;amet.&nbsp;<br>
+consectetur</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-031-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-031-ref.html
new file mode 100644
index 0000000000..93181354ba
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-031-ref.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 16ch;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div>Lorem ipsum. <br>
+Dolor<br>
+&nbsp;&nbsp;&nbsp;sit&nbsp;&nbsp;amet.</div>
+
+ <div>Lorem ipsum. <br>
+Dolor<br>
+&nbsp;&nbsp;&nbsp;sit&nbsp;&nbsp;amet.</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-034-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-034-ref.html
new file mode 100644
index 0000000000..b920bdb111
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-034-ref.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 16ch;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div>Lorem ipsum.&nbsp;&nbsp;&nbsp;&nbsp;<br>
+&nbsp;&nbsp;Dolor<br>
+&nbsp;&nbsp;&nbsp;sit&nbsp;&nbsp;amet.</div>
+
+ <div>Lorem ipsum.&nbsp;&nbsp;&nbsp;&nbsp;<br>
+&nbsp;&nbsp;Dolor<br>
+&nbsp;&nbsp;&nbsp;sit&nbsp;&nbsp;amet.</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-001-ref.html
new file mode 100644
index 0000000000..8db147766b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-001-ref.html
@@ -0,0 +1,18 @@
+<!doctype html>
+<meta charset=utf-8>
+<title>CSS Text test: hanging trailing spaces with white-space:pre-wrap</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+
+<style>
+div {
+ white-space: pre-wrap;
+ font-family: monospace;
+}
+</style>
+
+<p>This test passes if the 4 letters below are verticaly aligned.
+
+<div> P</div>
+<div> A</div>
+<div> S</div>
+<div> S</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-002-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-002-ref.html
new file mode 100644
index 0000000000..0971868116
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-002-ref.html
@@ -0,0 +1,20 @@
+<!doctype html>
+<meta charset=utf-8>
+<title>CSS test Reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ font-size: 20px;
+ font-family: Ahem;
+ line-height: 1em;
+ white-space: pre-wrap;
+}
+#test { color: orange; }
+#ref { color: blue; }
+</style>
+
+<p>This test passes if the orange blocks below are vertically aligned with the blue ones.
+
+<div id=test>X X X X</div>
+<div id=ref>X X X X</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-003-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-003-ref.html
new file mode 100644
index 0000000000..1b50b667c0
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-003-ref.html
@@ -0,0 +1,16 @@
+<!doctype html>
+<meta charset=utf-8>
+<title>CSS test Reference</title>
+<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/">
+
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ font: 25px/1 Ahem;
+ color: green;
+}
+</style>
+
+<p>This test passes if there is a green rectangle and no red.
+
+<div>X<br>X<br>X<br>X</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-004-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-004-ref.html
new file mode 100644
index 0000000000..de92f22e62
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-004-ref.html
@@ -0,0 +1,17 @@
+<!doctype html>
+<meta charset=utf-8>
+<title>CSS test Reference</title>
+<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com" />
+
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ font: 25px/1 Ahem;
+ color: green;
+}
+span { color: blue; }
+</style>
+
+<p>This test passes if there is a green square and no red.
+
+<div>XX<span>X</span><br>XX</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-012-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-012-ref.html
new file mode 100644
index 0000000000..c4751fa5ea
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-012-ref.html
@@ -0,0 +1,15 @@
+<!doctype html>
+<meta charset=utf-8>
+<title>CSS test Reference</title>
+<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com" />
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+ div {
+ font: 20px/1 Ahem;
+ white-space: pre;
+ }
+ span { background: blue; }
+</style>
+
+<p>This test passes if the line is broken after the 2nd white space, which hangs (blue).
+<div>XX&#x0020;X<span>&#x0020;<br>X</span></div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-013-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-013-ref.html
new file mode 100644
index 0000000000..af1f6bf268
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-013-ref.html
@@ -0,0 +1,13 @@
+<!doctype html>
+<meta charset=utf-8>
+<meta http-equiv="content-language" content="en, ja" />
+<title>CSS test Reference</title>
+<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com" />
+<style>
+ div { white-space: pre; }
+ span { background: blue; }
+</style>
+
+<p>This test passes if the line is after the white space, which hangs (blue).
+
+<div>ああ<span>&#x0020;<br>X</span></div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-014-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-014-ref.html
new file mode 100644
index 0000000000..29f69dc142
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-014-ref.html
@@ -0,0 +1,15 @@
+<!doctype html>
+<meta charset=utf-8>
+<title>CSS test Reference</title>
+<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com" />
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+ div {
+ font: 20px/1 Ahem;
+ white-space: pre;
+ }
+ span { background: blue; }
+</style>
+
+<p>This test passes if the line is broken after the 2nd white space, which hangs (blue).
+<div>XX&#x0020;<span>X&#x0020;<br>XXXX&#x0020;</span></div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-015-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-015-ref.html
new file mode 100644
index 0000000000..ffcabadeb3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-015-ref.html
@@ -0,0 +1,15 @@
+<!doctype html>
+<meta charset=utf-8>
+<title>CSS test Reference</title>
+<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com" />
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+ div {
+ font: 20px/1 Ahem;
+ white-space: pre;
+ }
+ span { background: blue; }
+</style>
+
+<p>This test passes if the line is broken after the 2nd white space, which hangs (blue).
+<div>XX&#x0020;X<span>X&#x0020;<br>X</span></div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-021-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-021-ref.html
new file mode 100644
index 0000000000..02c25f4d1a
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-021-ref.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ line-height: 1.25; /* computes to 40px */
+ margin-bottom: 0.25em;
+ width: 16ch;
+ overflow: hidden;
+ }
+
+ span
+ {
+ background-color: yellow;
+ }
+ </style>
+
+ <p>Test passes if the characters inside each black-bordered rectangle are laid out identically and if each black-bordered rectangle does not generate a horizontal scrollbar.
+
+ <div>Lorem&nbsp;ipsum.<span>&nbsp;&nbsp;&nbsp;&nbsp;</span><br>
+Dolor<br>
+&nbsp;&nbsp;&nbsp;sit amet. <br>
+consectetur</div>
+
+ <div>Lorem&nbsp;ipsum.<span>&nbsp;&nbsp;&nbsp;&nbsp;</span><br>
+Dolor<br>
+&nbsp;&nbsp;&nbsp;sit amet. <br>
+consectetur</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-004-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-004-ref.html
new file mode 100644
index 0000000000..0cbc7b231f
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-004-ref.html
@@ -0,0 +1,16 @@
+<!doctype html>
+<meta charset=utf-8>
+<title>CSS test Reference</title>
+<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com" />
+
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+div {
+ font: 25px/1 Ahem;
+ color: green;
+}
+</style>
+
+<p>This test passes if there is a green square and no red.
+
+<div>XX<br>XX</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-012-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-012-ref.html
new file mode 100644
index 0000000000..fc485c42b1
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-012-ref.html
@@ -0,0 +1,15 @@
+<!doctype html>
+<meta charset=utf-8>
+<title>CSS test Reference</title>
+<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com" />
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+ div {
+ font: 20px/1 Ahem;
+ white-space: pre;
+ }
+ span { background: blue; }
+</style>
+
+<p>This test passes if the line is broken after the 2nd white space, which hangs (blue).
+<div>XX&#x0020;X<span><br>X</span></div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-013-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-013-ref.html
new file mode 100644
index 0000000000..ca5032540b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-013-ref.html
@@ -0,0 +1,13 @@
+<!doctype html>
+<meta charset=utf-8>
+<meta http-equiv="content-language" content="en, ja" />
+<title>CSS test Reference</title>
+<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com" />
+<style>
+ div { white-space: pre; }
+ span { background: blue; }
+</style>
+
+<p>This test passes if the line is after the white space, which hangs (blue).
+
+<div>ああ<span><br>X</span></div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-014-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-014-ref.html
new file mode 100644
index 0000000000..0df3b9f738
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-014-ref.html
@@ -0,0 +1,15 @@
+<!doctype html>
+<meta charset=utf-8>
+<title>CSS test Reference</title>
+<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com" />
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+ div {
+ font: 20px/1 Ahem;
+ white-space: pre;
+ }
+ span { background: blue; }
+</style>
+
+<p>This test passes if the line is broken after the 2nd white space, which hangs (blue).
+<div>XX&#x0020;<span>X<br>XXXX</span></div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-015-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-015-ref.html
new file mode 100644
index 0000000000..0faae57a3e
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-alt-015-ref.html
@@ -0,0 +1,15 @@
+<!doctype html>
+<meta charset=utf-8>
+<title>CSS test Reference</title>
+<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com" />
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+ div {
+ font: 20px/1 Ahem;
+ white-space: pre;
+ }
+ span { background: blue; }
+</style>
+
+<p>This test passes if the line is broken after the 2nd white space, which hangs (blue).
+<div>XX&#x0020;X<span>X<br>X</span></div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-wrap-after-nowrap-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-wrap-after-nowrap-001-ref.html
new file mode 100644
index 0000000000..71e1c82465
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-wrap-after-nowrap-001-ref.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<style>
+div {
+ width: 10ch;
+ border: 2px solid blue;
+ line-height: 1;
+}
+.ideo > div {
+ width: 1em;
+}
+</style>
+<body>
+ <section>
+ <div>12345<br>67890</div>
+ <div>12345<br>67890</div>
+ <div>12345<br>67890</div>
+ <div>12345<br>67890</div>
+
+ <div>12345<br>67890</div>
+ <div>12345<br>67890</div>
+ </section>
+
+ <section class="ideo">
+ <div>国<br>国</div>
+ <div>国<br>国</div>
+ </section>
+</body>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-zero-fontsize-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-zero-fontsize-001-ref.html
new file mode 100644
index 0000000000..3c27ed25be
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-zero-fontsize-001-ref.html
@@ -0,0 +1,16 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>CSS Text test reference</title>
+<link rel="author" title="Jonathan Kew" href="mailto:jkew@mozilla.com">
+<style>
+pre {
+ font-size: 12px;
+ float: left;
+ border: 1px solid black;
+ margin: 12px;
+}
+</style>
+<pre>
+foo
+bar
+</pre>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-zero-fontsize-002-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-zero-fontsize-002-ref.html
new file mode 100644
index 0000000000..6d2134ac4d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-zero-fontsize-002-ref.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>CSS Text test reference</title>
+<link rel="author" title="Jonathan Kew" href="mailto:jkew@mozilla.com">
+<style>
+pre {
+ font-size: 12px;
+ float: left;
+ border: 1px solid black;
+ margin: 12px;
+ -moz-tab-size: 100px;
+ tab-size: 100px;
+}
+</style>
+<pre>
+<span>foo</span>&#x9;<span>bar</span>
+</pre>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-001-ref.html
new file mode 100644
index 0000000000..842f46913d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-001-ref.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ white-space: pre;
+ width: 4ch;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div>123
+ 8</div>
+
+ <div>123
+ 8</div>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-003-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-003-ref.html
new file mode 100644
index 0000000000..3bb3617760
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-003-ref.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ li
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ white-space: pre;
+ width: 4ch;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles (both preceded with a small filled disc) are laid out identically.
+
+ <ul><li>123
+ 8</ul>
+
+ <ul><li>123
+ 8</ul>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-006-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-006-ref.html
new file mode 100644
index 0000000000..d8a5b90638
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-006-ref.html
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ table
+ {
+ border: black solid 2px;
+ border-spacing: 0px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ white-space: pre;
+ width: 4ch;
+ }
+
+ td
+ {
+ padding: 0px;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <table><tr><td>123
+ 8</table>
+
+ <table><tr><td>123
+ 8</table>
diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-012-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-012-ref.html
new file mode 100644
index 0000000000..942bd8fe92
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-012-ref.html
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ table
+ {
+ border: black solid 2px;
+ border-spacing: 0px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ }
+
+ td
+ {
+ padding: 0px;
+ width: 4ch;
+ white-space: normal;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <table><tr><td>123
+ 8</table>
+
+ <table><tr><td>123
+ 8</table>