mirror of
https://github.com/servo/servo.git
synced 2025-10-17 08:49:21 +01:00
114 lines
2.9 KiB
HTML
114 lines
2.9 KiB
HTML
<!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: space-between;
|
|
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>
|