5-3-1_Grid 基本プロパティ チートシート

CSS Gridは、行 (row) と列 (column) を使って二次元のレイアウトを定義し、アイテムを柔軟に配置するための強力なレイアウトシステムです。

1. Gridコンテナ(親要素)に適用するプロパティ

これらのプロパティは、グリッド構造全体と、その中のアイテムの配置方法を制御します。

プロパティ役割と動作
displaygrid要素をGridコンテナに変換します。これがなければGridは動作しません。
grid-template-columns1fr 1fr 1frなど列(Column)の幅を定義します。値の数だけ列が生成されます。
grid-template-rowsauto 100px 1frなど行(Row)の高さを定義します。値の数だけ行が生成されます。
fr 単位1fr 2frグリッド内の利用可能な残りの空間の比率を定義します。この例では、1:2の比率で空間を分け合います。
repeat() 関数repeat(3, 1fr)複数の行または列を同じサイズで繰り返すための簡潔な記法(1fr 1fr 1frと同じ)。
grid-gap (または gap)10px または 10px 20px行と列の**間隔(ガター)**を定義します。一行の値は両方、二行の値は (row-gap) (column-gap) を意味します。
grid-template-areas"header header" "sidebar main"グリッドに名前付きエリアを定義し、アイテムを名前で配置できるようにします。
justify-itemscenter, start, end, stretchグリッドセル内で、アイテムを**インライン方向(列軸)**に整列します。
align-itemscenter, start, end, stretchグリッドセル内で、アイテムを**ブロック方向(行軸)**に整列します。
justify-contentcenter, space-betweenなどグリッド全体をインライン方向に整列します(グリッドの合計サイズがコンテナより小さい場合)。
align-contentcenter, space-betweenなどグリッド全体をブロック方向に整列します(グリッドの合計サイズがコンテナより小さい場合)。

2. Gridアイテム(子要素)に適用するプロパティ

これらのプロパティは、個々の子要素をグリッド構造内の特定の位置に配置するために使用されます。

プロパティ役割と動作
grid-column-start数値 または 名前アイテムが開始する列線を定義します。
grid-column-end数値 または 名前アイテムが終了する列線を定義します。
grid-columnstart / endgrid-column-startgrid-column-endショートハンド。例: 1 / span 3 (1行目から3列分を占有)
grid-row-start数値 または 名前アイテムが開始する行線を定義します。
grid-row-end数値 または 名前アイテムが終了する行線を定義します。
grid-rowstart / endgrid-row-startgrid-row-endショートハンド。例: 2 / 4 (2行線から4行線までを占有)
grid-area名前コンテナで定義された名前付きエリアにアイテムを配置します。 (grid-template-areasを使用した場合)
justify-selfcenter, start, end, stretch個々のアイテムを、自身のグリッドセル内で**インライン方向(列軸)**に整列します(親のjustify-itemsを上書き)。
align-selfcenter, start, end, stretch個々のアイテムを、自身のグリッドセル内で**ブロック方向(行軸)**に整列します(親のalign-itemsを上書き)。

【ショートハンドの推奨】

grid-columngrid-rowを組み合わせたgrid-areaは、非常に便利です。

ショートハンド意味
grid-area: 1 / 2 / 3 / 4;grid-row-start (1) / grid-column-start (2) / grid-row-end (3) / grid-column-end (4) の順に定義します。