chromium/third_party/blink/web_tests/external/wpt/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-003.html

<!DOCTYPE html>
<meta charset="utf-8">
<title>CSS Grid Layout Test: Aligning grid items using 'auto' margins and relative sized columns</title>
<link rel="author" title="Javier Fernandez Garcia-Boente" href="mailto:[email protected]">
<link rel="help" title="10.2 Aligning with auto margins" href="https://drafts.csswg.org/css-grid/#auto-margins">
<meta name="assert" content="The 'left' and 'right' margins must be recomputed whenever the grid items's width changes.">
<style>
  #grid {
      display: grid;
      position: relative;
      background: grey;
      grid-template-columns: 40% 60%;
      grid-template-rows: 300px;
      height: 400px;
      width: 500px;
  }
  #grid div {
    margin: 0px auto 0px auto;
  }
  #item1 {
      background: green;
      width: 50px;
      height: 25px;
  }
  #item2 {
      background: blue;
      width: 100px;
      height: 25px;
  }
</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="item1"></div>
    <div id="item2"></div>
</div>
<script>
setup({ explicit_done: true });
document.fonts.ready.then(() => {
    item1.setAttribute("data-offset-x", "75");
    item2.setAttribute("data-offset-x", "300");
    checkLayout('#grid', false);

    item1.style.width = "100px";

    item1.setAttribute("data-offset-x", "50");
    item2.setAttribute("data-offset-x", "300");
    checkLayout('#grid', true);
});
</script>