<?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>