レイアウト
grid-auto-rows
grid-auto-rows は、grid-template-rows で決めていない行(項目に合わせて自動で足される行)の高さを指定します。
構文
<track-size>+プレビュー
1234
プリセット
見本
右下の角をドラッグするとサイズを変えられます
コード
.box {
display: grid;
grid-template-columns: 1fr 1fr;
grid-auto-rows: 40px 1fr;
}コントロール
grid-auto-rows40px 1fr
トラック 1
minmax()
トラック 2
minmax()
1234
解説
自動で足される行
グリッドの項目が grid-template-rows で書いた行に入りきらないと、ブラウザは下に行を足します。行を書いていなければ、すべての行が自動で足された行です。grid-auto-rows は、その行の高さを決めます。
一覧のように項目の数が決まっていないときは、列だけを grid-template-columns で決めて、行の高さは grid-auto-rows に任せるのがよくある書き方です。
値の書き方
行の高さを書きます。値は grid-template-rows と同じで、長さ・%・fr・auto・min-content・max-content・minmax() を使えます。初期値は auto で、中身に合わせた高さになります(箱の高さが余れば伸びます)。
minmax(48px, auto):少なくとも 48px にして、中身が多ければ伸ばします。カードの一覧で高さの下限をそろえるときに使います。1fr:箱の高さが決まっていれば、余った高さを行で等分します。決まっていなければ、いちばん高い中身に合わせて行の高さをそろえます。
複数の高さを書くと繰り返す
スペースで区切って複数の高さを書くと、自動で足される行に順番に使い、最後まで使ったら最初に戻ります。40px 1fr なら、40px の行と 1fr の行が交互に並びます。
このページのプレビューは、補助の宣言で display: grid と grid-template-columns: 1fr 1fr にして、行は決めずに 4 つの項目を入れています。項目が 2 行に分かれるので、足された 2 つの行の高さが変わります。
このページで扱わない書き方
fit-content() は、このページのコントロールではまだ扱っていませんが、コードには書けます。repeat() と none は grid-auto-rows には書けません。