summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/css-flexbox/abspos/flex-abspos-staticpos-align-self-002.html
blob: c570a9f79de2bb7466fa0430fb5500bf2c95a4b5 (plain)
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
<!DOCTYPE html>
<!--
     Any copyright is dedicated to the Public Domain.
     http://creativecommons.org/publicdomain/zero/1.0/
-->
<html>
<head>
  <title>CSS Test: Static position of abspos children in a row wrap-reverse flex container, with various "align-self" values</title>
  <link rel="author" title="Daniel Holbert" href="mailto:dholbert@mozilla.com">
  <link rel="author" title="David Grogan" href="mailto:dgrogan@chromium.org">
  <link rel="help" href="https://drafts.csswg.org/css-flexbox/#abspos-items">
  <meta charset="utf-8">
  <style>
    .container {
      display: flex;
      position: relative;
      flex-flow: row wrap-reverse;
      padding: 1px 2px;
      border: 1px solid black;
      background: yellow;
      margin-bottom: 5px;
      margin-right: 5px;
      float: left; /* For testing in "rows" of containers */
      align-items: center; /* To exercise 'align-self: auto' on children */
    }
    br { clear: both }

    .big > .container {
      height: 10px;
      width: 16px;
    }
    .small > .container {
      height: 2px;
      width: 4px;
    }

    .container > * {
      position: absolute;
      background: teal;
      height: 6px;
      width: 8px;
    }
  </style>
  <script src="/resources/testharness.js"></script>
  <script src="/resources/testharnessreport.js"></script>
  <script src="/resources/check-layout-th.js"></script>
</head>
<body onload="checkLayout('.container > div')">
  <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" data-offset-x="2" data-offset-y="3"></div></div>
    <div class="container"><div style="align-self: normal" data-offset-x="2" data-offset-y="5"></div></div>
    <div class="container"><div style="align-self: stretch" data-offset-x="2" data-offset-y="5"></div></div>
    <br>
    <!-- <baseline-position> -->
    <div class="container"><div style="align-self: baseline" data-offset-x="2" data-offset-y="1"></div></div>
    <div class="container"><div style="align-self: last baseline" data-offset-x="2" data-offset-y="5"></div></div>
    <br>
    <!-- <self-position>, part 1 -->
    <div class="container"><div style="align-self: center" data-offset-x="2" data-offset-y="3"></div></div>
    <div class="container"><div style="align-self: start" data-offset-x="2" data-offset-y="1"></div></div>
    <div class="container"><div style="align-self: end" data-offset-x="2" data-offset-y="5"></div></div>
    <div class="container"><div style="align-self: self-start" data-offset-x="2" data-offset-y="1"></div></div>
    <div class="container"><div style="align-self: self-end" data-offset-x="2" data-offset-y="5"></div></div>
    <br>
    <!-- <self-position>, part 2 -->
    <div class="container"><div style="align-self: flex-start" data-offset-x="2" data-offset-y="5"></div></div>
    <div class="container"><div style="align-self: flex-end" data-offset-x="2" data-offset-y="1"></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" data-offset-x="2" data-offset-y="-1"></div></div>
    <div class="container"><div style="align-self: normal" data-offset-x="2" data-offset-y="-3"></div></div>
    <div class="container"><div style="align-self: stretch" data-offset-x="2" data-offset-y="-3"></div></div>
    <br>
    <!-- <baseline-position> -->
    <div class="container"><div style="align-self: baseline" data-offset-x="2" data-offset-y="1"></div></div>
    <div class="container"><div style="align-self: last baseline" data-offset-x="2" data-offset-y="-3"></div></div>
    <br>
    <!-- <self-position>, part 1 -->
    <div class="container"><div style="align-self: center" data-offset-x="2" data-offset-y="-1"></div></div>
    <div class="container"><div style="align-self: start" data-offset-x="2" data-offset-y="1"></div></div>
    <div class="container"><div style="align-self: end" data-offset-x="2" data-offset-y="-3"></div></div>
    <div class="container"><div style="align-self: self-start" data-offset-x="2" data-offset-y="1"></div></div>
    <div class="container"><div style="align-self: self-end" data-offset-x="2" data-offset-y="-3"></div></div>
    <br>
    <!-- <self-position>, part 2 -->
    <div class="container"><div style="align-self: flex-start" data-offset-x="2" data-offset-y="-3"></div></div>
    <div class="container"><div style="align-self: flex-end" data-offset-x="2" data-offset-y="1"></div></div>
    <br>
  </div>
</body>
</html>