Source code

Revision control

Copy as Markdown

Other Tools

<?xml version="1.0" encoding="UTF-8"?>
<!--
Any copyright is dedicated to the Public Domain.
-->
<!-- Reference case for align-items / align-self behavior, using floated divs
in place of flex items and using relative positioning in place of the
align-items / align-self properties. -->
<head>
<title>CSS Reftest Reference</title>
<link rel="author" title="Daniel Holbert" href="mailto:dholbert@mozilla.com"/>
<style>
.flexbox {
border: 1px dashed blue;
height: 200px;
display: inline-block;
font-size: 10px;
line-height: 10px;
vertical-align: top;
}
.flexbox > div { float: left }
.flex-start, .flex-end, .center, .baseline, .stretch,
.auto, .unspecified, .initial, .inherit, .self-start, .self-end {
width: 40px;
margin: 1px 2px 3px 4px;
border-width: 2px 3px 4px 5px;
padding: 3px 4px 5px 6px;
position: relative;
border-style: dotted;
}
.big {
height: 100px;
font-size: 20px;
line-height: 20px;
}
/* Classes for each of the various align-self values */
.flex-start {
background: lime;
}
.flex-end {
background: orange;
}
.center {
background: lightblue;
}
.baseline {
background: teal;
}
.stretch {
background: pink;
}
.self-start {
background: yellow;
}
.self-end {
background: purple;
}
.wmvertrev {
writing-mode: vertical-lr;
direction: rtl;
}
</style>
</head>
<body>
<div class="flexbox">
<div class="flex-start">start</div>
<div class="flex-start big">a b c d e f</div>
<div class="flex-end" style="top: 172px">end</div>
<div class="flex-end big" style="top: 82px">a b c d e f</div>
<div class="center" style="top: 86px">center</div>
<div class="center big" style="top: 41px">a b c d e f</div>
</div>
<br/>
<div class="flexbox">
<!-- We use inline-blocks inside of a wrapper-block as references for the
baseline-aligned flex items, since inline-blocks get
baseline-aligned in block layout. We also need to specify the widths
manually here since the "flexbox > div" child-selector doesn't
handle these guys (since they're grandchildren).
-->
<div>
<div class="baseline"
style="display: inline-block">base</div
><div class="baseline big"
style="display: inline-block">abc</div>
</div>
<div class="stretch" style="height: 182px">stretch</div>
<div class="stretch big">a b c d e f</div>
</div>
<br/>
<div class="flexbox">
<div class="self-start">self-start</div>
<div class="self-start big">a b c d e f</div>
<div class="self-end wmvertrev">self-end</div>
<div class="self-end wmvertrev big">a b c d e f</div>
</div>
</body>
</html>