grid-column-end

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2020.

grid-column-end は CSS のプロパティで、グリッド列内のグリッドアイテムの末尾位置を指定します。グリッド配置に線や区間を指定したり、何も指定しなかったり(自動)することで、グリッド領域のブロック方向の末尾側の端を指定します。

試してみましょう

構文

css
/* キーワード値 */
grid-column-end: auto;

/* <custom-ident> 値 */
grid-column-end: somegridarea;

/* <integer> + <custom-ident> 値 */
grid-column-end: 2;
grid-column-end: somegridarea 4;

/* span + <integer> + <custom-ident> 値 */
grid-column-end: span 3;
grid-column-end: span somegridarea;
grid-column-end: 5 somegridarea span;

/* グローバル値 */
grid-column-end: inherit;
grid-column-end: initial;
grid-column-end: revert;
grid-column-end: revert-layer;
grid-column-end: unset;

auto

プロパティをグリッドアイテムの配置に影響させず、自動的に配置し、間隔を自動的に取るか、既定の 1 とするためのキーワードです。

<custom-ident>

'<custom-ident>-end' という名前の付いた線がある場合、これはそのような線の先頭がグリッドアイテムの配置に関わります。

メモ: 名前付きグリッド領域、自動的にこの形で暗黙の名前付き線を生成しますので、 grid-column-end: foo; と指定すると名前付きグリッド領域の末尾側の端を選択します (その前に foo-end という名前の線が明示的に存在しない限り)。

そうでなければ、これは <custom-ident> に沿って整数の 1 が指定されたものとして扱われます。

<integer> && <custom-ident>?

n 番目のグリッド線をグリッドアイテムの配置に使用します。負の整数が指定された場合は、逆方向にカウントし、明示的なグリッドの末尾の端から始めます。

名前が <custom-ident> として与えられた場合、その名前の付いた線のみがカウントされます。その名前がある線の数が十分にない場合は、この位置を探す目的においては、すべての暗黙のグリッド線がその名前を持つと仮定されます。

0<integer> 値は無効です。

span && [ <integer> || <custom-ident> ]

グリッドアイテムのグリッド領域の列の末尾の端が先頭の端から n 本になるように、グリッドアイテムの配置にグリッドスパンを設定します。

名前が <custom-ident> として与えられた場合、その名前の付いた線のみがカウントされます。その名前を持つ線の数が十分おにない場合は、検索方向に対応する明示的グリッドの側にあるすべての暗黙的グリッド線が、この区間をカウントする目的でその名前を持つと仮定されます。

<integer> が省略された場合の既定値は 1 です。負の数や 0 は無効です。

<custom-ident>span の値を取ることができません。

公式定義

初期値auto
適用対象包含ブロックがグリッドコンテナーであるグリッドアイテムまたは絶対位置指定のボックス
継承なし
計算値指定通り
アニメーションの種類離散値

形式文法

grid-column-end = 
<grid-line>

<grid-line> =
auto |
<custom-ident> |
[ [ <integer [-∞,-1]> | <integer [1,∞]> ] && <custom-ident>? ] |
[ span && [ <integer [1,∞]> || <custom-ident> ] ]

グリッドアイテムの列の末尾位置の設定

HTML

html
<div class="wrapper">
  <div class="box1">One</div>
  <div class="box2">Two</div>
  <div class="box3">Three</div>
  <div class="box4">Four</div>
  <div class="box5">Five</div>
</div>

CSS

css
.wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: 100px;
}

.box1 {
  grid-column-start: 1;
  grid-column-end: 4;
  grid-row-start: 1;
  grid-row-end: 3;
}

.box2 {
  grid-column-start: 1;
  grid-row-start: 3;
  grid-row-end: 5;
}

結果

仕様書

Specification
CSS Grid Layout Module Level 2
# line-placement

ブラウザーの互換性

BCD tables only load in the browser

関連情報