このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

grid-template-areas

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨2017年10月⁩.

grid-template-areasCSS のプロパティで、グリッド内でセルを確立し、名前を割り当てることにより、名前付きの グリッド領域 を指定します。

試してみましょう

grid-template-areas: "a a a" "b c c" "b c c"; 
grid-template-areas: "b b a" "b b c" "b b c"; 
grid-template-areas: "a a ." "a a ." ". b c"; 
<section class="default-example" id="default-example"> <div class="example-container"> <div class="transition-all" id="example-element"> <div>One (a)</div> <div>Two (b)</div> <div>Three (c)</div> </div> </div> </section> 
#example-element { border: 1px solid #c5c5c5; display: grid; grid-template-columns: 1fr 1fr 1fr; grid-template-rows: repeat(3, minmax(40px, auto)); grid-gap: 10px; width: 200px; } #example-element :nth-child(1) { background-color: rgba(0, 0, 255, 0.2); border: 3px solid blue; grid-area: a; } #example-element :nth-child(2) { background-color: rgba(255, 0, 200, 0.2); border: 3px solid rebeccapurple; grid-area: b; } #example-element :nth-child(3) { background-color: rgba(94, 255, 0, 0.2); border: 3px solid green; grid-area: c; } 

これらの領域は、特定のグリッドアイテムに関連付けられていませんが、グリッド配置プロパティである grid-row-start, grid-row-end, grid-column-start, grid-column-end およびそれらの一括指定プロパティ grid-row, grid-column, grid-area で参照することができます。

構文

css
/* キーワード値 */ grid-template-areas: none; /* <string> 値 */ grid-template-areas: "a b"; grid-template-areas: "a b ." "a c d"; /* グローバル値 */ grid-template-areas: inherit; grid-template-areas: initial; grid-template-areas: revert; grid-template-areas: revert-layer; grid-template-areas: unset; 

none

グリッドコンテナーは名前付きのグリッド領域を定義しません。

<string>+

リストのすべての文字列ごとに行が生成され、文字列内の各セルごとに列が生成されます。行の中や行をまたがって同じ名前のセルトークンが複数あると、対応するグリッドセルにまたがる単一の名前付きグリッド領域を生成します。これらのセルが長方形にならないと、宣言は無効になります。

グリッド内のすべての無名の領域は、ヌルセルトークンを使用して参照することができます。ヌルセルトークンは、 1 つ以上の . (U+002E FULL STOP) 文字の並び、例えば、......... などです。ヌルセルトークンは、グリッド内に空欄を作成するために使用することができます。

公式定義

初期値none
適用対象グリッドコンテナー
継承なし
計算値指定通り
アニメーションの種類離散値

形式文法

grid-template-areas = 
none |
<string>+
この構文は CSS Grid Layout Module Level 2 による最新の標準を反映しています。すべてのブラウザーがすべての部分を実装しているわけではありません。サポート情報についてはブラウザーの互換性を参照してください。

名前付きグリッド領域の指定

HTML

html
<div id="page"> <header>ヘッダー</header> <nav>ナビゲーション</nav> <main>メイン領域</main> <footer>フッター</footer> </div> 

CSS

css
#page { display: grid; width: 100%; height: 250px; grid-template-areas: "head head" "nav main" ". foot"; grid-template-rows: 50px 1fr 30px; grid-template-columns: 150px 1fr; } #page > header { grid-area: head; background-color: #8ca0ff; } #page > nav { grid-area: nav; background-color: #ffa08c; } #page > main { grid-area: main; background-color: #ffff64; } #page > footer { grid-area: foot; background-color: #8cffa0; } 

上記のコードでは、グリッドコンテナー内に名前のない領域を作成するために、ヌルトークン (.) が使用されています。この領域を使用して、グリッドの左下隅に空の空間を作成しました。

結果

仕様書

Specification
CSS Grid Layout Module Level 2
# grid-template-areas-property

ブラウザーの互換性

関連情報