Направление главной оси
Свойство direction эквивалентно CSS-свойству flex-direction и контролирует расположение дочерних элементов.
"row"— элементы располагаются в ряд слева направо (дляltrязыков) или справа налево (дляrtlязыков) (по умолчанию);"column"— элементы располагаются в столбец.
Инвертированное направление
Задаётся свойством reverse.
true— применяется инвертированный порядок, эквивалентноCSS-свойствамflex-direction: row-reverseиflex-direction: column-reverse, в зависимости от указанногоdirection;false— инвертированный порядок не применяется (по умолчанию).
Отступ между элементами
Задаётся свойством gap.
Принимает значение либо числовое (в пикселях), либо из списка предопределённых
дизайн-системой значений ("2xs" | "xs" | "s" | "m" | "l" | "xl" | "2xl" | "3xl" | "4xl").
При передаче примитивного значения отступы между строками и столбцами будут одинаковы и равны переданному значению.
При передаче массива ([row, column]) есть возможность задать разные значения
для строк (первый элемент массива) и столбцов (второй элемент массива).
Выравнивание контента
Выравнивание по главной оси
Задаётся свойством justify и эквивалентно CSS-свойству justify-content.
"start"— элементы располагаются в начале главной оси;"end"— элементы располагаются в конце главной оси;"center"— элементы располагаются по центру главной оси;"space-around"— элементы располагаются равномерно по главной оси, с отступом по бокам;"space-between"— элементы располагаются равномерно по главной оси, первый и последний элементы прижимаются к краям контейнера;"space-evenly"— элементы располагаются так, что расстояние между любыми двумя соседними элементами одинаково.
Выравнивание по вспомогательной оси
Задаётся свойством align и эквивалентно CSS-свойству align-items.
"start"— элементы располагаются в начале вспомогательной оси;"end"— элементы располагаются в конце вспомогательной оси;"center"— элементы располагаются по центру вспомогательной оси;"stretch"— элементы растягиваются на всё доступное пространство по вспомогательной оси;"baseline"— элементы располагаются по базовой линии.
Перенос строк
По умолчанию дочерние элементы компонента Flex переносятся на следующую строку при переполнении контейнера.
Свойство noWrap позволяет отключить перенос контента (позволяет выходить за пределы родителя).
true— перенос отключен;false— перенос включен, эквивалентноflex-wrap: nowrap(по умолчанию).
Отступы вокруг контейнера
Задаётся свойством margin.
"none"— отступы отсутствуют (по умолчанию);"auto"— включены платформенные отступы.
Значение margin="auto" нужно для того, чтобы визуально выравнивать контент во Flex с остальными компонентами
VKUI (например, Header и SimpleCell).
Поэтому его использование обычно актуально только для верхнеуровневых компонентов Flex.
Flex.Item
Подкомпонент Flex.Item используется как обёртка для дочерних элементов компонента Flex в случае, когда нужно
переопределить flex-свойства этих элементов, например, flex-basis:
Свойства компонентов раскладки
Свойства и методы
Flex
| Свойство | Описание |
|---|---|
align | "start" | "center" | "end" | "stretch" | "baseline"Выравнивание элементов по вспомогательной оси, эквивалентно По умолчанию: - |
alignSelf | "start" | "center" | "end" | "stretch" | "baseline"Для задания выравнивания, отличного от установленного на родителе, эквивалентно По умолчанию: - |
baseStyle | CSSPropertiesDeprecated: Since 7.3.0. Свойство устарело и будет удалено в По умолчанию: - |
blockSize | SizePropРазмер элемента по блочной оси (при горизонтальном направлении письма - высота элемента). По умолчанию: - |
Component | ElementType<any, keyof IntrinsicElements>По умолчанию: - |
direction | "row" | "column"Направление осей, эквивалентно По умолчанию: row |
display | "none" | "flex" | "inline-flex"Возможность задать css-свойство По умолчанию: flex |
flexBasis | FlexBasisPropОпределяет начальный размер flex-элемента. По умолчанию: - |
flexGrow | FlexGrowPropОпределяет, насколько элемент будет расти относительно остальных flex-элементов. По умолчанию: - |
flexShrink | FlexShrinkPropОпределяет, насколько элемент будет сжиматься относительно остальных flex-элементов. По умолчанию: - |
gap | GapsPropОтступы между элементами. Значение из списка предопределённых пресетов или число, которое будет приведено к пикселям. Через массив можно задать отступ между столбцами и строками [row, column], если они отличаются. По умолчанию: 0 |
getRootRef | Ref<HTMLElement>По умолчанию: - |
inlineSize | SizePropРазмер элемента по строчной оси (при горизонтальном направлении письма - ширина элемента). По умолчанию: - |
inset | InsetPropСмещение элемента по По умолчанию: - |
insetBlock | InsetPropБоковое смещение по блочной оси (при горизонтальном направлении письма - свойства По умолчанию: - |
insetBlockEnd | InsetPropСмещение конечного отступа по блочной оси (при горизонтальном направлении письма - свойство По умолчанию: - |
insetBlockStart | InsetPropСмещение начального отступа по блочной оси (при горизонтальном направлении письма - свойство По умолчанию: - |
insetInline | InsetPropБоковое смещение по строчной оси (при горизонтальном направлении письма - свойства По умолчанию: - |
insetInlineEnd | InsetPropСмещение конечного отступа по строчной оси (при горизонтальном направлении письма - свойство По умолчанию: - |
insetInlineStart | InsetPropСмещение начального отступа по строчной оси (при горизонтальном направлении письма - свойство По умолчанию: - |
justify | FlexContentPropsВыравнивание элементов по главной оси, эквивалентно По умолчанию: - |
margin | "auto" | "none"Значение По умолчанию: none |
maxBlockSize | SizePropМаксимальный размер элемента по блочной оси (при горизонтальном направлении письма - высота элемента). По умолчанию: - |
maxInlineSize | CSSGlobalValue | ((string | number) & Nothing) | "max-content" | "min-content" | "fit-content"Максимальный размер элемента по строчной оси (при горизонтальном направлении письма - ширина элемента). По умолчанию: - |
minBlockSize | SizePropМинимальный размер элемента по блочной оси (при горизонтальном направлении письма - высота элемента). По умолчанию: - |
minInlineSize | CSSGlobalValue | ((string | number) & Nothing) | "max-content" | "min-content" | "fit-content"Минимальный размер элемента по строчной оси (при горизонтальном направлении письма - ширина элемента). По умолчанию: - |
noWrap | booleanОтключает перенос контента, эквивалентно По умолчанию: false |
overflow | OverflowValueУправление переполнением содержимого. По умолчанию: - |
overflowBlock | OverflowValueУправление переполнением содержимого по блочной оси (при горизонтальном направлении письма - свойство По умолчанию: - |
overflowInline | OverflowValueУправление переполнением содержимого по строчной оси (при горизонтальном направлении письма - свойство По умолчанию: - |
padding | PaddingPropВнутренние отступы со всех сторон. По умолчанию: - |
paddingBlock | PaddingPropВнутренние отступы по блочной оси. По умолчанию: - |
paddingBlockEnd | PaddingPropВнутренний конечный отступ по блочной оси. По умолчанию: - |
paddingBlockStart | PaddingPropВнутренний начальный отступ по блочной оси. По умолчанию: - |
paddingInline | PaddingPropВнутренние отступы по строчной оси. По умолчанию: - |
paddingInlineEnd | PaddingPropВнутренний конечный отступ по строчной оси. По умолчанию: - |
paddingInlineStart | PaddingPropВнутренний начальный отступ по строчной оси. По умолчанию: - |
position | PositionValueПозиционирование элемента. По умолчанию: - |
reverse | booleanДля инвертирования направления, эквивалентно По умолчанию: false |
Flex.Item
| Свойство | Описание |
|---|---|
alignSelf | "start" | "center" | "end" | "stretch" | "baseline"Для задания выравнивания, отлично от родительского, эквивалентно По умолчанию: - |
baseStyle | CSSPropertiesDeprecated: Since 7.3.0. Свойство устарело и будет удалено в По умолчанию: - |
Component | ElementType<any, keyof IntrinsicElements>По умолчанию: - |
flex | "content" | "fixed" | "grow" | "shrink"Позволяет задать предопределенные значения свойства
По умолчанию: - |
flexBasis | string | numberИзначальный размер элемента, эквивалентно По умолчанию: - |
getRootRef | Ref<HTMLElement>По умолчанию: - |