Вебсправочник
Справочник CSS

flex-basis: исходный размер до распределения места

flex-basis задаёт базовый размер flex-элемента по главной оси перед распределением свободного пространства.

Назначение

flex-basis задаёт базовый размер flex-элемента по главной оси перед распределением свободного пространства.

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

При направлении row это относится к ширине, при column — к высоте. Значения auto и 0 ведут к разным исходным расчётам; результат затем корректируют grow, shrink и ограничения размера.

Пример

<style>
.cards{display:flex;flex-wrap:wrap;gap:12px}.card{flex:1 1 12rem;padding:16px;background:#eaf4ee}
</style>
<div class="cards"><div class="card">Первая карточка</div><div class="card">Вторая карточка</div><div class="card">Третья карточка</div></div>

Что должно получиться

Карточки стремятся начинать расчёт с 12rem, могут расти и переноситься. Реальная ширина зависит от доступного места и числа карточек в конкретной строке.

Граница применения и частая ошибка

Не путайте базу с гарантированным итоговым размером. Элемент с flex-basis:12rem может вырасти или сжаться, если это разрешают остальные свойства.

Самостоятельная проверка

Уменьшите контейнер так, чтобы две карточки не помещались в строку. Затем замените базу на 0 и сравните поведение переноса и распределения места.

HTML и CSS можно изменить в песочнице ниже. Она изолирована: JavaScript, внешние ресурсы и отправка форм отключены. Для проверки сетевых запросов, отправки данных или функций браузера используйте отдельную локальную страницу.

Попробуйте сами

HTML + CSS песочница
РЕЗУЛЬТАТ · ИЗОЛИРОВАННЫЙ ПРЕДПРОСМОТР
Измените код и нажмите «Запустить». JavaScript и внешние запросы отключены.
Самостоятельный учебный материал. Техническая документация: первоисточник по теме ↗. Если результат отличается, проверьте код и версию браузера.