Скриншот
Предлагаем вашему вниманию статью шпаргалку о сетке CSS Grid, создающей двухмерные макеты из строк и столбцов. Навалили демо примеров использования CSS Grid с Flexbox и JavaScript.
Подробнее
Версия: v1.0.0
Каталог: Статьи
Категория: CSS
Язык: Русский
Уникальный ID: 6604
Посмотрели: 129 раз
Прокомментировали: 0 раз
Рейтинг: 5.0 / 5 - 1 голосов
Авторство: bootstraptema.ru
Информация: Пользователям
Информация: Правообладателям
Теги: статья
Поделился: BootstrapТема
Добавлено: 2025-03-06 в 20:03
Метка: 1741417412
Хостинг

CSS Grid шпаргалка с примерами

CSS Grid - это двумерная система макетов, которая позволяет создавать сложные сетки для размещения элементов на странице, CSS Grid позволяет управлять как строками, так и столбцами одновременно. Освоив CSS Grid, вы сможете создавать современные и красивые веб-страницы с минимальными усилиями. Предлагаем вам демо примеры возможностей CSS Grid, совместного использования CSS Grid с FlexBox и работы CSS Grid с JavaScript. Рекомендуем воспользоваться нашим Конструктором CSS Grid для создания и CSS Grid-сеток.

Основные концепции CSS Grid

Прежде чем перейти к свойствам, важно понять основные термины, используемые в CSS Grid:

  • Контейнер: Элемент, который становится Grid-контейнером с помощью свойства display: grid.
  • Ячейка (Grid Cell): Минимальная единица сетки, образованная пересечением строки и столбца.
  • Линия (Grid Line): Линии, которые разделяют строки и столбцы. Они могут быть пронумерованы или названы.
  • Дорожка (Grid Track): Пространство между двумя соседними линиями (строка или столбец).
  • Область (Grid Area): Область, образованная пересечением нескольких строк и столбцов.

Создание Grid-контейнера

Чтобы создать Grid-контейнер, нужно применить к элементу свойство display: grid или display: inline-grid. После этого все дочерние элементы становятся Grid-элементами.


.container {
 display: grid;
}
 

Определение строк и столбцов

Для определения строк и столбцов используются свойства grid-template-rows и grid-template-columns. Эти свойства позволяют задать размеры строк и столбцов.


.container {
 display: grid;
 grid-template-columns: 100px 200px auto;
 grid-template-rows: 50px 100px;
}
 

Функция repeat()

Функция repeat() позволяет упростить создание повторяющихся строк или столбцов. Например, repeat(3, 1fr) создаст три столбца с равным распределением свободного пространства.


.container {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
}
 

Единица fr

Единица fr (fraction) используется для распределения свободного пространства между строками или столбцами. Например, 1fr 2fr означает, что второй столбец будет в два раза шире первого.

Промежутки (Gap)

Для создания промежутков между строками и столбцами используются свойства row-gap и column-gap. Также можно использовать сокращённое свойство gap.


.container {
 display: grid;
 gap: 10px;
}
 

Размещение элементов в Grid

Элементы можно размещать в Grid с помощью свойств grid-row, grid-column, grid-area и других. Эти свойства позволяют указывать начальную и конечную линии для строк и столбцов.


.item {
 grid-row: 1 / 3;
 grid-column: 2 / 4;
}
 

Именованные области

С помощью свойства grid-template-areas можно создавать именованные области, что упрощает размещение элементов.


.container {
 display: grid;
 grid-template-areas:
 "header header"
 "sidebar main"
 "footer footer";
}
.header { grid-area: header; }
.sidebar { grid-area: sidebar; }
.main { grid-area: main; }
.footer { grid-area: footer; }
 

Выравнивание элементов

CSS Grid предоставляет мощные инструменты для выравнивания элементов внутри ячеек. Для этого используются свойства justify-items, align-items, justify-content и align-content.


.container {
 display: grid;
 justify-items: center;
 align-items: center;
}
 

Адаптивные сетки

CSS Grid отлично подходит для создания адаптивных макетов. Используя медиа-запросы и функции вроде minmax(), можно создавать сетки, которые адаптируются под разные размеры экранов.


.container {
 display: grid;
 grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}
 

Примеры использования CSS Grid

Простая сетка 2x2

Создана простая сетка 2x2 с фиксированными размерами ячеек.

Сетка с автоматическими столбцами

Создана сетка с автоматическим распределением столбцов, которые подстраиваются под доступное пространство.

Сетка с именованными областями

Создана сетка с именованными областями для размещения элементов.

Сетка с разными размерами ячеек

Создана сетка с ячейками разных размеров.

Сетка с перекрывающимися элементами

Создана сетка с перекрывающимися элементами.

Сетка с асимметричными столбцами

Создана сетка с асимметричными столбцами.

Сетка с выравниванием по правому краю

Создана сетка с выравниванием элементов по правому краю.

Сетка с выравниванием по нижнему краю

Создана сетка с выравниванием элементов по нижнему краю.

Сетка с фиксированным первым столбцом

Создана сетка с фиксированным первым столбцом и гибкими остальными.

Сетка с выравниванием по горизонтали

Создана сетка с выравниванием элементов по горизонтали.

Сетка с разрывом между элементами

Создана сетка с увеличенным разрывом между элементами.

Сетка с фиксированной высотой строк

Создана сетка с фиксированной высотой строк.

Сетка с выравниванием по краям

Создана сетка с выравниванием элементов по краям.

Сетка с выравниванием по центру и краям

Создана сетка с комбинированным выравниванием.

Примеры использования CSS Grid с Flexbox

Grid для строк, Flexbox для столбцов

Используем Grid для создания строк, а внутри каждой строки применяем Flexbox для распределения столбцов.

Grid для макета страницы, Flexbox для навигации

Используем Grid для создания макета страницы, а Flexbox для выравнивания элементов навигации.

Grid для карточек, Flexbox для содержимого карточек

Используем Grid для создания сетки карточек, а внутри каждой карточки применяем Flexbox для выравнивания содержимого.

Grid для сетки изображений, Flexbox для подписей

Используем Grid для создания сетки изображений, а Flexbox для выравнивания подписей под изображениями.

Grid для макета, Flexbox для адаптивных элементов

Используем Grid для создания макета, а Flexbox для адаптивного изменения порядка элементов.

Grid для макета, Flexbox для центрирования

Используем Grid для создания макета, а Flexbox для центрирования содержимого внутри Grid-элементов.

Grid для макета, Flexbox для выравнивания текста

Используем Grid для создания макета, а Flexbox для выравнивания текста внутри элементов.

Grid для макета, Flexbox для кнопок

Используем Grid для создания макета, а Flexbox для выравнивания кнопок внутри элементов.

Grid для макета, Flexbox для адаптивных изображений

Используем Grid для создания макета, а Flexbox для адаптивного изменения размера изображений.

Grid для макета, Flexbox для выравнивания форм

Используем Grid для создания макета, а Flexbox для выравнивания элементов формы.

Grid для макета, Flexbox для адаптивного меню

Используем Grid для создания макета, а Flexbox для адаптивного меню.

Grid для макета, Flexbox для выравнивания текста и изображений

Используем Grid для создания макета, а Flexbox для выравнивания текста и изображений.

Grid для макета, Flexbox для выравнивания кнопок и текста

Используем Grid для создания макета, а Flexbox для выравнивания кнопок и текста.

Grid для макета, Flexbox для выравнивания иконок и текста

Используем Grid для создания макета, а Flexbox для выравнивания иконок и текста.

Grid для макета, Flexbox для адаптивных блоков

Используем Grid для создания макета, а Flexbox для адаптивного изменения блоков.

Примеры использования CSS Grid & JavaScript

Динамическое добавление элементов в Grid

Используем JavaScript для добавления новых элементов в Grid-контейнер.

Изменение размера Grid-ячеек с помощью JavaScript

Используем JavaScript для изменения размера ячеек Grid.

Перетаскивание элементов в Grid

Используем JavaScript для реализации перетаскивания элементов внутри Grid.

Динамическое изменение количества столбцов

Используем JavaScript для изменения количества столбцов в Grid.

Анимация Grid-элементов

Используем JavaScript для анимации элементов Grid.

Сортировка элементов в Grid

Используем JavaScript для сортировки элементов Grid.

Изменение порядка элементов в Grid

Используем JavaScript для изменения порядка элементов в Grid.

Динамическое создание Grid-сетки

Используем JavaScript для создания Grid-сетки на лету.

Изменение размера Grid-ячеек с помощью ползунка

Используем JavaScript и ползунок для изменения размера ячеек Grid.

Переключение между Grid и Flexbox

Используем JavaScript для переключения между Grid и Flexbox.

Динамическое изменение размера Grid-ячеек

Используем JavaScript для изменения размера ячеек Grid в зависимости от ввода пользователя.

Анимация перехода между Grid и Flexbox

Используем JavaScript для анимации переключения между Grid и Flexbox.

Динамическое добавление строк и столбцов

Используем JavaScript для добавления строк и столбцов в Grid.

Динамическое изменение порядка элементов

Используем JavaScript для изменения порядка элементов в Grid с помощью кнопок.

Динамическое создание Grid-сетки с пользовательским вводом

Используем JavaScript для создания Grid-сетки на основе ввода пользователя.

Анимация перетаскивания Grid-элементов

Используем JavaScript для анимации перетаскивания элементов в Grid.

Динамическое изменение цвета Grid-элементов

Используем JavaScript для изменения цвета элементов Grid.

Динамическое создание Grid-сетки с изображениями

Используем JavaScript для создания Grid-сетки с изображениями.

Динамическое изменение Grid-областей

Используем JavaScript для изменения областей Grid.

14. Перетаскивание для изменения размера Grid-ячеек

Используем JavaScript для изменения размера ячеек Grid с помощью перетаскивания.

Похожие материалы
Просмотренные материалы
Архив материалов которые Вы уже смотрели пока пуст
Всего комментариев: 0
avatar

Посоветуйте этот материал другу отправив ему письмо на E - mail

Написать администрации по поводу этого материала