flex-and-intrinsic-sizes-001.html (3364B)
1 <!DOCTYPE html> 2 <title>CSS Grid: track sizing algo with size restrictions and intrinsic sizes.</title> 3 <link rel="author" title="Sergio Villar" href="mailto:svillar@igalia.com"/> 4 <link rel="help" href="https://drafts.csswg.org/css-grid-1/#layout-algorithm"/> 5 <meta name="assert" content="This test ensures that fr tracks are properly sized whenever grid has intrinsic sizes."/> 6 <link rel="issue" href="https://crbug.com/423743"/> 7 <link href="/css/support/width-keyword-classes.css" rel="stylesheet"/> 8 <link href="/css/support/height-keyword-classes.css" rel="stylesheet"/> 9 <link href="/css/support/grid.css" rel="stylesheet"/> 10 <link rel="stylesheet" type="text/css" href="/fonts/ahem.css" /> 11 12 <style> 13 .container { 14 width: 100px; 15 height: 100px; 16 } 17 18 .grid { 19 grid-template-columns: 1fr; 20 grid-template-rows: 1fr; 21 } 22 23 div { font: 10px/1 Ahem; } 24 </style> 25 26 <script src="/resources/testharness.js"></script> 27 <script src="/resources/testharnessreport.js"></script> 28 <script src="/resources/check-layout-th.js"></script> 29 <script type="text/javascript"> 30 setup({ explicit_done: true }); 31 </script> 32 33 <body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })"> 34 35 <div class="container"> 36 <div class="grid" data-expected-width="100" data-expected-height="10"> 37 <div>XXX XXX</div> 38 </div> 39 </div> 40 41 <div class="container"> 42 <div class="grid min-content" data-expected-width="30" data-expected-height="20"> 43 <div>XXX XXX</div> 44 </div> 45 </div> 46 47 <div class="container"> 48 <div class="grid min-content" data-expected-width="0" data-expected-height="20" style="grid-template-columns:minmax(0, 1fr);"> 49 <div>XXX XXX</div> 50 </div> 51 </div> 52 53 <div class="container"> 54 <div class="grid max-content" data-expected-width="70" data-expected-height="10"> 55 <div>XXX XXX</div> 56 </div> 57 </div> 58 59 <div class="container"> 60 <div class="grid fit-content" data-expected-width="70" data-expected-height="10"> 61 <div>XXX XXX</div> 62 </div> 63 </div> 64 65 <div class="min-content"> 66 <div class="grid" data-expected-width="40" data-expected-height="50"> 67 <div>XXX XXXX XX X XX XXX</div> 68 </div> 69 </div> 70 71 <div class="grid container" data-expected-width="100" data-expected-height="100"> 72 <div style="display: grid; grid-template-columns: 3fr; grid-template-rows: 2fr;" data-expected-width="100" data-expected-height="100"> 73 <div>XXX XXXX XX X XX XXX</div> 74 </div> 75 </div> 76 77 <div class="grid" style="grid; grid: 1fr 2fr / 2fr 1fr; width: 300px; height: 300px;" data-expected-width="300" data-expected-height="300"> 78 <div class="firstRowFirstColumn" style="display: grid; grid: 1fr 3fr / 3fr 1fr;" data-expected-width="200" data-expected-height="100"> 79 <div style="border: 2px solid magenta;" data-expected-width="150" data-expected-height="25">XXXX</div> 80 <div class="secondRowSecondColumn" style="border: 2px solid cyan;" data-expected-width="50" data-expected-height="75">XXXX XX XX</div> 81 </div> 82 <div class="secondRowSecondColumn" style="display: grid; grid: 3fr 4fr / 4fr 3fr;" data-expected-width="100" data-expected-height="200"> 83 <div style="border: 2px solid lime;" data-expected-width="56" data-expected-height="86">XXX XX X</div> 84 <div class="secondRowSecondColumn" style="border: 2px solid navy;" data-expected-width="44" data-expected-height="114">XXXX XXX XXXX XXX XXXX</div> 85 </div> 86 </div> 87 88 </body>