1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126
  
     | 
    
      <!DOCTYPE html>
<link rel="help" href="https://drafts.csswg.org/css-align-3/#justify-abspos">
<style>
body {
  margin: 0;
}
.container {
  writing-mode: vertical-lr;
  direction: ltr;
  display: inline-block;
  position: relative;
  margin: 20px;
  border: solid 4px;
  width: 40px;
  height: 40px;
}
.item {
  writing-mode: vertical-rl;
  direction: ltr;
  position: absolute;
  background: green;
  inset: 0;
}
.item::before {
  width: 20px;
  height: 20px;
  content: '';
  display: block;
}
.rtl {
  direction: rtl;
}
</style>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
<body onload="checkLayout('.item')">
<div class="container">
  <div class="item" style="justify-self: start;" data-expected-height="20" data-offset-y="0"></div>
</div>
<div class="container">
  <div class="item" style="justify-self: center;" data-expected-height="20" data-offset-y="10"></div>
</div>
<div class="container">
  <div class="item" style="justify-self: end;" data-expected-height="20" data-offset-y="20"></div>
</div>
<div class="container">
  <div class="item" style="justify-self: baseline;" data-expected-height="20" data-offset-y="0"></div>
</div>
<div class="container">
  <div class="item" style="justify-self: last baseline;" data-expected-height="20" data-offset-y="20"></div>
</div>
<div class="container">
  <div class="item" style="justify-self: self-start;" data-expected-height="20" data-offset-y="0"></div>
</div>
<div class="container">
  <div class="item" style="justify-self: self-end;" data-expected-height="20" data-offset-y="20"></div>
</div>
<div class="container">
  <div class="item" style="justify-self: left;" data-expected-height="20" data-offset-y="0"></div>
</div>
<div class="container">
  <div class="item" style="justify-self: right;" data-expected-height="20" data-offset-y="20"></div>
</div>
<div class="container">
  <div class="item" style="justify-self: stretch;" data-expected-height="40" data-offset-y="0"></div>
</div>
<!-- RTL -->
<br>
<div class="container">
  <div class="item rtl" style="justify-self: start;" data-expected-height="20" data-offset-y="0"></div>
</div>
<div class="container">
  <div class="item rtl" style="justify-self: center;" data-expected-height="20" data-offset-y="10"></div>
</div>
<div class="container">
  <div class="item rtl" style="justify-self: end;" data-expected-height="20" data-offset-y="20"></div>
</div>
<div class="container">
  <div class="item rtl" style="justify-self: baseline;" data-expected-height="20" data-offset-y="0"></div>
</div>
<div class="container">
  <div class="item rtl" style="justify-self: last baseline;" data-expected-height="20" data-offset-y="20"></div>
</div>
<div class="container">
  <div class="item rtl" style="justify-self: self-start;" data-expected-height="20" data-offset-y="20"></div>
</div>
<div class="container">
  <div class="item rtl" style="justify-self: self-end;" data-expected-height="20" data-offset-y="0"></div>
</div>
<div class="container">
  <div class="item rtl" style="justify-self: left;" data-expected-height="20" data-offset-y="0"></div>
</div>
<div class="container">
  <div class="item rtl" style="justify-self: right;" data-expected-height="20" data-offset-y="20"></div>
</div>
<div class="container">
  <div class="item rtl" style="justify-self: stretch;" data-expected-height="40" data-offset-y="0"></div>
</div>
 
     |