Сокращение для рядов и столбцов в CSS гридах
Бывают ситуации, когда удобно указать
размеры рядов и столбцов
в краткой форме. Для этого мы используем
свойство grid-template
, которое указывается
в элементе-родителе и представляет собой
сокращенную форму записи двух
свойств grid-template-rows
и grid-template-columns
.
Ряды и столбцы для грид-контейнера указываются через слеш, их размеры определяются в единицах измерения.
Пример
Давайте с помощью свойства
grid-template
сделаем
таблицу:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
<div>7</div>
<div>8</div>
<div>9</div>
</div>
#parent {
display: grid;
grid-template: 1fr 1fr 1fr / 1fr 1fr 1fr;
border: 2px solid #696989;
padding: 10px;
width: 600px;
height: 400px;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
:
Пример
А теперь давайте зададим второму и третьему рядам одинаковую ширину, а каждому столбцу - различную ширину:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
<div>7</div>
<div>8</div>
<div>9</div>
</div>
#parent {
display: grid;
grid-template: 60px 1fr 60px / 20% 1fr 15%;
border: 2px solid #696989;
padding: 10px;
width: 600px;
height: 300px;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
:
Пример
А теперь в таблице из предыдущего примера сделаем верхний ряд шириной в две фракции, а первый столбец - в половину фракции:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
<div>7</div>
<div>8</div>
<div>9</div>
</div>
#parent {
display: grid;
grid-template: 2fr 1fr 1fr / 0.5fr 1fr 1fr;
border: 2px solid #696989;
padding: 10px;
width: 600px;
height: 400px;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
:
Практические задачи
Реализуйте следующую плиточку:
Реализуйте следующую плиточку:
Реализуйте следующую плиточку:
Реализуйте следующую плиточку:
Реализуйте следующую плиточку: