This page was translated from English by the community. Learn more and join the MDN Web Docs community.

View in English Always switch to English

flex-direction

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨сентябрь 2015 г.⁩.

CSS-свойство flex-direction указывает, как flex-элементы располагаются во flex-контейнере по главной оси и направлению (обычном или обратном).

Интерактивный пример

flex-direction: row; 
flex-direction: row-reverse; 
flex-direction: column; 
flex-direction: column-reverse; 
<section class="default-example" id="default-example"> <div class="transition-all" id="example-element"> <div>Item One</div> <div>Item Two</div> <div>Item Three</div> </div> </section> 
#example-element { border: 1px solid #c5c5c5; width: 80%; display: flex; } #example-element > div { background-color: rgba(0, 0, 255, 0.2); border: 3px solid blue; width: 60px; margin: 10px; } 

Обратите внимание, что значения row и row-reverse зависят от направления flex-контейнера. Если его атрибут dir равен ltr, то row представляет собой горизонтальную ось, направленную слева направо, а row-reverse — справа налево; если атрибут dir равен rtl, то row представляет собой горизонтальную ось, ориентированную справа налево, а row-reverse — слева направо.

Синтаксис

css
/* Направление, в котором блоки будут располагаться в строку */ flex-direction: row; /* Как <row>, но наоборот */ flex-direction: row-reverse; /* Направление, в котором блоки будут располагаться в виде столбца */ flex-direction: column; /* Как <column>, но наоборот */ flex-direction: column-reverse; /* Общие значения */ flex-direction: inherit; flex-direction: initial; flex-direction: revert; flex-direction: revert-layer; flex-direction: unset; 

Значения

Может принимать следующие значения:

row

Главная ось flex-контейнера определена точно так же, как направление текста. Точки main-start и main-end совпадают с направлением контента.

row-reverse

Ведёт себя аналогично row, но точки main-start и main-end переставлены местами.

column

Главная ось flex-контейнера такая же, как ось блока (block-axis). Точки main-start и main-end такие же, как точки before и after режима записи (writing-mode).

column-reverse

Ведёт себя как column, но точки main-start и main-end переставлены местами.

Доступность

Использование свойства flex-direction со значениями row-reverse и column-reverse создаст различие между визуальным представлением содержимого и его порядком в DOM. Это отрицательно влияет на пользователей с плохим зрением, использующих навигацию с помощью вспомогательных технологий, таких как программы чтения с экрана. Если визуальный порядок важен, пользователи программ чтения с экрана не будут иметь доступа к правильному порядку.

Формальное определение

Начальное значениеrow
Применяется кflex-контейнеры
Наследуетсянет
Обработка значениякак указано
Animation typediscrete

Формальный синтаксис

flex-direction = 
row |
row-reverse |
column |
column-reverse

Примеры

Использование column-reverse и row-reverse

HTML

html
<h4>Пример flex-direction: column-reverse</h4> <div id="col-rev" class="content"> <div class="box red">A</div> <div class="box lightblue">B</div> <div class="box yellow">C</div> </div> <h4>Пример flex-direction: row-reverse</h4> <div id="row-rev" class="content"> <div class="box red">A</div> <div class="box lightblue">B</div> <div class="box yellow">C</div> </div> 

CSS

css
.content { width: 200px; height: 200px; border: 1px solid #c3c3c3; display: flex; } .box { width: 50px; height: 50px; } #col-rev { flex-direction: column-reverse; } #row-rev { flex-direction: row-reverse; } .red { background-color: red; } .lightblue { background-color: lightblue; } .yellow { background-color: yellow; } 

Результат

Спецификации

Specification
CSS Flexible Box Layout Module Level 1
# flex-direction-property

Совместимость с браузерами

Смотрите также