grid-fragmentation-030.html (4218B)
1 <!DOCTYPE HTML> 2 <!-- 3 Any copyright is dedicated to the Public Domain. 4 http://creativecommons.org/publicdomain/zero/1.0/ 5 --> 6 <html><head> 7 <meta charset="utf-8"> 8 <title>CSS Grid Test: Fragmentation of a height:auto, growing min-content row that makes the grid container break</title> 9 <link rel="author" title="Mats Palmgren" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1144096"> 10 <link rel="help" href="https://drafts.csswg.org/css-grid/#pagination"> 11 <link rel="match" href="grid-fragmentation-030-ref.html"> 12 <style type="text/css"> 13 html,body { 14 color:black; background-color:white; font-size:16px; padding:0; margin:0; 15 } 16 body { overflow:hidden; } 17 18 .columns { 19 position:relative; 20 -ms-columns: 5; 21 -webkit-columns: 5; 22 columns: 5; 23 -ms-column-fill: auto; 24 -webkit-column-fill: auto; 25 column-fill: auto; 26 border: 2px solid salmon; 27 margin-bottom: 5px; 28 } 29 30 .grid { 31 display: grid; 32 max-height: 20px; 33 grid-template-columns: 30px 30px 30px; 34 grid-gap: 12px; 35 border:5px solid; 36 align-content: start; 37 } 38 span { background:lime; border:1px solid black; } 39 x { display:block; height:20px; } 40 .avoid-break { page-break-inside:avoid; break-inside:avoid; } 41 42 i { display:block; height:10px; margin-top:7px; background:blue; } 43 </style> 44 </head> 45 <body> 46 47 <div class="columns" style="height: 100px/*trigger IsInlineBreakBefore() for the item: grow the row*/"> 48 <div style="padding-top:1px; background:grey"> 49 <div class="grid" style="grid-template-rows: min-content 10px; grid-gap:0;"> 50 <span></span> 51 <span class="avoid-break" style="height:60px"><i></i><x></x><i></i><x></x><i></i><x></x></span> 52 <span style="grid-row:2;"><x></x></span> 53 </div> 54 </div></div> 55 56 <div class="columns" style="height: 100px/*trigger IsInlineBreakBefore() for the item: grow the row*/"> 57 <div style="padding-top:1px; background:grey"> 58 <div class="grid" style="grid-template-rows: min-content 10px; grid-gap:0; max-height:90px;"> 59 <span></span> 60 <span class="avoid-break" style="height:60px"><i></i><x></x><i></i><x></x><i></i><x></x></span> 61 <span style="grid-row:2;"><x></x></span> 62 </div> 63 </div></div> 64 65 <div class="columns" style="height: 100px/*trigger IsInlineBreakBefore() for the item: grow the row*/"> 66 <div style="padding-top:1px; background:grey"> 67 <div class="grid" style="grid-template-rows: min-content 10px; grid-gap:0; max-height:89px;"> 68 <span></span> 69 <span class="avoid-break" style="height:60px"><i></i><x></x><i></i><x></x><i></i><x></x></span> 70 <span style="grid-row:2;"><x></x></span> 71 </div> 72 </div></div> 73 74 <div class="columns" style="height: 100px/*trigger IsInlineBreakBefore() for the item: grow the row*/"> 75 <div style="padding-top:1px; background:grey"> 76 <div class="grid" style="grid-template-rows: min-content 10px; grid-gap:0; max-height:94px;"> 77 <span></span> 78 <span class="avoid-break" style="height:60px"><i></i><x></x><i></i><x></x><i></i><x></x></span> 79 <span style="grid-row:2;"><x></x></span> 80 </div> 81 </div></div> 82 83 <div class="columns" style="height: 100px/*trigger IsInlineBreakBefore() for the item: grow the row*/"> 84 <div style="padding-top:1px; background:grey"> 85 <div class="grid" style="grid-template-rows: min-content 10px; grid-gap:0; max-height:95px;"> 86 <span></span> 87 <span class="avoid-break" style="height:60px"><i></i><x></x><i></i><x></x><i></i><x></x></span> 88 <span style="grid-row:2;"><x></x></span> 89 </div> 90 </div></div> 91 92 <div class="columns" style="height: 100px/*trigger IsInlineBreakBefore() for the item: grow the row*/"> 93 <div style="padding-top:1px; background:grey"> 94 <div class="grid" style="grid-template-rows: min-content 10px; grid-gap:0; max-height:200px;"> 95 <span></span> 96 <span class="avoid-break" style="height:60px"><i></i><x></x><i></i><x></x><i></i><x></x></span> 97 <span style="grid-row:2;"><x></x></span> 98 </div> 99 </div></div> 100 101 <div class="columns" style="height: 100px/*trigger IsInlineBreakBefore() for the item: grow the row*/"> 102 <div style="padding-top:1px; background:grey"> 103 <div class="grid" style="grid-template-rows: min-content 10px; grid-gap:0; max-height:none;"> 104 <span></span> 105 <span class="avoid-break" style="height:60px"><i></i><x></x><i></i><x></x><i></i><x></x></span> 106 <span style="grid-row:2;"></span> 107 </div> 108 </div></div> 109 110 111 </body> 112 </html>