С 2010 года · Более 2 млн запусков инструментов в месяц
С 2010 года
Добавить в Chrome

Моя Панель Инструментов

Автоматический Режим

Сохранённых инструментов пока нет.

Премиум-версия
Похожие инструменты
Генератор CSS GridГенератор CSS Box ShadowГенератор градиентов
Домашняя страница > Инструменты для веб-мастеров

Песочница CSS Flexbox

Интерактивная песочница CSS Flexbox с живым предпросмотром, настройками для каждого элемента, готовыми шаблонами (Holy Grail, сетка карточек, навбар, модалка) и экспортом CSS в клик. Изучите flex-direction, justify-content, align-items.

БесплатноБез регистрацииМгновенный результат
Песочница CSS FlexboxПопробуйте — бесплатно ▼
⚡ Быстрые макеты (нажмите для загрузки)
▦ Предпросмотр
главная ось поперечная ось 0 элементов совет: нажмите на элемент для правки
⚙ Контейнер (.flex-container)
flex-direction ?
flex-wrap ?
justify-content ?
align-items ?
align-content ?
gap 8px
8px
✦ Выбранный элемент (.flex-item)
Нажмите на элемент в предпросмотре, чтобы изменить его свойства.
📖 Шпаргалка — частые паттерны
Я хочу…Используйте это
Идеально центрировать один элементjustify-content: center; align-items: center
Колонки равной шириныflex: 1 для каждого элемента
Прижать один элемент вправоmargin-left: auto для этого элемента
Перенос карточек на малых экранахflex-wrap: wrap + flex: 1 1 240px
Обратный порядок на мобильныхflex-direction: row-reverse в медиа-запросе
Липкий подвал внизу окнаbody: display: flex; flex-direction: column; min-height: 100vh
Равное расстояние между элементамиjustify-content: space-between
Запретить элементу сжиматьсяflex-shrink: 0 для него
Сгенерированный CSS
Сгенерированный HTML

Embed Песочница CSS Flexbox Widget

О Песочница CSS Flexbox

Песочница CSS Flexbox — это интерактивная среда обучения и генератор кода для современного модуля CSS Flexible Box Layout. Настраивайте свойства контейнера (flex-direction, justify-content, align-items, gap) и свойства отдельных элементов (flex-grow, flex-shrink, flex-basis, align-self, order) и наблюдайте за обновлением макета в реальном времени. Когда получите желаемый результат, просто скопируйте готовый CSS и HTML прямо в свой проект.

Что такое CSS Flexbox?

CSS Flexbox (Flexible Box Layout) — это одномерная модель макета, предназначенная для распределения пространства вдоль одной оси (строки или столбца) и выравнивания элементов внутри контейнера. Она заменяет старые методы, такие как float и хаки с inline-block, для создания навигационных панелей, рядов карточек, центрированного контента и любых интерфейсов, где элементы должны гибко подстраиваться под контейнер. В отличие от CSS Grid, который является двумерным, Flexbox отлично подходит для простых структур, где вы управляете выравниванием только в одном направлении за раз.

Как использовать эту песочницу

  1. Выберите пресет (необязательно): Выберите Holy Grail, Card Grid, Navbar, Hero, Modal или Sticky Footer, чтобы загрузить пример из реальной практики. Каждый пресет — это готовый рабочий макет, который можно изучать или изменять.
  2. Настройте свойства контейнера: Используйте переключатели в правой панели для установки flex-direction, flex-wrap, justify-content, align-items, align-content и gap. Визуальная сцена обновится мгновенно.
  3. Редактируйте отдельные элементы: Нажмите на любой элемент в предпросмотре, чтобы выбрать его. Переопределите его order, flex-grow, flex-shrink, flex-basis и align-self независимо от остальных. Элементы с переопределениями отмечены небольшим значком.
  4. Добавляйте или удаляйте элементы: Используйте кнопки «Добавить элемент» и «Удалить выбранный», чтобы изменить количество элементов и увидеть реакцию макета.
  5. Скопируйте код: Раздел «Сгенерированный код» внизу всегда отражает ваш текущий макет. Копируйте CSS, HTML или оба сразу одним кликом.

Справочник свойств контейнера

Flex-контейнер — это родительский элемент с display: flex. Эти свойства определяют поведение всех его дочерних элементов вместе.

СвойствоЗначенияЭффект
flex-direction row · row-reverse · column · column-reverse Задает направление главной оси. row располагает элементы слева направо (по умолчанию); column — вертикально.
flex-wrap nowrap · wrap · wrap-reverse Определяет, остаются ли элементы в одной строке или переносятся на несколько строк при нехватке места.
justify-content flex-start · center · flex-end · space-between · space-around · space-evenly Выравнивает элементы вдоль главной оси. Распределяет свободное пространство по краям или между элементами.
align-items stretch · flex-start · center · flex-end · baseline Выравнивает элементы вдоль поперечной оси (перпендикулярно главной).
align-content stretch · flex-start · center · flex-end · space-between · space-around Выравнивает перенесенные строки вдоль поперечной оси. Работает только при переносе элементов на несколько строк.
gap длина, напр. 8px, 1rem Устанавливает расстояние между flex-элементами. Заменяет старый метод отступов через margin.

Справочник свойств элементов

Эти свойства применяются к отдельным flex-элементам (дочерним элементам контейнера) и переопределяют настройки контейнера для конкретного элемента.

СвойствоЗначенияЭффект
order целое число (по умолчанию 0) Изменяет визуальный порядок элементов без изменения HTML. Меньшие числа отображаются первыми; отрицательные значения перемещают элементы в начало.
flex-grow число (по умолчанию 0) Определяет, какую часть свободного пространства контейнера должен занять этот элемент. 1 для каждого элемента распределит место поровну.
flex-shrink число (по умолчанию 1) Определяет, насколько элемент может сжиматься при нехватке места. 0 означает запрет на сжатие — элемент сохраняет заданный размер.
flex-basis auto · длина · проценты Задает начальный размер элемента до распределения свободного пространства. По сути, это «идеальный» размер элемента по главной оси.
align-self auto · те же, что у align-items Переопределяет align-items контейнера для одного конкретного элемента.

В чем разница между justify-content и align-items?

justify-content управляет выравниванием вдоль главной оси, а align-items — вдоль поперечной оси. Главная ось — это направление, заданное flex-direction: горизонтальное для row и вертикальное для column. При смене flex-direction с row на column оси меняются местами, поэтому justify-content начинает отвечать за вертикаль, а align-items — за горизонталь. Эта путаница — одна из самых частых ошибок при изучении Flexbox; индикаторы осей под предпросмотром в нашей песочнице помогут вам визуализировать этот процесс.

Как мне центрировать элемент с помощью Flexbox?

Для идеального центрирования одного элемента и по горизонтали, и по вертикали:

Три строки:
display: flex;
justify-content: center;  /* по горизонтали */
align-items: center;  /* по вертикали */

Это современная замена старым хакам с margin: auto, transform: translate(-50%, -50%) или position: absolute. Попробуйте это в песочнице, выбрав пресет Modal Center.

Объяснение реальных пресетов макетов

Holy Grail Layout (Святой Грааль)

Классический макет страницы из трех колонок: левая панель, основной контент, правая панель — с шапкой и подвалом. Раньше это было очень сложно реализовать на float; Flexbox делает это элементарным. Средняя колонка использует flex: 1, забирая все оставшееся горизонтальное пространство, пока боковые колонки сохраняют заданную ширину.

Card Grid (Сетка карточек)

Ряд карточек с переносом, которые переходят на новые строки при сужении экрана. Используется flex-wrap: wrap, а каждой карточке задано flex: 1 1 240px, что означает: карточка может расти и сжиматься, но никогда не станет уже 240px.

Navbar (Навигация)

Горизонтальная панель навигации с логотипом слева и ссылками справа. Секрет в justify-content: space-between с логотипом и группой ссылок как двумя дочерними элементами, плюс внутренний flex-контейнер для самих ссылок.

Hero Section (Главный блок)

Вертикальный стек с контентом, центрированным по горизонтали и вертикали — идеально для первого экрана лендинга. Использует flex-direction: column, justify-content: center и align-items: center в высоком контейнере.

Modal Center (Модальное окно)

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

Sticky Footer (Липкий подвал)

Подвал, который прижат к низу экрана при малом количестве контента, но отодвигается вниз, если контента много. Достигается установкой для body display: flex; flex-direction: column; min-height: 100vh, а для основного контента — flex: 1.

В чем разница между flex-grow, flex-shrink и flex-basis?

Эти три свойства (объединенные в сокращение flex) описывают, как элемент работает с пространством:

Запись flex: 1 разворачивается в flex: 1 1 0% — равный рост, равное сжатие, нулевой базис — элементы делят контейнер поровну независимо от контента. flex: auto разворачивается в flex: 1 1 auto, что учитывает размер контента как базу.

Когда использовать Flexbox, а когда Grid?

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

Используйте CSS Grid для двумерных макетов, где нужно контролировать и строки, и столбцы одновременно — макеты страниц, галереи, дашборды. Grid ориентирован на структуру макета и позволяет размещать элементы в именованные области.

Они дополняют друг друга. Многие дизайны сочетают их: сетка страницы на Grid, внутри которой навигация и карточки на Flexbox.

Советы по освоению Flexbox

Поддержка браузерами и совместимость

CSS Flexbox поддерживается всеми современными браузерами, включая Chrome, Firefox, Safari, Edge и все основные мобильные браузеры. Свойство gap для flex-контейнеров получило универсальную поддержку в 2021 году. Для устаревших браузеров (IE10/11) требуются вендорные префиксы; для работы с ними изучите ресурс flexbugs.

Часто задаваемые вопросы

Почему мой flex-элемент выходит за границы контейнера?

У flex-элементов есть неявное свойство min-width: auto, основанное на их контенте. Длинные слова или блоки кода могут сделать элемент шире контейнера. Исправьте это, задав элементу min-width: 0 (или min-height: 0 для вертикальных макетов).

В чем разница между space-between, space-around и space-evenly?

space-between не оставляет места по краям, распределяя его только между элементами. space-around добавляет половину отступа по краям и полные отступы между ними. space-evenly делает все отступы (и по краям, и между) абсолютно одинаковыми. Переключайте их в песочнице, чтобы увидеть разницу.

Можно ли анимировать свойства flex?

Да. flex-grow, flex-shrink, flex-basis, order и gap поддерживают переходы (transitions). Анимация flex-direction, justify-content и align-items не поддерживается, так как это дискретные свойства.

Работает ли песочница офлайн?

Все вычисления Flexbox происходят в вашем браузере с использованием нативного CSS. После загрузки страницы вы можете использовать песочницу без интернета — здесь нет API-запросов или серверных вычислений.

Готов ли сгенерированный код для продакшена?

Да. Экспортируемый CSS использует стандартные свойства, поддерживаемые всеми современными браузерами. HTML использует семантические имена классов (flex-container, flex-item), которые вы можете переименовать под свой проект.

Дополнительные ресурсы

Ссылайтесь на этот контент, страницу или инструмент так:

"Песочница CSS Flexbox" на сайте https://ru.miniWebtool.com/песочница-css-flexbox/ от MiniWebtool, https://MiniWebtool.com/

от команды miniwebtool. Обновлено: 25 апреля 2026 г.

Инструменты для веб-мастеров:

Популярные и обновлённые инструменты:

Компилятор Less в CSSКомпилятор SCSS в CSSCSS компрессорСмотреть все →
Домашняя страница > Инструменты для веб-мастеров > Песочница CSS Flexbox