| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| Any copyright is dedicated to the Public Domain. |
| http://creativecommons.org/publicdomain/zero/1.0/ |
| --> |
| <!-- Testcase with a series of vertical flex containers, testing each possible |
| value of the 'justify-content' property, and with each individual |
| flex item being larger than the flexbox itself (so that there isn't any |
| packing space available). Also, we've got margin/border/padding on the |
| flex items. |
| * For 'flex-start'/'space-between', we should overflow on the end |
| (bottom) side. |
| * For 'flex-end', we should overflow on the start (top) side. |
| * For 'center'/'space-around', we should overflow equally on both sides. |
| --> |
| <html xmlns="http://www.w3.org/1999/xhtml"> |
| <head> |
| <title>CSS Test: Testing 'justify-content' in a vertical flex container, and its effects on flex items that overflow, with margins/border/padding on flex items</title> |
| <link rel="author" title="Daniel Holbert" href="mailto:dholbert@mozilla.com"/> |
| <link rel="help" href="http://www.w3.org/TR/css-flexbox-1/#justify-content-property"/> |
| <link rel="match" href="flexbox-justify-content-vert-004-ref.xhtml"/> |
| <style> |
| body { margin-top: 100px; } /* So we can see top-overflowed stuff */ |
| div.flexbox { |
| height: 30px; |
| display: flex; |
| flex-direction: column; |
| margin-right: 4px; |
| float: left; |
| } |
| div.a { |
| width: 10px; |
| flex: 0 0 35px; |
| background: lightgreen; |
| border-style: solid; |
| border-color: purple; |
| border-top-width: 4px; |
| border-right-width: 3px; |
| border-bottom-width: 2px; |
| border-left-width: 1px; |
| padding: 2px; |
| } |
| div.b { |
| width: 10px; |
| flex: 0 0 40px; |
| background: pink; |
| padding: 1px 2px 3px 4px; |
| margin: 5px 4px 3px 2px; |
| } |
| div.c { |
| width: 10px; |
| flex: 0 0 45px; |
| background: orange; |
| margin: 3px; |
| border: 2px dashed teal; |
| } |
| </style> |
| </head> |
| <body> |
| |
| <!-- default (start) --> |
| <div class="flexbox"> |
| <div class="a"/> |
| </div> |
| <div class="flexbox"> |
| <div class="a"/><div class="b"></div> |
| </div> |
| <div class="flexbox"> |
| <div class="a"/><div class="b"/><div class="c"/> |
| </div> |
| |
| <!-- flex-start --> |
| <div class="flexbox" style="justify-content: flex-start"> |
| <div class="a"/> |
| </div> |
| <div class="flexbox" style="justify-content: flex-start"> |
| <div class="a"/><div class="b"/> |
| </div> |
| <div class="flexbox" style="justify-content: flex-start"> |
| <div class="a"/><div class="b"/><div class="c"/> |
| </div> |
| |
| <!-- flex-end --> |
| <div class="flexbox" style="justify-content: flex-end"> |
| <div class="a"/> |
| </div> |
| <div class="flexbox" style="justify-content: flex-end"> |
| <div class="a"/><div class="b"/> |
| </div> |
| <div class="flexbox" style="justify-content: flex-end"> |
| <div class="a"/><div class="b"/><div class="c"/> |
| </div> |
| |
| <!-- center --> |
| <div class="flexbox" style="justify-content: center"> |
| <div class="a"/> |
| </div> |
| <div class="flexbox" style="justify-content: center"> |
| <div class="a"/><div class="b"/> |
| </div> |
| <div class="flexbox" style="justify-content: center"> |
| <div class="a"/><div class="b"/><div class="c"/> |
| </div> |
| |
| <!-- space-between --> |
| <div class="flexbox" style="justify-content: space-between"> |
| <div class="a"/> |
| </div> |
| <div class="flexbox" style="justify-content: space-between"> |
| <div class="a"/><div class="b"/> |
| </div> |
| <div class="flexbox" style="justify-content: space-between"> |
| <div class="a"/><div class="b"/><div class="c"/> |
| </div> |
| |
| <!-- space-around --> |
| <div class="flexbox" style="justify-content: space-around"> |
| <div class="a"/> |
| </div> |
| <div class="flexbox" style="justify-content: space-around"> |
| <div class="a"/><div class="b"/> |
| </div> |
| <div class="flexbox" style="justify-content: space-around"> |
| <div class="a"/><div class="b"/><div class="c"/> |
| </div> |
| |
| <!-- space-evenly --> |
| <div class="flexbox" style="justify-content: space-evenly"> |
| <div class="a"/> |
| </div> |
| <div class="flexbox" style="justify-content: space-evenly"> |
| <div class="a"/><div class="b"/> |
| </div> |
| <div class="flexbox" style="justify-content: space-evenly"> |
| <div class="a"/><div class="b"/><div class="c"/> |
| </div> |
| |
| <!-- left --> |
| <div class="flexbox" style="justify-content: left"> |
| <div class="a"/> |
| </div> |
| <div class="flexbox" style="justify-content: left"> |
| <div class="a"/><div class="b"/> |
| </div> |
| <div class="flexbox" style="justify-content: left"> |
| <div class="a"/><div class="b"/><div class="c"/> |
| </div> |
| |
| <!-- right --> |
| <div class="flexbox" style="justify-content: right"> |
| <div class="a"/> |
| </div> |
| <div class="flexbox" style="justify-content: right"> |
| <div class="a"/><div class="b"/> |
| </div> |
| <div class="flexbox" style="justify-content: right"> |
| <div class="a"/><div class="b"/><div class="c"/> |
| </div> |
| |
| </body> |
| </html> |