<!DOCTYPE html>
<!--
     Any copyright is dedicated to the Public Domain.
     http://creativecommons.org/publicdomain/zero/1.0/
-->
<html>
<head>
  <meta charset="utf-8">
  <title>CSS Test: Static position of abspos horizontal-tb children in a static-pos vertical-rl grid container, with various "align-self" values</title>
  <link rel="author" title="Daniel Holbert" href="mailto:dholbert@mozilla.com">
  <link rel="help" href="https://drafts.csswg.org/css-grid/#abspos-items">
  <link rel="match" href="grid-abspos-staticpos-align-self-vertWM-004-ref.html">
  <style>
    .container {
      display: grid;
      writing-mode: vertical-rl;
      padding: 2px 1px;
      border: 1px solid black;
      background: yellow;
      margin-bottom: 5px;
      margin-right: 5px;
      float: left; /* For testing in "rows" of containers */
    }
    br { clear: both }

    .big > .container {
      width: 30px;
      height: 22px;
      grid: 2px 20px 2px / 3px 14px 3px;
    }
    .small > .container {
      grid: 0px 2px 0px / 3px 2px 3px;
      width: 2px;
      height: 4px;
      margin-right: 10px; /* To avoid overlap between overflowing kids */
    }

    .container > * {
      position: absolute;
      writing-mode: horizontal-tb;
      grid-area: 2 / 2 / 3 / 3;
      background: teal;
      width: 6px;
      height: 8px;
    }
  </style>
</head>
<body>
  <div class="big">
    <!-- The various align-self values, from
         https://www.w3.org/TR/css-align-3/#propdef-align-self -->
    <!-- auto | normal | stretch -->
    <div class="container"><div style="align-self: auto"></div></div>
    <div class="container"><div style="align-self: normal"></div></div>
    <div class="container"><div style="align-self: stretch"></div></div>
    <br>
    <!-- <baseline-position> -->
    <div class="container"><div style="align-self: baseline"></div></div>
    <br>
    <!-- <self-position>, part 1 -->
    <div class="container"><div style="align-self: center"></div></div>
    <div class="container"><div style="align-self: start"></div></div>
    <div class="container"><div style="align-self: end"></div></div>
    <div class="container"><div style="align-self: self-start"></div></div>
    <div class="container"><div style="align-self: self-end"></div></div>
    <br>
    <!-- <self-position>, part 2 -->
    <div class="container"><div style="align-self: flex-start"></div></div>
    <div class="container"><div style="align-self: flex-end"></div></div>
    <div class="container"><div style="align-self: left"></div></div>
    <div class="container"><div style="align-self: right"></div></div>
    <br>
  </div>
  <div class="small">
    <!-- The various align-self values, from
         https://www.w3.org/TR/css-align-3/#propdef-align-self -->
    <!-- auto | normal | stretch -->
    <div class="container"><div style="align-self: auto"></div></div>
    <div class="container"><div style="align-self: normal"></div></div>
    <div class="container"><div style="align-self: stretch"></div></div>
    <br>
    <!-- <baseline-position> -->
    <div class="container"><div style="align-self: baseline"></div></div>
    <br>
    <!-- <self-position>, part 1 -->
    <div class="container"><div style="align-self: center"></div></div>
    <div class="container"><div style="align-self: start"></div></div>
    <div class="container"><div style="align-self: end"></div></div>
    <div class="container"><div style="align-self: self-start"></div></div>
    <div class="container"><div style="align-self: self-end"></div></div>
    <br>
    <!-- <self-position>, part 2 -->
    <div class="container"><div style="align-self: flex-start"></div></div>
    <div class="container"><div style="align-self: flex-end"></div></div>
    <div class="container"><div style="align-self: left"></div></div>
    <div class="container"><div style="align-self: right"></div></div>
    <br>
  </div>
</body>
</html>
