<!DOCTYPE HTML>
<!--
     Any copyright is dedicated to the Public Domain.
     http://creativecommons.org/publicdomain/zero/1.0/
-->
<html><head>
  <meta charset="utf-8">
  <title>Reference: Grid axis fragmentation with column masonry layout</title>
  <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
  <style>
html,body {
  color:black; background-color:white; font:10px/1 monospace; padding:0; margin:0;
}
wrapper {
  display: block;
  width: 600px;
  height: 600px;
  overflow: hidden;
}

.columns {
  columns: 3;
  column-fill: auto;
  background: lightgrey;
  margin-bottom: 15px;
}

.grid {
  display: grid;
  grid: 20px auto 30px / auto;
  border: solid;
  border-width: 3px 1px 7px 5px;
  padding: 1px 3px 5px 7px;
  gap: 1px 5px;
}

x {
  background: cyan;
  min-width: 20px;
  min-height: 10px;
}
y {
  background: blue;
  width: 35px;
}
z {
  background: gray;
  width: 40px;
}
masonry-track {
  display: grid;
  justify-content: start;
  column-gap: 5px;
}
</style>
</head>
<body>
<wrapper style="display:none">
<div class="columns" style="height:90px">
  <div class="grid">
    <masonry-track><x></x><y></y><y></y><x></x></masonry-track>
    <masonry-track><x></x><x></x><x></x><z></z></masonry-track>
    <masonry-track><z></z><z></z><x></x><z></z></masonry-track>
  </div>
</div>
<div class="columns" style="height:68px">
  <div class="grid">
    <masonry-track><x></x><y></y><y></y><x></x></masonry-track>
    <masonry-track><x></x><x></x><x></x><z></z></masonry-track>
    <masonry-track><z></z><z></z><x></x><z></z></masonry-track>
  </div>
</div>
<div class="columns" style="height:48px">
  <div class="grid">
    <masonry-track><x></x><y></y><y></y><x></x></masonry-track>
    <masonry-track><x></x><x></x><x></x><z></z></masonry-track>
    <masonry-track><z></z><z></z><x></x><z></z></masonry-track>
  </div>
</div>
<div class="columns" style="height:38px">
  <div class="grid">
    <masonry-track><x></x><y></y><y></y><x></x></masonry-track>
    <masonry-track><x></x><x></x><x></x><z></z></masonry-track>
    <masonry-track><z></z><z></z><x></x><z></z></masonry-track>
  </div>
</div>
<div class="columns" style="height:28px">
  <div class="grid">
    <masonry-track><x></x><y></y><y></y><x></x></masonry-track>
    <masonry-track><x></x><x></x><x></x><z></z></masonry-track>
    <masonry-track><z></z><z></z><x></x><z></z></masonry-track>
  </div>
</div>
<div class="columns" style="height:18px">
  <div class="grid">
    <masonry-track><x></x><y></y><y></y><x></x></masonry-track>
    <masonry-track><x></x><x></x><x></x><z></z></masonry-track>
    <masonry-track><z></z><z></z><x></x><z></z></masonry-track>
  </div>
</div>
</wrapper>

<script>
let wrapper = document.querySelectorAll("wrapper")[0];
let grids = document.querySelectorAll(".grid");
for (let e of grids) {
  for (let track of e.children) {
    track.style.gridTemplateColumns = "repeat(" + track.children.length + ",auto)";
  }
}
wrapper.style.display="";
</script>
</body>
</html>
