Spec-Zone.ru › CSS

grid-auto-columns

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

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

  • Узнать больше
  • Показать полную совместимость
  • Отправить отзыв

Свойство grid-auto-columns CSS задаёт размер неявно созданной колонки сетки дорожки или шаблона дорожек.

Попробовать

Если элемент сетки размещается в колонке, размер которой не задан явно свойством grid-template-columns, неявно создаются дорожки сетки, чтобы поместить его. Это может произойти либо при явном размещении элемента в колонке вне диапазона, либо в результате алгоритма автоматического размещения, создающего дополнительные колонки.

Синтаксис

/* Keyword values */
grid-auto-columns: min-content;
grid-auto-columns: max-content;
grid-auto-columns: auto;

/* <length> values */
grid-auto-columns: 100px;
grid-auto-columns: 20cm;
grid-auto-columns: 50vmax;

/* <percentage> values */
grid-auto-columns: 10%;
grid-auto-columns: 33.3%;

/* <flex> values */
grid-auto-columns: 0.5fr;
grid-auto-columns: 3fr;

/* minmax() values */
grid-auto-columns: minmax(100px, auto);
grid-auto-columns: minmax(max-content, 2fr);
grid-auto-columns: minmax(20%, 80vmax);

/* fit-content() values */
grid-auto-columns: fit-content(400px);
grid-auto-columns: fit-content(5cm);
grid-auto-columns: fit-content(20%);

/* multiple track-size values */
grid-auto-columns: min-content max-content auto;
grid-auto-columns: 100px 150px 390px;
grid-auto-columns: 10% 33.3%;
grid-auto-columns: 0.5fr 3fr 1fr;
grid-auto-columns: minmax(100px, auto) minmax(max-content, 2fr)
  minmax(20%, 80vmax);
grid-auto-columns: 100px minmax(100px, auto) 10% 0.5fr fit-content(400px);

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

Значения

<length>

Представляет собой ненулевую длину.

<percentage>

Представляет собой ненулевое <percentage> значение, относительное к размеру блока контейнера сетки. Если размер блока контейнера сетки неопределён, значение в процентах обрабатывается как auto.

<flex>

Представляет собой ненулевой размер с единицей fr, определяющей коэффициент растяжения дорожки. Каждая дорожка, размером <flex>, занимает часть оставшегося пространства пропорционально своему коэффициенту растяжения.

При использовании вне обозначения minmax(), подразумевается автоматический минимум (т.е. minmax(auto, <flex>)).

max-content

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

min-content

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

minmax(min, max)

Это функциональная запись, которая определяет диапазон размеров, не меньший, чем min, и не больший, чем max. Если max меньше min, то max игнорируется, и функция обрабатывается как min. В качестве максимального значения, значение <flex> устанавливает коэффициент растяжения дорожки. В качестве минимального значения, оно обрабатывается как ноль (или минимальное содержимое, если размер контейнера сетки ограничен минимальным размером содержимого).

fit-content( [ <length> | <percentage> ] )

Представляет формулу min(max-content, max(auto, argument)), которая вычисляется аналогично auto (т.е. minmax(auto, max-content)), за исключением того, что размер дорожки ограничен значением argument, если он больше минимального auto значения.

auto

В качестве максимального значения представляет собой максимальный размер max-content элементов в этой дорожке.

В качестве минимального значения представляет собой максимальный минимальный размер элементов в этой дорожке (заданный свойством min-width/min-height элементов). Это часто, но не всегда, минимальный min-content размер.

Если используется вне обозначения minmax(), auto представляет собой диапазон между минимальным и максимальным значениями, описанными выше. В большинстве случаев это ведет себя аналогично minmax(min-content,max-content).

Примечание: размеры дорожек, заданные как auto, (и только дорожек, заданных как auto ) могут быть растянуты свойствами align-content и justify-content. Поэтому по умолчанию дорожка размером auto займет всё оставшееся пространство в контейнере сетки.

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

Начальное значение auto
Применимо к контейнерам сетки
Наследуется нет
Проценты относится к соответствующему размеру области содержимого
Вычисленное значение проценты, как указано, или абсолютная длина
Тип анимации по типу вычисленного значения

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

grid-auto-columns = 
<track-size>+

<track-size> =
<track-breadth> |
minmax( <inflexible-breadth> , <track-breadth> ) |
fit-content( <length-percentage [0,∞]> )

<track-breadth> =
<length-percentage [0,∞]> |
<flex [0,∞]> |
min-content |
max-content |
auto

<inflexible-breadth> =
<length-percentage [0,∞]> |
min-content |
max-content |
auto

<length-percentage> =
<length> |
<percentage>

Примеры

Установка размера колонок сетки

HTML

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

CSS

#grid {
  height: 100px;
  display: grid;
  grid-template-areas: "a a";
  gap: 10px;
  grid-auto-columns: 200px;
}

#grid > div {
  background-color: lime;
}

Результат

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

Спецификация
CSS Grid Layout Module Level 2
# auto-tracks

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

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на iOS Samsung Internet WebView Android
grid-auto-columns 57 1612–79 70
52–70Не поддерживает несколько значений размера дорожки. См. ошибку 1339672.
44 10.1 57 79
52–79Не поддерживает несколько значений размера дорожки. См. ошибку 1339672.
43 10.3 6.0 57

См. также

  • grid-auto-rows
  • grid-auto-flow
  • grid
  • Автоматическое размещение в сетке: определение размеров строк в неявной сетке
  • Видео: Введение в автоматическое размещение и порядок сетки

© 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-auto-columns

Spec-Zone.ru

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