トップページ  > CSS  > grid-template-columns

★CSSリファレンス

grid-template-columns …… グリッドトラックの横方向のサイズリストを指定する
Google Chrome Safari Firefox Opera
広告

grid-template-columnsプロパティは、グリッドトラックの横方向のサイズリストを指定する際に使用します。 グリッドトラックとは、隣接する2本のグリッドラインで区切られた間に生じるスペースのことです。

図:グリッドラインとグリッドトラック
grid-template-columnsプロパティは、このグリッドトラック群に対して横方向の長さのリストを指定します。 長さのリストは、pxなどの単位を付けた数値や%値などを半角スペース区切りにします。

// 上図の例では以下のように指定
grid-template-rows: 80px 100px 40px;
grid-template-columns: 50px 100px 40px;

グリッドレイアウト全体のサイズは、トラックサイズの純粋な合計になるとは限りません。 row-gapプロパティ、 column-gapプロパティ、 justify-contentプロパティ、 align-contentプロパティ などの指定次第で、追加スペースが加算されたものとなります。

尚、グリッドレイアウトの指定は、グリッドコンテナに対して適用されます。 グリッドコンテナとは、displayプロパティの値に grid または inline-grid が適用された要素のことです。 グリッドコンテナ直下の子要素は、グリッドレイアウトを指定可能なグリッド要素となります。

// グリッドコンテナとなります
display: grid;

■値

none
明示的なグリッドトラックは作成されない(初期値)
※ただし、グリッドトラックは暗黙的には生成されており、そのサイズは grid-auto-rowsプロパティ と grid-auto-columnsプロパティによって決まる。
トラックリスト
半角スペース区切りでトラックリストを指定。トラックリストには、長さを表す数値、%値、フレックス係数、キーワード、関数、グリッド名、などを指定できる。
  • 長さを表す数値 … 正の数値にpxなどの単位を付けて指定
  • %値 … グリッドコンテナに対する%値で指定
  • fr … 正の数値にフレックス係数を表す単位frをつけて指定
  • max-content … 内容に合わせた最大値となる
  • min-content … 内容に合わせた最小値となる
  • minmax(min, max) … minmax()関数で最小値と最大値を指定
  • fit-content() … fit-content()関数で内容に合わせたサイズとなるよう指定
  • repeat() … repeat()関数で繰り返しパターンを指定
  • [グリッド名] … グリッドに名前を付けて、そのグリッド名で指定することができます。 例えば、 grid-template-columns: [first nav-start] [main-start] [last]; や、 grid-template-rows: [first header-start] [main-start] [footer-start] [last]; といった具合です。 w3.orgに掲載されている図がわかりやすいでしょう。

■初期値・適用対象・値の継承

初期値
none
適用対象
グリッドコンテナ
値の継承
しない

■使用例1

CSSソースは外部ファイル(sample.css)に記述

div.sample1 {
display: grid;
grid-template-columns: 50px 100px;
}

div.sample1 div {
margin:4px; border-radius:4px;
background-color:#66cc99;
}

HTMLソース

<div class="sample1">
<div>一</div>
<div>ニ</div>
<div>三</div>
<div>四</div>
<div>五</div>
<div>六</div>
<div>七</div>
<div>八</div>
<div>九</div>
</div>
↓↓↓

ブラウザ上の表示

■使用例2

CSSソースは外部ファイル(sample.css)に記述

div.sample2 {
display: grid;
grid-template-rows: 80px 100px 40px;
grid-template-columns: 50px 100px 40px;
}

div.sample2 div {
margin:4px; border-radius:4px;
background-color:#66cc99;
}

HTMLソース

<div class="sample1">
<div>一</div>
<div>ニ</div>
<div>三</div>
<div>四</div>
<div>五</div>
<div>六</div>
<div>七</div>
<div>八</div>
<div>九</div>
</div>
↓↓↓

ブラウザ上の表示

広告
Sponsors
広告
MuuMuu Domain!
ドメイン取るならお名前.com
現役エンジニアのオンライン家庭教師【CodeCamp】
サイトに広告を掲載してお小遣いが稼げる!【A8.net】
Node.jsコース
はじめてのプログラミングコース
▲ページ先頭へ
HTMLクイックリファレンスについて
© HTMQ