ECサイトの商品一覧で使われる4列グリッドレイアウト。整然と商品カードを並べる構成をCSS Gridで実装します。
<div class="grid-container"> <div class="item-1">product-1</div> <div class="item-2">product-2</div> <div class="item-3">product-3</div> <div class="item-4">product-4</div> <div class="item-5">product-5</div> <div class="item-6">product-6</div> <div class="item-7">product-7</div> <div class="item-8">product-8</div> </div>
.grid-container {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-template-rows: repeat(2, 1fr);
gap: 16px;
width: 100%;
height: 500px;
}
.item-1 { grid-area: 1 / 1 / 2 / 2; }
.item-2 { grid-area: 1 / 2 / 2 / 3; }
.item-3 { grid-area: 1 / 3 / 2 / 4; }
.item-4 { grid-area: 1 / 4 / 2 / 5; }
.item-5 { grid-area: 2 / 1 / 3 / 2; }
.item-6 { grid-area: 2 / 2 / 3 / 3; }
.item-7 { grid-area: 2 / 3 / 3 / 4; }
.item-8 { grid-area: 2 / 4 / 3 / 5; }
@media (max-width: 768px) {
.grid-container {
grid-template-columns: 1fr;
grid-template-rows: auto;
height: auto;
}
.grid-container > * {
grid-area: auto;
}
}ECサイトの商品一覧は4列が最も視認性とクリック率のバランスが良いとされています。grid-template-columns: repeat(4, 1fr)で均等4列を作り、各商品カードに画像・タイトル・価格・CTAボタンを配置します。レスポンシブ対応ではrepeat(auto-fill, minmax(240px, 1fr))に変えることで、タブレットでは3列、スマホでは2列へと自動で折り返すように設計できます。
ECサイトの商品一覧ページ、検索結果ページ、ギャラリーページなど、均等なサイズで多数のアイテムを表示したい場面で使います。
列数・行数・Gap・セルの範囲を自由に変更したい場合は、CSS Grid Generatorでドラッグ操作によりオリジナルのグリッドを作成できます。詳しい使い方は使い方ガイドをご覧ください。
ジェネレーターで自分のグリッドを作る →