<!DOCTYPE html>
<meta charset="utf-8">
<title>CSS Grid Layout Test: Self-Baseline alignment along row-axis on fixed sized grids and synthesized baselines</title>
<link rel="author" title="Javier Fernandez Garcia-Boente" href="mailto:jfernandez@igalia.com">
<link rel="help" href="https://drafts.csswg.org/css-grid-1/#alignment">
<link rel="help" href="https://drafts.csswg.org/css-grid-1/#row-align">
<link rel="help" href="https://drafts.csswg.org/css-align-3/#propdef-justify-items">
<link rel="help" href="https://drafts.csswg.org/css-align-3/#baseline-alignment">
<link rel="help" href="https://drafts.csswg.org/css-align-3/#valdef-justify-self-baseline">
<link rel="help" href="https://drafts.csswg.org/css-align/#synthesize-baseline">
<link rel="stylesheet" href="/css/support/grid.css">
<link rel="stylesheet" href="../../support/alignment.css">
<meta name="assert" content="Empty grid items with relative size should use their border-box 'under' edge as synthesized baseline.">
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
<style>
.container { position: relative; }
.grid {
  position: relative;
  text-orientation: sideways;
  grid: 100px 200px / 200px 100px;
  font-family: Ahem;
}
.bigFont  { font-size: 50px; }
.height25 { height: 25px; }
.width25 { width: 25px; }
.width200 { width: 200px; }
.width300 { width: 300px; }

.paddingLeft { padding-left: 20px; }
.paddingRight { padding-right: 20px; }

.relativeHeight { height: 50%; }
.relativeWidth  { width: 50%; }
</style>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
<script type="text/javascript">
  setup({ explicit_done: true });
</script>
<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">

<pre>Horizontal grid and verticalLR item with relative width</pre>

<div class="grid width300 justifyItemsBaseline">
  <div class="firstRowFirstColumn relativeWidth"                    data-offset-x="30" data-offset-y="0"   data-expected-width="100" data-expected-height="100"></div>
  <div class="secondRowFirstColumn bigFont paddingLeft verticalLR"  data-offset-x="0"  data-offset-y="100" data-expected-width="120" data-expected-height="200">É É ÉÉ</div>
  <div class="autoRowSpanning2AutoColumn width25"></div>
</div>

<pre>Horizontal grid and verticalRL item with relative width do not share a baseline context</pre>

<div class="grid width300 justifyItemsBaseline">
  <div class="firstRowFirstColumn relativeWidth"                    data-offset-x="00" data-offset-y="0"   data-expected-width="100" data-expected-height="100"></div>
  <div class="secondRowFirstColumn bigFont paddingRight verticalRL" data-offset-x="80"  data-offset-y="100" data-expected-width="120" data-expected-height="200">É É ÉÉ</div>
  <div class="autoRowSpanning2AutoColumn width25"></div>
</div>

<pre>VerticalLR grid and item with relative height</pre>

<div class="grid justifyItemsBaseline verticalLR">
  <div class="firstRowFirstColumn relativeHeight"         data-offset-x="0"   data-offset-y="0"  data-expected-width="100" data-expected-height="100"></div>
  <div class="secondRowFirstColumn bigFont horizontalTB"  data-offset-x="100" data-offset-y="60" data-expected-width="200" data-expected-height="100">É É ÉÉ</div>
  <div class="autoRowSpanning2AutoColumn height25"></div>
</div>

<pre>VerticalRL grid and item with relative height</pre>

<div class="grid justifyItemsBaseline verticalRL">
  <div class="firstRowFirstColumn relativeHeight"         data-offset-x="200" data-offset-y="0"  data-expected-width="100" data-expected-height="100"></div>
  <div class="secondRowFirstColumn bigFont horizontalTB"  data-offset-x="0"   data-offset-y="60" data-expected-width="200" data-expected-height="100">É É ÉÉ</div>
  <div class="autoRowSpanning2AutoColumn height25"></div>
</div>


</body>
