summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/css-flexbox/flexbox-align-self-horiz-005.xhtml
blob: cff89d3251668a12e2c74a1dcc82457c5f49d8c0 (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
99
100
101
102
103
104
<?xml version="1.0" encoding="UTF-8"?>
<!--
     Any copyright is dedicated to the Public Domain.
     http://creativecommons.org/publicdomain/zero/1.0/
-->
<!-- Testcase for align-items / align-self behavior with auto margins in
     play (which should negate the effects of align-items / align-self,
     because there won't be any available space in which to align the item
     after the auto margins are resolved).  -->
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>CSS Test: Testing the behavior of 'align-self' with auto margins in play, in a horizontal flex container</title>
    <link rel="author" title="Daniel Holbert" href="mailto:dholbert@mozilla.com"/>
    <link rel="help" href="http://www.w3.org/TR/css-flexbox-1/#auto-margins"/>
    <link rel="match" href="flexbox-align-self-horiz-005-ref.xhtml"/>
    <style>
      .flexbox {
        border: 1px dashed blue;
        height: 140px;
        width: 400px;
        display: flex;
        font-size: 10px;
        line-height: 10px;
        margin-bottom: 10px;
      }

      .kidsAutoTop > div    { margin-top: auto;    }
      .kidsAutoBottom > div { margin-bottom: auto; }
      .kidsAutoBoth > div   { margin: auto 0; }

      .flexbox > div {
        width: 40px;
      }

      .flexbox > div.big {
        height: 80px;
        font-size: 20px;
        line-height: 20px;
      }

      /* Classes for each of the various align-self values */
      .flex-start {
        background: lime;
        align-self: flex-start;
      }
      .flex-end {
        background: orange;
        align-self: flex-end;
      }
      .center {
        background: lightblue;
        align-self: center;
      }
      .baseline {
        background: teal;
        align-self: baseline;
      }
      .stretch {
        background: pink;
        align-self: stretch;
      }
   </style>
  </head>
  <body>
    <div class="flexbox kidsAutoTop">
      <div class="flex-start">start</div>
      <div class="flex-start big">a b c d e f</div>
      <div class="flex-end">end</div>
      <div class="flex-end big">a b c d e f</div>
      <div class="center">center</div>
      <div class="center big">a b c d e f</div>
      <div class="baseline">base</div>
      <div class="baseline big">a b c d e f</div>
      <div class="stretch">stretch</div>
      <div class="stretch big">a b c d e f</div>
    </div>

    <div class="flexbox kidsAutoBottom">
      <div class="flex-start">start</div>
      <div class="flex-start big">a b c d e f</div>
      <div class="flex-end">end</div>
      <div class="flex-end big">a b c d e f</div>
      <div class="center">center</div>
      <div class="center big">a b c d e f</div>
      <div class="baseline">base</div>
      <div class="baseline big">a b c d e f</div>
      <div class="stretch">stretch</div>
      <div class="stretch big">a b c d e f</div>
    </div>

    <div class="flexbox kidsAutoBoth">
      <div class="flex-start">start</div>
      <div class="flex-start big">a b c d e f</div>
      <div class="flex-end">end</div>
      <div class="flex-end big">a b c d e f</div>
      <div class="center">center</div>
      <div class="center big">a b c d e f</div>
      <div class="baseline">base</div>
      <div class="baseline big">a b c d e f</div>
      <div class="stretch">stretch</div>
      <div class="stretch big">a b c d e f</div>
    </div>
  </body>
</html>