chromium/third_party/blink/web_tests/fast/css-grid-layout/relayout-justify-items-changed.html

<!DOCTYPE HTML>
<link href="resources/grid.css" rel="stylesheet">
<style>
.grid {
  grid: 100px 100px / 150px;
  width: 150px;
  position: relative;
}
#fromStretch { justify-items: stretch; }
#toStretch { justify-items: end; }
</style>
<script src="../../resources/check-layout.js"></script>
<p>Tests how a justify-items style change requires a relayout of the grid and previously stretched items.</p>
<p>The grid bellow had initially 'justify-items: end' and was changed to 'stretch'.</p>
<div id="toStretch" class="grid">
    <div style="height: 50px;" class="firstRowFirstColumn" data-expected-width="150" data-offset-x="0">
        <div style="width: 50px;"></div>
    </div>
    <div style="height: 50px;" class="secondRowFirstColumn" data-expected-width="150" data-offset-x="0">
        <div style="width: 100px;"></div>
    </div>
</div>
<p>The grid bellow was initially stretched and it has now 'justify-items: center'.</p>
<div id="fromStretch" class="grid">
    <div style="height: 50px;" class="firstRowFirstColumn" data-expected-width="50" data-offset-x="50">
        <div style="width: 50px;"></div>
    </div>
    <div style="height: 50px;" class="secondRowFirstColumn" data-expected-width="100" data-offset-x="25">
        <div style="width: 100px;"></div>
    </div>
</div>
<script>
document.body.offsetLeft;
document.getElementById("toStretch").style.justifyItems = "stretch";
document.getElementById("fromStretch").style.justifyItems = "center";
checkLayout(".grid");
</script>