Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
- This WPT test may be referenced by the following Test IDs:
- /css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-cols-004.html - WPT Dashboard Interop Dashboard
<!DOCTYPE HTML>
<!--
Any copyright is dedicated to the Public Domain.
-->
<html>
<meta charset="utf-8">
<title>CSS Grid Test: Masonry layout column sizing - max-content</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
<link rel="match" href="masonry-intrinsic-sizing-cols-004-ref.html">
<style>
@import "support/masonry-intrinsic-sizing-visual.css";
grid {
display: inline-grid;
gap: 1px 2px;
grid-template-rows: masonry;
border: 1px solid;
padding: 0 1px 0 2px;
vertical-align: top;
width: max-content;
}
.auto grid {
grid-template-columns: repeat(4,auto);
}
.fr grid {
grid-template-columns: 1fr 2fr 1fr 1fr;
}
.mix1 grid {
grid-template-columns: 1fr 2fr min-content max-content;
}
.mix2 grid {
grid-template-columns: 1.1ch auto 1.4ch 1fr;
/* keep fixed values small enough for spanners to have an effect */
}
</style>
<body>
<section class="auto">
<grid title="Wider 1st item 2ch">
<item style="width:2ch">1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item>5 5</item>
</grid>
<grid title="Wrapped 5th item 2ch">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:2ch">5 5</item>
</grid>
<grid title="Wrapped 5th item 2ch in col 2">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:2ch; grid-column:2">5 5</item>
</grid>
<grid title="5th item 4ch in col 2-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:4ch; grid-column:2/span 2">5 5</item>
</grid>
<grid title="5th item in col 2-3, 6th item 5ch in col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="grid-column:2/span 2">5 5</item>
<item style="width:5ch; grid-column:span 3/4">6</item>
</grid>
<grid title="5th item 3ch in col 2-3, 6th item 5ch in col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:3ch; grid-column:span 2/4">5</item>
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
<grid title="5th item span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="grid-column:span 4">5 5</item>
</grid>
<grid title="5th item 6ch span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 4">5 5</item>
</grid>
<grid title="5th item 6ch span 3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 3">5 5</item>
</grid>
</section>
<!-- ditto with 'fr' sizing -->
<section class="fr">
<grid title="Wider 1st item 2ch">
<item style="width:2ch">1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item>5 5</item>
</grid>
<grid title="Wrapped 5th item 2ch">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:2ch">5 5</item>
</grid>
<grid title="Wrapped 5th item 2ch in col 2">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:2ch; grid-column:2">5 5</item>
</grid>
<grid title="5th item 4ch in col 2-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:4ch; grid-column:2/span 2">5 5</item>
</grid>
<grid title="5th item in col 2-3, 6th item 5ch in col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="grid-column:2/span 2">5 5</item>
<item style="width:5ch; grid-column:span 3/4">6</item>
</grid>
<grid title="5th item 3ch in col 2-3, 6th item 5ch in col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:3ch; grid-column:span 2/4">5</item>
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
<grid title="5th item span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="grid-column:span 4">5 5</item>
</grid>
<grid title="5th item 6ch span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 4">5 5</item>
</grid>
<grid title="5th item 6ch span 3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 3">5 5</item>
</grid>
</section>
<!-- ditto with mixed sizing: fr + min/max-content -->
<section class="mix1">
<grid title="Wider 1st item 2ch">
<item style="width:2ch">1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item>5 5</item>
</grid>
<grid title="Wrapped 5th item 2ch">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:2ch">5 5</item>
</grid>
<grid title="Wrapped 5th item 2ch in col 2">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:2ch; grid-column:2">5 5</item>
</grid>
<grid title="5th item 4ch in col 2-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:4ch; grid-column:2/span 2">5 5</item>
</grid>
<grid title="5th item in col 2-3, 6th item 5ch in col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="grid-column:2/span 2">5 5</item>
<item style="width:5ch; grid-column:span 3/4">6</item>
</grid>
<grid title="5th item 3ch in col 2-3, 6th item 5ch in col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:3ch; grid-column:span 2/4">5</item>
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
<grid title="5th item span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="grid-column:span 4">5 5</item>
</grid>
<grid title="5th item 6ch span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 4">5 5</item>
</grid>
<grid title="5th item 6ch span 3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 3">5 5</item>
</grid>
</section>
<!-- ditto with mixed sizing: fixed + auto + fr -->
<section class="mix2">
<grid title="Wider first item 2ch">
<item style="width:2ch">1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item>5 5</item>
</grid>
<grid title="Wrapped last item 2ch">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:2ch">5 5</item>
</grid>
<grid title="Wrapped last item 2ch col 2">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:2ch; grid-column:2">5 5</item>
</grid>
<grid title="Last item 4ch col 2-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:4ch; grid-column:2/span 2">5 5</item>
</grid>
<grid title="Item col 2-3 + Item 5ch col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="grid-column:2/span 2">5 5</item>
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
<grid title="Item 3ch col 2-3 + Item 5ch col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:3ch; grid-column:2/span 2">5 5</item>
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
<grid title="Last item span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="grid-column:span 4">5 5</item>
</grid>
<grid title="Last item 6ch span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 4">5 5</item>
</grid>
<grid title="Last item 6ch span 3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 3">5 5</item>
</grid>
</section>