聖杯のレイアウト

このクラシックな聖杯のレイアウトには、ヘッダー、フッター、左側のサイドバー、右側のサイドバー、メイン コンテンツがあります。先ほどのレイアウトに似ていますが、サイドバーが追加されました。

1 行のコードでこのグリッド全体を記述するには、grid-template プロパティを使用します。これにより、行と列の両方を同時に設定できます。

プロパティと値のペアは grid-template: auto 1fr auto / auto 1fr auto です。1 番目と 2 番目のスペース区切りリストの間のスラッシュは、行と列の間の区切りです。

.parent {
  display
: grid;
  grid
-template: auto 1fr auto / auto 1fr auto;
}

前の例(ヘッダーとフッターのコンテンツのサイズが自動設定されていた)と同様に、左右のサイドバーは、子の固有のサイズに基づいて自動的にサイズ設定されます。ただし、今回は縦長(高さ)ではなく横長のサイズ(幅)です。

<div class="parent">
   
<header class="section coral">Header</header>
   
<div class="left-side section blue">Left Sidebar</div>
   
<main class="section green"> Main Content</main>
   
<div class="right-side section yellow">Right Sidebar</div>
   
<footer class="section coral">Footer</footer>
 
</div>

       
.parent {
 
display: grid;
 
grid-template: auto 1fr auto / auto 1fr auto;
}

header
{
 
padding: 2rem;
 
grid-column: 1 / 4;
}

.left-side {
 
grid-column: 1 / 2;
}

main
{
 
grid-column: 2 / 3;
}

.right-side {
 
grid-column: 3 / 4;
}

footer
{
 
grid-column: 1 / 4;
}