CSSグリッドにおける行と列の短縮記法
行と列のサイズを簡潔に指定すると便利な場合があります。そのためには、親要素で指定するgrid-templateプロパティを使用します。これは、grid-template-rowsとgrid-template-columnsの2つのプロパティを短縮して記述する形式です。
グリッドコンテナの行と列はスラッシュで区切って指定し、そのサイズは測定単位で定義されます。
例
grid-templateプロパティを使ってテーブルを作成しましょう:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
<div>7</div>
<div>8</div>
<div>9</div>
</div>
#parent {
display: grid;
grid-template: 1fr 1fr 1fr / 1fr 1fr 1fr;
border: 2px solid #696989;
padding: 10px;
width: 600px;
height: 400px;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
:
例
では、2行目と3行目に同じ幅を設定し、各列には異なる幅を設定してみましょう:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
<div>7</div>
<div>8</div>
<div>9</div>
</div>
#parent {
display: grid;
grid-template: 60px 1fr 60px / 20% 1fr 15%;
border: 2px solid #696989;
padding: 10px;
width: 600px;
height: 300px;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
:
例
前の例のテーブルで、一番上の行の幅を2fr、最初の列の幅を0.5frに変更してみましょう:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
<div>7</div>
<div>8</div>
<div>9</div>
</div>
#parent {
display: grid;
grid-template: 2fr 1fr 1fr / 0.5fr 1fr 1fr;
border: 2px solid #696989;
padding: 10px;
width: 600px;
height: 400px;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
:
実践タスク
次のタイルを実装してください:
次のタイルを実装してください:
次のタイルを実装してください:
次のタイルを実装してください:
次のタイルを実装してください: