part 3: Add a few variants of the WPT for grid synthesized baselines.

Depends on D196987

Differential Revision: https://phabricator.services.mozilla.com/D196989

bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1870949
gecko-commit: 8319ba83d9cbf2391b4adc5845b12676099796b5
gecko-reviewers: TYLin
diff --git a/css/css-grid/grid-container-baseline-synthesized-002.html b/css/css-grid/grid-container-baseline-synthesized-002.html
new file mode 100644
index 0000000..c11c8ac
--- /dev/null
+++ b/css/css-grid/grid-container-baseline-synthesized-002.html
@@ -0,0 +1,59 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>CSS Grid Test: Grid container synthesizing baseline from empty item</title>
+<meta name="assert" content="An inline-grid with an empty grid item should reliably synthesize an alphabetic (not central) baseline when aligning in a 'horizontal-tb' block's line-box.">
+<link rel="help" href="https://www.w3.org/TR/css-writing-modes-4/#text-baselines">
+<link rel="help" href="https://www.w3.org/TR/css-grid-1/#grid-baselines">
+<link rel="match" href="reference/grid-container-baseline-synthesized-001-ref.html">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+<style>
+:root {
+  font: 20px/1 Ahem;
+}
+.container {
+  display: inline-grid;
+  grid-template-rows: 60px;
+  grid-template-columns: 60px;
+  background: cyan;
+  writing-mode: vertical-rl;
+}
+.f { display: flex; }
+.g { display: grid; }
+.t { display: table; }
+.container > * {
+  border: 3px solid black;
+}
+.vrl-items > * { writing-mode: vertical-rl; }
+.vlr-items > * { writing-mode: vertical-lr; }
+.srl-items > * { writing-mode: sideways-rl; }
+.slr-items > * { writing-mode: sideways-lr; }
+</style>
+X
+<div class="container"><div></div></div>
+<div class="container"><div class="g"></div></div>
+<div class="container"><div class="f"></div></div>
+<div class="container"><div class="t"></div></div>
+<br><br>
+X
+<div class="container vrl-items"><div></div></div>
+<div class="container vrl-items"><div class="g"></div></div>
+<div class="container vrl-items"><div class="f"></div></div>
+<div class="container vrl-items"><div class="t"></div></div>
+<br><br>
+X
+<div class="container vlr-items"><div></div></div>
+<div class="container vlr-items"><div class="g"></div></div>
+<div class="container vlr-items"><div class="f"></div></div>
+<div class="container vlr-items"><div class="t"></div></div>
+<br><br>
+X
+<div class="container srl-items"><div></div></div>
+<div class="container srl-items"><div class="g"></div></div>
+<div class="container srl-items"><div class="f"></div></div>
+<div class="container srl-items"><div class="t"></div></div>
+<br><br>
+X
+<div class="container slr-items"><div></div></div>
+<div class="container slr-items"><div class="g"></div></div>
+<div class="container slr-items"><div class="f"></div></div>
+<div class="container slr-items"><div class="t"></div></div>
diff --git a/css/css-grid/grid-container-baseline-synthesized-003.html b/css/css-grid/grid-container-baseline-synthesized-003.html
new file mode 100644
index 0000000..9964c3d
--- /dev/null
+++ b/css/css-grid/grid-container-baseline-synthesized-003.html
@@ -0,0 +1,59 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>CSS Grid Test: Grid container synthesizing baseline from empty item</title>
+<meta name="assert" content="An inline-grid with an empty grid item should reliably synthesize an alphabetic (not central) baseline when aligning in a 'horizontal-tb' block's line-box.">
+<link rel="help" href="https://www.w3.org/TR/css-writing-modes-4/#text-baselines">
+<link rel="help" href="https://www.w3.org/TR/css-grid-1/#grid-baselines">
+<link rel="match" href="reference/grid-container-baseline-synthesized-001-ref.html">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+<style>
+:root {
+  font: 20px/1 Ahem;
+}
+.container {
+  display: inline-grid;
+  grid-template-rows: 60px;
+  grid-template-columns: 60px;
+  background: cyan;
+}
+.f { display: flex; }
+.g { display: grid; }
+.t { display: table; }
+.container > * {
+  border: 3px solid black;
+  overflow: hidden;
+}
+.vrl-items > * { writing-mode: vertical-rl; }
+.vlr-items > * { writing-mode: vertical-lr; }
+.srl-items > * { writing-mode: sideways-rl; }
+.slr-items > * { writing-mode: sideways-lr; }
+</style>
+X
+<div class="container"><div></div></div>
+<div class="container"><div class="g"></div></div>
+<div class="container"><div class="f"></div></div>
+<div class="container"><div class="t"></div></div>
+<br><br>
+X
+<div class="container vrl-items"><div></div></div>
+<div class="container vrl-items"><div class="g"></div></div>
+<div class="container vrl-items"><div class="f"></div></div>
+<div class="container vrl-items"><div class="t"></div></div>
+<br><br>
+X
+<div class="container vlr-items"><div></div></div>
+<div class="container vlr-items"><div class="g"></div></div>
+<div class="container vlr-items"><div class="f"></div></div>
+<div class="container vlr-items"><div class="t"></div></div>
+<br><br>
+X
+<div class="container srl-items"><div></div></div>
+<div class="container srl-items"><div class="g"></div></div>
+<div class="container srl-items"><div class="f"></div></div>
+<div class="container srl-items"><div class="t"></div></div>
+<br><br>
+X
+<div class="container slr-items"><div></div></div>
+<div class="container slr-items"><div class="g"></div></div>
+<div class="container slr-items"><div class="f"></div></div>
+<div class="container slr-items"><div class="t"></div></div>
diff --git a/css/css-grid/grid-container-baseline-synthesized-004.html b/css/css-grid/grid-container-baseline-synthesized-004.html
new file mode 100644
index 0000000..d8c4f63
--- /dev/null
+++ b/css/css-grid/grid-container-baseline-synthesized-004.html
@@ -0,0 +1,60 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>CSS Grid Test: Grid container synthesizing baseline from empty item</title>
+<meta name="assert" content="An inline-grid with an empty grid item should reliably synthesize an alphabetic (not central) baseline when aligning in a 'horizontal-tb' block's line-box.">
+<link rel="help" href="https://www.w3.org/TR/css-writing-modes-4/#text-baselines">
+<link rel="help" href="https://www.w3.org/TR/css-grid-1/#grid-baselines">
+<link rel="match" href="reference/grid-container-baseline-synthesized-001-ref.html">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+<style>
+:root {
+  font: 20px/1 Ahem;
+}
+.container {
+  display: inline-grid;
+  grid-template-rows: 60px;
+  grid-template-columns: 60px;
+  background: cyan;
+  writing-mode: vertical-rl;
+}
+.f { display: flex; }
+.g { display: grid; }
+.t { display: table; }
+.container > * {
+  border: 3px solid black;
+  overflow: hidden;
+}
+.vrl-items > * { writing-mode: vertical-rl; }
+.vlr-items > * { writing-mode: vertical-lr; }
+.srl-items > * { writing-mode: sideways-rl; }
+.slr-items > * { writing-mode: sideways-lr; }
+</style>
+X
+<div class="container"><div></div></div>
+<div class="container"><div class="g"></div></div>
+<div class="container"><div class="f"></div></div>
+<div class="container"><div class="t"></div></div>
+<br><br>
+X
+<div class="container vrl-items"><div></div></div>
+<div class="container vrl-items"><div class="g"></div></div>
+<div class="container vrl-items"><div class="f"></div></div>
+<div class="container vrl-items"><div class="t"></div></div>
+<br><br>
+X
+<div class="container vlr-items"><div></div></div>
+<div class="container vlr-items"><div class="g"></div></div>
+<div class="container vlr-items"><div class="f"></div></div>
+<div class="container vlr-items"><div class="t"></div></div>
+<br><br>
+X
+<div class="container srl-items"><div></div></div>
+<div class="container srl-items"><div class="g"></div></div>
+<div class="container srl-items"><div class="f"></div></div>
+<div class="container srl-items"><div class="t"></div></div>
+<br><br>
+X
+<div class="container slr-items"><div></div></div>
+<div class="container slr-items"><div class="g"></div></div>
+<div class="container slr-items"><div class="f"></div></div>
+<div class="container slr-items"><div class="t"></div></div>