2012-09-29 23:42:29 -07:00
|
|
|
<?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 all the possible
|
|
|
|
values included on different items within a flex container, and with
|
|
|
|
"direction: rtl" to swap the horizontal (cross) axis. -->
|
|
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
|
|
<head>
|
|
|
|
<style>
|
|
|
|
.flexbox {
|
|
|
|
border: 1px dashed blue;
|
|
|
|
width: 200px;
|
2012-10-15 12:42:43 -07:00
|
|
|
display: flex;
|
|
|
|
flex-direction: column;
|
2012-09-29 23:42:29 -07:00
|
|
|
direction: rtl;
|
|
|
|
font-family: sans-serif;
|
|
|
|
font-size: 10px;
|
|
|
|
|
|
|
|
/* Any children whose align-self is 'auto' (or unspecified, or
|
2012-10-30 08:57:36 -07:00
|
|
|
initial) will end up taking this value from us: */
|
2012-10-15 12:42:43 -07:00
|
|
|
align-items: center;
|
2012-09-29 23:42:29 -07:00
|
|
|
|
|
|
|
/* Any children whose align-self is 'inherit' will end up
|
|
|
|
inheriting this value from us: */
|
2012-10-15 12:42:43 -07:00
|
|
|
align-self: flex-end;
|
2012-09-29 23:42:29 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
.big {
|
|
|
|
font-size: 20px;
|
|
|
|
width: 50px;
|
|
|
|
}
|
|
|
|
|
|
|
|
/* Classes for each of the various align-self values */
|
|
|
|
.flex-start {
|
|
|
|
background: lime;
|
2012-10-15 12:42:43 -07:00
|
|
|
align-self: flex-start;
|
2012-09-29 23:42:29 -07:00
|
|
|
}
|
|
|
|
.flex-end {
|
|
|
|
background: orange;
|
2012-10-15 12:42:43 -07:00
|
|
|
align-self: flex-end;
|
2012-09-29 23:42:29 -07:00
|
|
|
}
|
|
|
|
.center {
|
|
|
|
background: lightblue;
|
2012-10-15 12:42:43 -07:00
|
|
|
align-self: center;
|
2012-09-29 23:42:29 -07:00
|
|
|
}
|
|
|
|
.baseline {
|
|
|
|
background: teal;
|
2012-10-15 12:42:43 -07:00
|
|
|
align-self: baseline;
|
2012-09-29 23:42:29 -07:00
|
|
|
}
|
|
|
|
.stretch {
|
|
|
|
background: pink;
|
2012-10-15 12:42:43 -07:00
|
|
|
align-self: stretch;
|
2012-09-29 23:42:29 -07:00
|
|
|
}
|
|
|
|
.auto {
|
|
|
|
background: yellow;
|
2012-10-15 12:42:43 -07:00
|
|
|
align-self: auto;
|
2012-09-29 23:42:29 -07:00
|
|
|
}
|
|
|
|
.unspecified {
|
|
|
|
background: lightgreen;
|
|
|
|
}
|
|
|
|
.initial {
|
|
|
|
background: aqua;
|
2012-10-30 08:57:36 -07:00
|
|
|
align-self: initial;
|
2012-09-29 23:42:29 -07:00
|
|
|
}
|
|
|
|
.inherit {
|
|
|
|
background: violet;
|
2012-10-15 12:42:43 -07:00
|
|
|
align-self: inherit;
|
2012-09-29 23:42:29 -07:00
|
|
|
}
|
2013-01-17 13:14:23 -08:00
|
|
|
.hack {
|
|
|
|
display: inline-block;
|
|
|
|
width: 100px;
|
|
|
|
}
|
2012-09-29 23:42:29 -07:00
|
|
|
</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">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">abc</div>
|
|
|
|
<div class="stretch">stretch</div>
|
|
|
|
<div class="stretch big">a b c d e f</div>
|
|
|
|
<div class="auto">auto</div>
|
2013-01-17 13:14:23 -08:00
|
|
|
<!-- This particular text ("unspec") appears to trigger a slight
|
|
|
|
difference in behavior between the testcase's & reference case's
|
|
|
|
centering techniques - the "s" ends up being shifted by ~1px.
|
|
|
|
(Probably because the length of the text is a fractional amount of
|
|
|
|
pixels, or something like that.) To hack around that, we add a
|
|
|
|
fixed-width wrapper-div - we should be able to center _that_
|
|
|
|
consistently. -->
|
|
|
|
<div class="unspecified"><div class="hack">unspec</div></div>
|
2012-09-29 23:42:29 -07:00
|
|
|
<div class="initial">initial</div>
|
|
|
|
<div class="inherit">inherit</div>
|
|
|
|
</div>
|
|
|
|
</body>
|
|
|
|
</html>
|