Grid auto-fill width
by Csaba Hellinger
HTML
<div class="grid-container">
<div class="grid-item">Item 1</div>
<div class="grid-item">Item 2</div>
<div class="grid-item">Item 3</div>
<div class="grid-item">Item 4</div>
<div class="grid-item">Item 5</div>
<div class="grid-item">Item 6</div>
<div class="grid-item">Item 7</div>
<div class="grid-item">Item 8</div>
<div class="grid-item">Item 9</div>
<div class="grid-item">Item 10</div>
<div class="grid-item">Item 11</div>
<div class="grid-item">Item 12</div>
</div>
CSS
.grid-container {
--min-size: min(45vw, 180px);
--max-size: 280px;
display: grid;
grid-template-columns: repeat(auto-fill, minmax(var(--min-size), 1fr));
gap: 10px;
justify-content: center;
}
.grid-item {
background-color: #f0f0f0;
aspect-ratio: 1 / 1;
max-width: var(--max-size);
}