お問い合わせ・無料相談
WEBのこと 2024.03.08

グリッドレイアウト(CSS Grid)で謎の余白が発生した時に設定するプロパティ

WRITER
Sasayama Sayaka ディレクター
Sasayama Sayaka

ディレクター。ウェブデザイン技能士(2級)/HTML5プロフェッショナル認定資格 レベル1・レベル2。

グリッドレイアウト(CSS Grid)で謎の余白が発生した時に設定するプロパティ

グリッドレイアウト(CSS Grid)を使い始めた時、意図しない謎の余白が発生して困ったことがあります。
今回のブログはその時の原因と対応についての備忘録です。

謎の余白が発生

グリッドレイアウトのgrid-template-rowsの設定を説明する画像① grid-template-rowsを設定しない場合に予期せぬ余白が発生することがある

記のようにグリッドレイアウトの表の下にボタンを配置した時、なぜか大きな余白が発生して「なぜ?」となりました。
理由を調べると、「grid-template-rows」というプロパティの設定をしていなかったことが原因でした。

grid-template-rowsとは

横行の高さを指定するプロパティです。
初期値は「none」です。

グリッドレイアウトのgrid-template-rowsの設定を説明する画像② grid-template-rowsを設定しない場合にすべてのグリッドアイテムの高さは自動で同じになる
グリッドレイアウトのgrid-template-rowsの設定を説明する画像③ grid-template-rows: auto;にすると他のアイテムに高さを合わせることが無くなるので、予期せぬ余白も無くなる

グリッドアイテムの高さが異なる場合、自動で高さを調整したい場合は「grid-template-rows: auto;」を指定すると予期せぬ余白に悩まされることがなくなります。

最後に

グリッドレイアウトはプロパティが多く、考えた通りのレイアウトにするのが難しいこともあります。
とりあえず私のようにflexのような感覚で使っていると上記のような事態に陥りやすい気がするので、備忘録として記録しておきます。

JOURNALが気に入ったら「いいね」してね!

Contact

ブランディング・WEB制作・運用まで、まずは一度お話を聞かせてください。 初回のご相談は無料で承っています。

お電話

0120-622835

10:00〜18:00 / 土日祝休

メールフォーム

お問い合わせはこちら