flexbox-single-column-vertical-lr-2.html (3361B)
1 <!DOCTYPE html> 2 <!-- Any copyright is dedicated to the Public Domain. 3 http://creativecommons.org/publicdomain/zero/1.0/ --> 4 <html> 5 <meta charset="utf-8"> 6 <title>CSS Flexbox Test: Fragmentation of fixed block-size single-line column flex container with fixed block-size flex items</title> 7 <link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com"> 8 <link rel="author" title="Mozilla" href="http://www.mozilla.org/"> 9 <link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination"> 10 <link rel="match" href="flexbox-single-column-vertical-lr-2-ref.html"> 11 <meta name="assert" content="This test verifies fragmentation of fixed block-size flex items in a fixed block-size single-line column flex container, with various combinations of margin/border/padding, alignments, and row-gap. The block-size of the flex container is made shorter than its flex items."> 12 13 <style> 14 html { 15 writing-mode: vertical-lr; 16 } 17 .multicol { 18 block-size: 50px; 19 inline-size: 190px; 20 column-width: 40px; 21 column-fill: auto; 22 column-gap: 10px; 23 border: 5px solid orange; 24 margin-block-end: 5px; /* Just to separate each sub-testcase visually. */ 25 } 26 .flexContainer { 27 display: flex; 28 flex-wrap: nowrap; 29 flex-direction: column; 30 background: gray; 31 /* border-width is 0 by default; some sub-testcases will increase it. */ 32 border: 0 solid lightgray; 33 /* Block-size is deliberately made shorter than all its flex items. */ 34 block-size: 85px; 35 } 36 .border-padding { 37 border-block-width: 10px; 38 padding-block: 5px; 39 } 40 41 /* Note: flex items are in visual order as "CMYK": cyan, magenta, yellow, black. */ 42 header, nav, article, footer { 43 flex-shrink: 0; 44 } 45 header { 46 background: cyan; 47 block-size: 50px; 48 } 49 nav, article, footer { 50 inline-size: 30px; 51 } 52 nav { 53 background: magenta; 54 block-size: 25px; 55 align-self: flex-start; 56 } 57 article { 58 background: yellow; 59 block-size: 25px; 60 align-self: center; 61 } 62 footer { 63 background: black; 64 block-size: 50px; 65 align-self: flex-end; 66 } 67 </style> 68 69 <body> 70 <!-- Basic one without any margin/border/padding. --> 71 <div class="multicol"> 72 <div class="flexContainer"> 73 <header></header><nav></nav><article></article><footer></footer> 74 </div> 75 </div> 76 77 <!-- Test a container with margin-block-start. --> 78 <div class="multicol"> 79 <div class="flexContainer" style="margin-block-start: 25px"> 80 <header></header><nav></nav><article></article><footer></footer> 81 </div> 82 </div> 83 84 <!-- Test a container not at the top of the column/page. --> 85 <div class="multicol"> 86 <div style="block-size: 25px"></div> 87 <div class="flexContainer"> 88 <header></header><nav></nav><article></article><footer></footer> 89 </div> 90 </div> 91 92 <!-- Test a container with border and padding. --> 93 <div class="multicol"> 94 <div class="flexContainer border-padding"> 95 <header></header><nav></nav><article></article><footer></footer> 96 </div> 97 </div> 98 99 <!-- Test a container with border, padding, and row-gap. --> 100 <div class="multicol"> 101 <div class="flexContainer border-padding" style="row-gap: 5px"> 102 <header></header><nav></nav><article></article><footer></footer> 103 </div> 104 </div> 105 </body> 106 </html>