Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

<?xml version="1.0" encoding="UTF-8"?>
<!--
Any copyright is dedicated to the Public Domain.
-->
<!-- 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). -->
<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="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>