Grid - это сокращенная форма для следующих свойств:
- grid-template-rows
- grid-template-columns
- grid-template-areas
- grid-auto-rows
- grid-auto-columns
- grid-auto-flow
Значение по умолчанию | none none none auto auto row |
Применяется | К грид-контейнерам. |
Наследуется | Нет |
Анимируемое | Да. Макет на основе сетки анимируем. |
Версия | CSS Grid Layout Module Level 1 |
DOM синтаксис | Object.style.grid = "150px / auto auto auto"; |
Синтаксис
grid: none | grid-template-rows / grid-template-columns | grid-template-areas | grid-template-rows / [grid-auto-flow] grid-auto-columns | [grid-auto-flow] grid-auto-rows / grid-template-columns | initial | inherit;
Пример
<!DOCTYPE html>
<html>
<head>
<title>Заголовок документа</title>
<style>
.grid-container {
display: grid;
grid-template-columns: auto auto auto;
background-color: #ccc;
padding: 10px;
}
.grid-box {
background-color: #eee;
border: 1px solid rgba(0, 0, 0, 0.8);
padding: 30px;
font-size: 30px;
text-align: center;
}
</style>
</head>
<body>
<h2>Пример свойства grid</h2>
<div class="grid-container">
<div class="grid-box">1</div>
<div class="grid-box">2</div>
<div class="grid-box">3</div>
<div class="grid-box">4</div>
<div class="grid-box">5</div>
<div class="grid-box">6</div>
<div class="grid-box">7</div>
<div class="grid-box">8</div>
<div class="grid-box">9</div>
</div>
</body>
</html>
Пример со значением grid-auto-flow:
Пример
<!DOCTYPE html>
<html>
<head>
<title>Заголовок документа</title>
<style>
.grid-container {
display: grid;
grid-template-columns: auto auto auto;
grid-template-rows: auto auto;
grid-gap: 5px;
background-color: #1c87c9;
padding: 10px;
}
.grid-container > div {
background-color: rgba(255, 255, 255, 0.8);
text-align: center;
padding: 20px 0;
font-size: 20px;
}
</style>
</head>
<body>
<h2>Пример свойства grid</h2>
<div class="grid-container" style="grid-auto-flow: column;">
<div class="grid-box1">1</div>
<div class="grid-box2">2</div>
<div class="grid-box3">3</div>
<div class="grid-box4">4</div>
</div>
</body>
</html>
Пример, где размер строк равен 100px:
Пример
<!DOCTYPE html>
<html>
<head>
<title>Заголовок документа</title>
<style>
.grid-box1 { grid-area: 1 / 1 / 2 / 2; }
.grid-box2 { grid-area: 1 / 2 / 2 / 3; }
.grid-box3 { grid-area: 1 / 3 / 2 / 4; }
.grid-box4 { grid-area: 2 / 1 / 3 / 2; }
.grid-box5 { grid-area: 2 / 2 / 3 / 3; }
.grid-box6 { grid-area: 2 / 3 / 3 / 4; }
.grid-container {
display: grid;
grid-auto-rows: 100px;
grid-gap: 10px;
background-color: #1c87c9;
padding: 10px;
}
.grid-container > div {
background-color: #eee;
text-align: center;
padding: 20px 0;
font-size: 25px;
}
</style>
</head>
<body>
<h2>Пример свойства grid</h2>
<div class="grid-container">
<div class="grid-box1">1</div>
<div class="grid-box2">2</div>
<div class="grid-box3">3</div>
<div class="grid-box4">4</div>
<div class="grid-box5">5</div>
<div class="grid-box6">6</div>
</div>
</body>
</html>
Значения
Значение | Описание |
---|---|
none | Размер колонок и строк не установлен. Значение по умолчанию. |
grid-template rows / grid-template-columns | Размер колонок и строк установлен. |
grid-template-areas | Макет сетки указан именованными элементами. |
grid-template rows / grid-auto-columns | Указан размер строк и авто-размер колонок. |
grid-auto-rows / grid-template-columns | Указан авто-размер строк, и задано свойство grid-template-columns. |
grid-template rows / grid-auto-flow grid-auto-columns | The grid layout is specified by using named items. |
grid-auto flow grid-auto-rows / grid-template-columns | Определяет, как установить автоматически размещаемые элементы и авто-размер строк. Задает свойство grid-template-columns. |
initial | Устанавливает свойство в значение по умолчанию. |
inherit | Значение элемента наследуется от родительского элемента. |
Поддержка браузера
57.0+ | 16.0+ | 52.0+ | 10.1+ | 44.0+ |
Практикуйте свои знания
What is the purpose of the CSS property 'grid'?
Правильный!
Неправильно!