CSS flex-flow property
The flex-flow
property is a shorthand property in CSS used to set both the flex-direction
and flex-wrap
properties at the same time for a flex container. Flexbox is a powerful layout model in CSS that allows you to create flexible and responsive layouts.
The flex-direction
property determines the direction of the flex items inside the flex container, while the flex-wrap
property controls whether the flex items should wrap to a new line when there is not enough space in the flex container.
The syntax for the flex-flow
property is as follows:
flex-flow: <flex-direction> <flex-wrap>;
Here’s what each value means:
<flex-direction>
: This value sets the main axis of the flex container, which determines the direction in which the flex items will be arranged. It can take one of the following values:
row
: The default value. Flex items are arranged horizontally along the main axis (left to right).row-reverse
: Flex items are arranged horizontally along the main axis, but in reverse order (right to left).column
: Flex items are arranged vertically along the main axis (top to bottom).column-reverse
: Flex items are arranged vertically along the main axis, but in reverse order (bottom to top).
<flex-wrap>
: This value determines whether the flex items should wrap to a new line if there is not enough space in the flex container. It can take one of the following values:
nowrap
: The default value. Flex items are not allowed to wrap; they will be displayed on a single line.wrap
: Flex items are allowed to wrap to a new line if there’s not enough space in the flex container.wrap-reverse
: Flex items are allowed to wrap to a new line in reverse order.
Example:
.container {
display: flex;
flex-flow: row wrap;
}
In this example, the .container
element is set as a flex container, and the flex-flow
property is used to set both flex-direction
to row
(flex items arranged horizontally) and flex-wrap
to wrap
(flex items allowed to wrap to a new line if needed).
The flex-flow
shorthand property provides a convenient way to set both flex-direction
and flex-wrap
with a single declaration, making your CSS code cleaner and more concise.