CSS-свойство `grid-auto-rows`
Базовая поддержка Широко доступно
Эта возможность хорошо зарекомендовала себя и работает на многих устройствах и во многих версиях браузеров. Она доступна во всех браузерах с октября 2017 года.
Свойство grid-auto-rows CSS задаёт размер неявно созданной дорожки строки сетки или шаблона дорожек.
Если элемент сетки размещается в строке, размер которой явно не задан свойством grid-template-rows, для него создаются неявные дорожки сетки. Это может произойти, если элемент явно размещается в строке за пределами заданного диапазона или если алгоритм автоматического размещения создаёт дополнительные строки.
Попробуйте
grid-auto-rows: auto;
grid-auto-rows: 50px;
grid-auto-rows: min-content;
grid-auto-rows: minmax(30px, auto);
<section class="default-example" id="default-example">
<div class="example-container">
<div class="transition-all" id="example-element">
<div>One</div>
<div>Two</div>
<div>Three</div>
<div>Four</div>
<div>Five</div>
</div>
</div>
</section>
#example-element {
border: 1px solid #c5c5c5;
display: grid;
grid-template-columns: 1fr 1fr;
grid-auto-rows: 40px;
grid-gap: 10px;
width: 220px;
}
#example-element > div {
background-color: rgb(0 0 255 / 0.2);
border: 3px solid blue;
font-size: 22px;
}
#example-element div:last-child {
font-size: 13px;
}
Синтаксис
/* Keyword values */ grid-auto-rows: min-content; grid-auto-rows: max-content; grid-auto-rows: auto; /* <length> values */ grid-auto-rows: 100px; grid-auto-rows: 20cm; grid-auto-rows: 50vmax; /* <percentage> values */ grid-auto-rows: 10%; grid-auto-rows: 33.3%; /* <flex> values */ grid-auto-rows: 0.5fr; grid-auto-rows: 3fr; /* minmax() values */ grid-auto-rows: minmax(100px, auto); grid-auto-rows: minmax(max-content, 2fr); grid-auto-rows: minmax(20%, 80vmax); /* fit-content() values */ grid-auto-rows: fit-content(400px); grid-auto-rows: fit-content(5cm); grid-auto-rows: fit-content(20%); /* multiple track-size values */ grid-auto-rows: min-content max-content auto; grid-auto-rows: 100px 150px 390px; grid-auto-rows: 10% 33.3%; grid-auto-rows: 0.5fr 3fr 1fr; grid-auto-rows: minmax(100px, auto) minmax(max-content, 2fr) minmax(20%, 80vmax); grid-auto-rows: 100px minmax(100px, auto) 10% 0.5fr fit-content(400px); /* Global values */ grid-auto-rows: inherit; grid-auto-rows: initial; grid-auto-rows: revert; grid-auto-rows: revert-layer; grid-auto-rows: 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)), за исключением того, что размер дорожки ограничивается значением аргумента, если он превышает минимум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-rows = <track-size>+ <track-size> = <track-breadth> | minmax( <inflexible-breadth> , <track-breadth> ) | fit-content( <length-percentage> ) <track-breadth> = <length-percentage> | <flex> | min-content | max-content | auto <inflexible-breadth> = <length-percentage> | 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 {
width: 200px;
display: grid;
grid-template-areas: "a a";
gap: 10px;
grid-auto-rows: 100px;
}
#grid > div {
background-color: lime;
}
Результат
Спецификации
| Спецификация |
|---|
| Модуль CSS Grid Layout, уровень 2 # auto-tracks |
Совместимость с браузерами
| Настольные | Мобильные | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome для Android | Firefox для Android | Opera для Android | Safari для iOS | Samsung Internet | WebView для Android | WebView для iOS | |
grid-auto-rows |
57 |
16
12–79
|
70
52–70Не принимает несколько значений размера дорожки. См. ошибку 1339672. |
44 |
10.1 |
57 |
79
52–79Не принимает несколько значений размера дорожки. См. ошибку 1339672. |
43 |
10.3 |
6.0 |
57 |
10.3 |
auto |
57 |
16 |
52 |
44 |
10.1 |
57 |
52 |
43 |
10.3 |
7.0 |
57 |
10.3 |
max-content |
57 |
16 |
52 |
44 |
11 |
57 |
52 |
43 |
11 |
7.0 |
57 |
11 |
min-content |
57 |
16 |
52 |
44 |
11 |
57 |
52 |
43 |
11 |
7.0 |
57 |
11 |
См. также
grid-auto-columnsgrid-auto-flowgrid- Автоматическое размещение в макете сетки — задание размеров строк в неявной сетке
- Видео: Знакомство с автоматическим размещением элементов сетки и порядком
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/grid-auto-rows