グリッドレイアウト Grid Layout
CSS Gridを使って要素を行列に整列配置する基本的なレイアウトパターン。
ライブデモ
1
2
3
4
5
6
7
8
9
ソースコード
<div class="demo-grid">
<div class="demo-grid-item">1</div>
<div class="demo-grid-item">2</div>
<div class="demo-grid-item">3</div>
<div class="demo-grid-item">4</div>
<div class="demo-grid-item">5</div>
<div class="demo-grid-item">6</div>
<div class="demo-grid-item">7</div>
<div class="demo-grid-item">8</div>
<div class="demo-grid-item">9</div>
</div>.demo-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 12px;
}
.demo-grid-item {
padding: 24px; text-align: center; border-radius: 10px;
background: color-mix(in srgb, var(--ui-primary) 8%, #fff);
border: 1px solid color-mix(in srgb, var(--ui-primary) 20%, transparent);
font-size: 18px; font-weight: 700; color: var(--ui-primary);
transition: all 0.2s;
}
.demo-grid-item:hover {
background: color-mix(in srgb, var(--ui-primary) 15%, #fff);
transform: translateY(-2px);
box-shadow: 0 4px 12px color-mix(in srgb, var(--ui-primary) 20%, transparent);
}AIプロンプト
Basic
CSS Gridを使ったグリッドレイアウトを作ってください。3カラムの均等な格子状に要素を配置します。
Custom
以下の仕様でグリッドレイアウトを実装してください。 - レスポンシブ(モバイル1列、タブレット2列、PC3列) - auto-fillとminmaxで自動列数調整 - プライマリカラー: #2563eb - ホバー時にカードが浮き上がるエフェクト - gap: 16px - 特定のアイテムを2カラム/2ロウにスパン
Advanced
アクセシビリティ対応のグリッドレイアウトを実装してください。 - CSS Grid subgridで整列されたコンテンツ - container queriesでコンポーネントレベルのレスポンシブ - フォーカス可能な要素の論理的な順序(DOMの順序とビジュアルの一致) - prefers-reduced-motion対応(ホバーアニメーション無効化) - ハイコントラストモード対応 - グリッドアイテムのドラッグ&ドロップ並び替え - 仮想化による大量アイテムのパフォーマンス最適化