mitorun studio

Памятка по флексам

CSS Flexbox Layout

<div class="flex-container">
<div class="flex-element">1</div>
<div class="flex-element">2</div>
<div class="flex-element">3</div> </div>

Свойства флекс-контейнера

display: flex

Задаёт флекс-контейнер, а его дочерние элементы становятся флекс-элементами.

display: flex | inline-flex;

display: flex;
display: inline-flex;

flex-direction

Задаёт направление основной оси флекс-контейнера.

flex-direction: row (default) | row-reverse | column | column-reverse;

flex-wrap

Включает перенос флекс-элементов на следующие строки, если они не помещаются на текущей.

flex-wrap: nowrap (default) | wrap | wrap-reverse;

flex-flow

Сокращённое свойство для flex-direction и flex-wrap.

flex-flow: row nowrap (default) | column-reverse | column wrap | row-reverse wrap-reverse;

row-gap, column-gap

Отступы между рядами и колонками.

row-gap: 0 (default) | 40px | 20rem | 3%;

gap

Сокращение для row-gap и column-gap.

gap: row-gap column-gap;

Свойства для выравнивания

align-items

Выравнивание флекс-элементов поперёк основной оси (по вертикали).

align-items: stretch (default) | flex-start | flex-end | center | baseline;

place-items

Сокращение для align-items и justify-items.

place-items: stretch | start | normal | flex-start | flex-end | center | end | baseline | legacy | left | right | self-start | self-end | first baseline | last baseline;

align-content

Выравнивание строк флекс-элементов поперёк основной оси (по вертикали).

align-content: stretch (default) | flex-start | flex-end | center | space-between | space-around | space-evenly;

justify-content

Выравнивание флекс-элементов вдоль основной оси (по горизонтали).

justify-content: flex-start (default) | flex-end | center | space-between | space-around | space-evenly;

place-content

Сокращение для align-content и justify-content.

place-content: flex-start | start | left | center | end | flex-end | right | space-between | space-around | space-evenly | stretch | safe | unsafe | baseline | first baseline | last baseline;

Свойства флекс-элементов

order

Изменять порядок вывода флекс-элементов.

order: 0 (default) | -1 | 1;

flex-grow

Может ли элемент растягиваться (коэффициент растягивания).

flex-grow: 0 (default) | 1;

flex-shrink

Может ли элемент сжиматься (коэффициент сжатия).

flex-shrink: 1 (default) | 0;

flex-basis

Ширина элемента (начальная?).

flex-basis: auto (default) | content | 200px | 50%;

flex

Сокращение для flex-grow, flex-shrink и flex-basis.

flex: 0 1 auto (default) | 0 0 200px | 1 1 50%;

align-self

Выравнивание флекс-элемента поперёк основной оси (по вертикали), переписывает значение align-items.

align-self: auto (default) | stretch | flex-start | flex-end | center | baseline;

Примеры применения

Отцентрировать блок

Расположить блок по центру по вертикали и горизонтали.

Набери текст
<div class="flex">
<div class="flex-element">Набери текст</div>
</div>
.flex {
display: flex;
justify-content: center;
align-items: center;
height: 100%
}

Простая галерея

Галерея с перестраиваемыми карточками по центру.

Card 1
Card 2
Card 3
<div class="flex">
<div class="flex-element">Card 1</div>
<div class="flex-element">Card 2</div>
<div class="flex-element">Card 3</div>
</div>
.flex {
display: flex;
flex-wrap: wrap;
gap: 10px;
justify-content: center;
}
Олег Миторун Фото Олег Миторун