| <!DOCTYPE html> |
| <meta charset="utf-8"> |
| <title>CSS Grid Test: Subgridded item placement invalidation</title> |
| <link rel="author" title="Ethan Jimenez" href="mailto:ethavar@microsoft.com"> |
| <link rel="help" href="https://drafts.csswg.org/css-grid-2/#track-sizing"> |
| <style> |
| html, body { |
| margin: 0; |
| padding: 0; |
| } |
| #grid { |
| width: 200px; |
| display: grid; |
| background: lightgray; |
| grid-template-columns: [start] auto [end] 1fr; |
| grid-template-rows: 100px; |
| } |
| #subgrid { |
| display: grid; |
| grid-column: 1 / -1; |
| grid-template-columns: subgrid; |
| } |
| #item { |
| width: 50px; |
| background: lightblue; |
| border: 5px solid gray; |
| grid-column: start / end; |
| } |
| </style> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="/resources/check-layout-th.js"></script> |
| <div id="grid"> |
| <div id="subgrid"> |
| <div id="item" data-offset-x="140"></div> |
| </div> |
| </div> |
| <script> |
| "use strict"; |
| |
| let grid = document.getElementById("grid"); |
| let item = document.getElementById("item"); |
| |
| // Computing an offset forces layout. |
| let item_offset = item.offsetLeft; |
| |
| grid.style.gridTemplateColumns = "1fr [start] auto [end]"; |
| item_offset = item.offsetLeft; |
| checkLayout("#item"); |
| </script> |