This page is being translated; the original is shown (Русский ).
Направление размещения
Классы flex-row и flex-col задают flex-direction — основную ось
флекс-контейнера: строку или столбец. Варианты с -reverse ставят элементы в
обратном порядке. Берите их вместе с flex ,
когда нужно выбрать, как идут элементы, или перестроить их на другой ширине
экрана.
Пример
Строка и столбец
Три элемента в одном порядке разметки. Подпись над образцом — класс
контейнера.
HTML wrap_text Wrap source lines content_copy Copy
<div class ="grid grid-col-1 sm:grid-col-2 gap-4 color-on-surface" >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >flex-row</code >
<div class ="flex flex-row gap-1 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-secondary-container color-on-secondary-container radius-ui" >3</span >
</div >
</div >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >flex-row-reverse</code >
<div class ="flex flex-row-reverse gap-1 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-secondary-container color-on-secondary-container radius-ui" >3</span >
</div >
</div >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >flex-col</code >
<div class ="flex flex-col gap-1 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-secondary-container color-on-secondary-container radius-ui" >3</span >
</div >
</div >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >flex-col-reverse</code >
<div class ="flex flex-col-reverse gap-1 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-secondary-container color-on-secondary-container radius-ui" >3</span >
</div >
</div >
</div >
Ширина экрана
С префиксом ширины класс действует от указанной ширины и шире. Меняйте ширину
окна просмотра: на узком экране элементы стоят столбцом, с ширины md — в строку.
HTML wrap_text Wrap source lines content_copy Copy
<div class ="flex flex-col gap-3 color-on-surface" >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >flex-col md:flex-row</code >
<div class ="flex flex-col md:flex-row gap-1 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-secondary-container color-on-secondary-container radius-ui" >3</span >
</div >
</div >
</div >
Классы
Класс
CSS
Значения
flex-row
flex-direction: row
—
flex-col
flex-direction: column
—
flex-row-reverse
flex-direction: row-reverse
—
flex-col-reverse
flex-direction: column-reverse
—
Условия (что это ): ширина экрана — sm:, md:, lg:, xl:, xxl:; состояния — нет. Например: sm:flex-row.
Классы и переменные собраны из CSS выпуска и обновляются вместе с ним.
Применение
Как выбрать
flex-row — направление по умолчанию у флекс-контейнера; класс нужен, чтобы
вернуть строку после flex-col на другой ширине экрана.
flex-col — элементы друг под другом: форма, меню, список карточек на
телефоне.
flex-row-reverse и flex-col-reverse меняют только порядок показа; в
разметке элементы остаются в прежнем порядке.
Столбец на телефоне, строка на широком экране
HTML wrap_text Wrap source lines content_copy Copy
<div class ="flex flex-col md:flex-row gap-2" >
<aside class ="md:basis-1/4" >Фильтры</aside >
<main class ="md:basis-3/4" >Список</main >
</div >
Направление меняет и смысл других классов: при flex-col классы
justify-*
выравнивают по вертикали, а
items-cross-* — по
горизонтали.
Ограничения
flex-row следует направлению письма: при dir="rtl" строка идёт справа
налево, а flex-row-reverse — слева направо.
Варианты с -reverse расходятся с порядком разметки, по которому идут фокус
клавиатуры и программы экранного доступа. Если порядок важен для смысла,
меняйте порядок в разметке, а не класс.
См. также
Предыдущая Базисный размер Следующая Растяжимость элементов