| <!DOCTYPE html> | |
| <title>CSS Grid: empty grid without explicit tracks.</title> | |
| <link rel="author" title="Sergio Villar" href="mailto:svillar@igalia.com"/> | |
| <link rel="help" href="https://drafts.csswg.org/css-grid-1/#abspos"/> | |
| <link rel="issue" href="https://crrev.com/562167"/> | |
| <meta name="assert" content="Test ensures that the grids with no in-flow items are actually empty."/> | |
| <link href="/css/support/grid.css" rel="stylesheet"/> | |
| <link href="/css/support/width-keyword-classes.css" rel="stylesheet"/> | |
| <link href="/fonts/ahem.css" rel="stylesheet" type="text/css"/> | |
| <style> | |
| .gridWithAbsolutePositionedItem { | |
| /* Ensures that the grid container is the containing block of the absolutely positioned grid children. */ | |
| position: relative; | |
| } | |
| .grid { | |
| grid-auto-columns: 200px; | |
| grid-auto-rows: 200px; | |
| } | |
| .item { | |
| position: absolute; | |
| font: 10px/1 Ahem; | |
| } | |
| </style> | |
| <script src="/resources/testharness.js"></script> | |
| <script src="/resources/testharnessreport.js"></script> | |
| <script src="/resources/check-layout-th.js"></script> | |
| <script> | |
| function addRemoveItem() | |
| { | |
| var gridItem = document.createElement("div"); | |
| gridItem.style.width = "100px"; | |
| gridItem.style.height = "100px"; | |
| gridItem.style.backgroundColor = "red"; | |
| var gridElement = document.getElementById("dynamicGrid"); | |
| gridElement.appendChild(gridItem); | |
| gridElement.removeChild(gridItem); | |
| } | |
| setup({ explicit_done: true }); | |
| function doTest() { | |
| addRemoveItem(); | |
| checkLayout(".grid"); | |
| } | |
| </script> | |
| <body onload="document.fonts.ready.then(() => { doTest(); })"> | |
| <div class="grid min-content" data-expected-width="0" data-expected-height="0"></div> | |
| <div class="grid min-content gridWithAbsolutePositionedItem" data-expected-width="0" data-expected-height="0"> | |
| <div class="item" data-expected-width="40" data-expected-height="10">XXXX</div> | |
| </div> | |
| <div id="dynamicGrid" class="grid min-content" data-expected-width="0" data-expected-height="0"></div> | |
| <div class="grid min-content" style="grid-template-rows: 100px;" data-expected-width="0" data-expected-height="100"></div> | |
| <div class="grid min-content" style="grid-template-rows: auto;" data-expected-width="0" data-expected-height="0"></div> | |
| <div class="grid min-content" style="grid-template-rows: 1fr;" data-expected-width="0" data-expected-height="0"></div> | |
| <div class="grid min-content" style="grid-template-columns: 100px;" data-expected-width="100" data-expected-height="0"></div> | |
| <div class="grid min-content" style="grid-template-columns: auto;" data-expected-width="0" data-expected-height="0"></div> | |
| <div class="grid min-content" style="grid-template-columns: 1fr;" data-expected-width="0" data-expected-height="0"></div> | |
| </body> |