CSSのsubgridがすべてのブラウザにサポートされたので、カード内の見出しやテキストを簡単に揃えることができます

先日の記事(Chrome 117でサポートされたCSSの6つの新しい機能とプロパティ)で触れましたがCCSS Gridのsubgrid値が、grid-template-columnsgrid-template-rowsの2つで設定できるようになりました。Safari, Firefoxではすでにサポートされていたので、これで主要ブラウザのすべてで利用できます。

CSSのサブグリッド(subgrid)を使用すると、下記のように子要素(画像・見出し・テキスト)の水平グリッドも簡単に揃えることができます。

デモのキャプチャ

CSSのサブグリッド(subgrid)で子要素のグリッドを揃える

3つのカードがあり、それぞれに画像・見出し・テキストがあります。subgrid以前は、子要素(画像・見出し・テキスト)をそれぞれのカードで揃えることはできませんでした。もしくは、個別に一つひとつ調整する必要がありました。

デモのキャプチャ

subgrid以前: 水平のグリッドが揃っていない

subgridを使用すると、子要素のグリッドを揃えることが簡単にできます。

デモのキャプチャ

subgrid以後: 水平のグリッドが美しく揃う

実際の動作は、デモページでご覧ください。「Use Subgrid?」のチェックボックスをオンにすると、subgridが適用されます。
※Chrome 117, Edge 117, Safari, Firefoxでご覧ください。

See the Pen
Take CSS Subgrid for a spin!
by coliss (@coliss)
on CodePen.

CSSのサブグリッド(subgrid)のサポートブラウザ

CSSのサブグリッド(subgrid)のサポートブラウザは、下記の通りです。

CSSのサブグリッド(Subgrid)のサポートブラウザ

CSSのサブグリッド(subgrid)のサポートブラウザ

デモページの解説

まずは、HTMLから。main要素に3つのカードをarticle要素で実装しています。各カードには、画像・見出し・テキストのコンテンツがあります。

articledisplay: grid;を使用して、親レイアウトコンテナによって定義されたトラックを使用します。これにより、カード内のコンテンツが配置しやすくなります。そして、grid-template-rowsの値にsubgridを設定します。親内の行を設定する必要はありません、親からの暗黙的なグリッドを使用して配置されます。

main要素のスタイルは、下記の通りです。

元ネタは下記ポストより。

sponsors

top of page

©2024 coliss