CSS Бесплатно, без регистрации

Генератор CSS Grid

Выберите количество колонок и строк, их размеры и промежутки — сетка в предпросмотре меняется сразу, а ниже появляется готовый CSS-код для grid.

Результат
Готовый CSS-код
.grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 12px;
}

Как пользоваться

  1. В блоках «Колонки» и «Строки» задайте количество (до 6 колонок и до 4 строк), затем выберите размер каждой дорожки: 1fr, 2fr, auto, 100px, 200px или minmax(100px, 1fr).
  2. Настройте column-gap и row-gap — промежутки между ячейками, а также justify-items и align-items — положение содержимого внутри ячейки.
  3. Кликните по пронумерованной ячейке в предпросмотре (или выберите её клавишами Tab и Enter) и растяните её на несколько колонок или строк через grid-column: span и grid-row: span.
  4. Нужна адаптивная сетка — включите флажок «Адаптивная»: колонки строятся через repeat(auto-fill, minmax(…px, 1fr)) и сами подстраиваются под ширину. Скопируйте код кнопкой «Копировать».

Как это работает

grid-template-columns и grid-template-rows

Элемент с display: grid становится сеткой. grid-template-columns задаёт ширину колонок, а grid-template-rows — высоту строк; каждое значение — это отдельная «дорожка» (track), полоса между линиями сетки. Дорожки можно задавать в пикселях, процентах, через auto или единицу fr. Генератор сам сворачивает одинаковые дорожки в repeat().

.grid {
  display: grid;
  grid-template-columns: 200px 1fr 1fr;
  grid-template-rows: auto 1fr;
}

Единица fr и repeat()

1fr — это одна доля свободного места в контейнере. При 1fr 2fr вторая колонка вдвое шире первой: сначала вычитаются фиксированные размеры (200px) и промежутки, а остаток делится по долям fr. Запись repeat(3, 1fr) — короткий способ получить три равные колонки. А minmax(100px, 1fr) задаёт минимальный размер: колонка не уже 100px, но растёт, если есть место.

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

gap, justify-items и align-items

gap (то есть row-gap и column-gap) разделяет дорожки и не создаёт отступов по краям сетки. justify-items выравнивает содержимое ячейки по горизонтали, align-items — по вертикали. Значение по умолчанию — stretch: элемент заполняет всю ячейку. Значения start, end и center сжимают элемент до размера его содержимого.

.grid {
  gap: 12px 24px; /* row-gap column-gap */
  justify-items: center;
  align-items: start;
}

Растяжение на несколько колонок и строк (span)

grid-column: span 2 говорит элементу занять две колонки, а grid-row: span 2 — две строки. Остальные элементы при автоматическом размещении сдвигаются в следующие свободные ячейки. Если из-за растянутых элементов заданных строк не хватает, браузер создаёт дополнительные «неявные» строки; их высотой управляет grid-auto-rows.

.item:nth-child(1) {
  grid-column: span 2;
  grid-row: span 2;
}

Адаптивная сетка без media queries

repeat(auto-fill, minmax(140px, 1fr)) сама выбирает число колонок по ширине контейнера: каждая колонка не уже 140px, а остаток делится между ними. Карточки переносятся на узких экранах, и @media писать не нужно. auto-fill сохраняет пустые дорожки, а auto-fit схлопывает их и растягивает имеющиеся элементы.

.grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 12px;
}

Частые вопросы

Что такое единица fr?

fr (fraction) — доля свободного места в контейнере. После вычитания фиксированных размеров и gap остаток делится пропорционально значениям fr: при 1fr 2fr вторая колонка вдвое шире первой.

Чем отличаются auto-fill и auto-fit?

Когда элементов меньше, чем помещается в строку, auto-fill сохраняет пустые дорожки, поэтому элементы не растягиваются. auto-fit обнуляет пустые дорожки, и имеющиеся элементы растягиваются на свободное место. Если строка заполнена полностью, разницы нет.

Когда выбирать Grid, а когда Flexbox?

Flexbox одномерный: он хорош, когда нужно выстроить элементы в одну строку или колонку. Grid двумерный: он удобен, когда надо управлять и строками, и колонками сразу — например, в макете страницы или сетке карточек. Они не исключают друг друга и часто используются вместе.

Почему в сетке появилась лишняя строка?

Если элементы не помещаются в строки, заданные в grid-template-rows (например, один элемент занимает несколько ячеек), браузер добавляет «неявные» строки. Их высоту можно задать через grid-auto-rows.

Эта тема в курсе HTML и CSS

Другие CSS-инструменты

Генератор CSS-градиента Linear, radial и conic градиенты: выберите цвета, угол и точки — скопируйте готовый код. Генератор и песочница Flexbox Пробуйте flex-свойства контейнера и элементов: направление, выравнивание, отступы и готовый CSS. Генератор CSS box-shadow Тени для блоков: смещение, размытие, цвет и слои — скопируйте готовый код box-shadow. Генератор cubic-bezier Перетащите точки кривой easing и скопируйте готовый CSS-код transition. Генератор SVG-анимации Выберите фигуру и эффект — получите SVG и CSS keyframes для вставки на страницу. Калькулятор специфичности CSS Впишите селекторы — увидите вес (a,b,c), цветной разбор и то, какое правило победит. Визуализатор блочной модели CSS Content, padding, border и margin в виде схемы как в DevTools — и готовый CSS-код. Генератор CSS transform Сдвиг, поворот, масштаб и наклон элемента с исходной позицией на превью — и готовый код. Калькулятор CSS clamp() Введите мин. и макс. размер шрифта и ширину экрана — получите готовый clamp() для плавной типографики. Проверка контраста цветов (WCAG) Проверьте контраст текста и фона по WCAG AA и AAA и исправьте неподходящую пару цветов. Генератор CSS clip-path Полигоны, срезанные углы, стрелки и круги: перетаскивайте точки на превью и копируйте готовый CSS. Генератор CSS Glassmorphism Эффект матового стекла: backdrop-filter blur, насыщенность, световая грань и готовый CSS. Генератор CSS border-radius (Blob) Органические формы и 8-значный border-radius: настраивайте горизонтальные и вертикальные радиусы. Визуализатор CSS Stacking Context и z-index Почему z-index: 9999 не работает? Наглядный 3D-разбор контекстов наложения, opacity, transform и isolation. Генератор CSS aspect-ratio и object-fit Конец сплющенным картинкам и прыжкам верстки (CLS): подбор пропорций aspect-ratio и точка фокуса object-fit. Студия CSS-фильтров Фотоэффекты без графических редакторов: blur, contrast, hue-rotate, sepia и трендовые Instagram-пресеты. Генератор OKLCH и палитр CSS Color 4 Идеально равномерная яркость для глаз и сочные цвета Display P3: подбор OKLCH, шкалы дизайн-систем и конвертация. Генератор CSS Scroll-driven Animations Анимации при скролле без JavaScript: свойства animation-timeline scroll() и view(), полоса чтения и плавное появление карточек. Генератор CSS Container Queries (@container) Конец привязке к экрану: компонент адаптируется к ширине своего родителя. Ресайз контейнера и правила @container вживую.
WhatsApp