Spec-Zone.ru › CSS

grid-area

Базовая линия Широко доступна

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с октября 2017 года.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Свойство grid-area CSS сокращённой записи определяет размер и расположение элемента сетки в сетке, внося линию, размах или ничего (автоматическое) в его расположение в сетке, тем самым определяя края его области сетки.

Попробовать

Если указано четыре <grid-line> значения, grid-row-start устанавливается на первое значение, grid-column-start на второе, grid-row-end на третье, и grid-column-end на четвёртое.

Когда grid-column-end опущено, если grid-column-start является <custom-ident>, grid-column-end устанавливается на это <custom-ident>; в противном случае, оно устанавливается на auto.

Когда grid-row-end опущено, если grid-row-start является <custom-ident>, grid-row-end устанавливается на это <custom-ident>; в противном случае, оно устанавливается на auto.

Когда grid-column-start опущено, если grid-row-start является <custom-ident>, все четыре полных записи устанавливаются на это значение. В противном случае, оно устанавливается на auto.

Свойство grid-area также может быть установлено на <custom-ident>, которое действует как имя области, которую затем можно разместить с помощью grid-template-areas.

Составляющие свойства

Это свойство является сокращением для следующих свойств CSS:

  • grid-row-start
  • grid-column-start
  • grid-row-end
  • grid-column-end

Синтаксис

/* Keyword values */
grid-area: auto;
grid-area: auto / auto;
grid-area: auto / auto / auto;
grid-area: auto / auto / auto / auto;

/* <custom-ident> values */
grid-area: some-grid-area;
grid-area: some-grid-area / another-grid-area;

/* <integer> && <custom-ident>? values */
grid-area: 4 some-grid-area;
grid-area: 4 some-grid-area / 2 another-grid-area;

/* span && [ <integer> || <custom-ident> ] values */
grid-area: span 3;
grid-area: span 3 / span some-grid-area;
grid-area: 2 span / another-grid-area span;

/* Global values */
grid-area: inherit;
grid-area: initial;
grid-area: revert;
grid-area: revert-layer;
grid-area: unset;

Значения

auto

Это ключевое слово, указывающее, что свойство ничего не вносит в расположение элемента сетки, указывая автоматическое размещение или стандартный размах 1.

<custom-ident>

Если есть именованная линия с именем <custom-ident>-start или <custom-ident>-end, она вносит первую такую линию в расположение элемента сетки.

Примечание: Именные области сетки автоматически генерируют неявные именованные линии такого формата, поэтому указание grid-area: foo; выберет начальный/конечный край этой именованной области сетки (если не была явно указана другая линия с именем foo-start/foo-end).

В противном случае, это рассматривается так, как будто указано целое число 1 вместе с <custom-ident>.

<integer> && <custom-ident>?

Вносит n-ю линию сетки в расположение элемента сетки. Если задано отрицательное целое число, оно вместо этого считает в обратном порядке, начиная с конечного края явной сетки.

Если имя задано как <custom-ident>, учитываются только линии с этим именем. Если таких линий недостаточно, все неявные линии сетки предполагаются имеющими это имя для определения этого положения.

Значение <integer> 0 недопустимо.

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

Вносит размах сетки в размещение элемента сетки так, чтобы соответствующий край области сетки элемента сетки находился на расстоянии n линий от противоположного края.

Если имя задано как <custom-ident>, учитываются только линии с этим именем. Если таких линий недостаточно, все неявные линии сетки на стороне явной сетки, соответствующей направлению поиска, предполагаются имеющими это имя для подсчёта этого размаха.

Если <integer> опущено, по умолчанию используется 1. Отрицательные целые числа или 0 недопустимы.

Формальное определение

Начальное значение как каждое из свойств сокращения:
  • grid-row-start: auto
  • grid-column-start: auto
  • grid-row-end: auto
  • grid-column-end: auto
Применимо к элементам сетки и блокам с абсолютным позиционированием, содержащий блок которых является контейнером сетки
Наследуется нет
Вычисленное значение как каждое из свойств сокращения:
  • grid-row-start: как указано
  • grid-column-start: как указано
  • grid-row-end: как указано
  • grid-column-end: как указано
Тип анимации дискретная

Формальный синтаксис

grid-area = 
<grid-line> [ / <grid-line> ]{0,3}

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

Примеры

Настройка областей сетки

HTML

<div id="grid">
  <div id="item1"></div>
  <div id="item2"></div>
  <div id="item3"></div>
</div>

CSS

#grid {
  display: grid;
  height: 100px;
  grid-template: repeat(4, 1fr) / 50px 100px;
}

#item1 {
  background-color: lime;
  grid-area: 2 / 2 / auto / span 3;
}

#item2 {
  background-color: yellow;
}

#item3 {
  background-color: blue;
}

Результат

Спецификации

Спецификация
CSS Grid Layout Module Level 2
# propdef-grid-area

Совместимость браузеров

Рабочие столы Мобильные
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на IOS Samsung Internet WebView Android
grid-area 57 16 52 44 10.1 57 52 43 10.3 6.0 57

См. также

  • grid-row
  • grid-row-start
  • grid-row-end
  • grid-column
  • grid-column-start
  • grid-column-end
  • grid-template-areas
  • Шаблоны областей сетки
  • Видео: Шаблоны областей сетки

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/grid-area

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API