CSS Gridで、Webページでよく使うレイアウトを実装したシンプルなHTML/CSSのテンプレートのまとめ

CSS Gridを使って、ヘッダ・フッタ付きの2カラム、3カラム、カード型といったレイアウトをはじめ、テキストはグリッドに揃えて画像は全幅で表示など、Webページでよく使うレイアウトを実装するシンプルなテンプレートを紹介します。

来年からは、CSS Gridで実装するのが主流になりそうですね。

サイトのキャプチャ

CSS Grid Starter Layouts

CSS GridとFlexbox、それぞれどう使いこなせばいいだろうという方は、下記ページが参考になると思います。

下記は各ポイントを意訳したものです。
※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。

CSS Gridで実装するヘッダ・フッタ・3カラム(聖杯レイアウト)

左右のサイドバーとコンテンツの3カラムをヘッダとフッタで挟んだ3カラムのレイアウトです。聖杯のようなので、Holy Grail Layout(聖杯レイアウト)と呼ばれています。

コンテンツ可変型

ビューポートが小さくなるにつれ、コンテンツの幅が変化するようにCSS Gridで実装します。ビューポートの幅がある程度ないと成立しないため、スマホ対応には次の「コンテナ積み重ね型」が適しています。

デモのキャプチャ

CSS Grid - Holy Grail 2

コンテナ積み重ね型

ビューポートが小さくなるにつれ、各コンテナが積み重なるようにCSS Gridで実装します。スマホにも対応するのであれば、こちらのレイアウトの方が適しています。

デモのキャプチャ

CSS Grid: Holy Grail Layout - Responsive

CSS Gridで実装するヘッダ・フッタ・2カラム

サイドバーとコンテンツの2カラムをヘッダとフッタで挟んだブログでよく見かけるレイアウトです。

Flexible型

ビューポートが小さくなっても、レイアウトの構造は変化せず、各コンテナが小さくなるようにCSS Gridで実装します。ビューポートの幅がある程度ないと成立しないため、スマホ対応には次の「Responsive型」が適しています。

デモのキャプチャ

CSS Grid: Header, Footer with 2-Column (Flexible)

Responsive型

ビューポートが小さくなるにつれ、各コンテナが積み重なるレイアウトをCSS Gridで実装します。スマホにも対応するのであれば、こちらのレイアウトの方が適しています。

デモのキャプチャ

CSS Grid: Header, Footer with 2-Column (Responsive)

CSS Gridで実装するカード型レイアウト

各コンテナがグリッドに沿って配置されるレイアウトをCSS Gridで実装します。カードを成り行きで配置したい時に便利なレイアウトです。

デモのキャプチャ

CSS Grid Evenly Distributed, As Many As Needed

CSS Gridで実装する要素がグリッドからはみ出したレイアウト

テキストの両端にはマージンがあり、テキストの間に配置された画像は全幅で表示、のように要素がグリッドからはみ出したレイアウトをCSS Gridで実装します。
実装の仕組みは、Breaking out with CSS Grid explainedをチェックしてみてください。

デモのキャプチャ

CSS Grid: Article with Breakout

CSS Gridで実装するカレンダー型レイアウト

CSS Gridはカレンダーのようなグリッドにも適しています。

デモのキャプチャ

CSS Grid: Calendar

CSS Gridで実装するモノポリー型レイアウト

従来の実装方法ではこういったレイアウトには不要なHTMLが必要でしたが、CSS GridではクリーンなHTMLで簡単に実装できます。

デモのキャプチャ

CSS Grid: Monopoly Board

top of page

©2017 coliss