Flexbox Wrapping & Direction
Flexbox allows you to control the direction in which items flow and whether they wrap onto multiple lines. This flexibility makes it easier to build responsive layouts.
1. flex-direction
The flex-direction
property sets the direction of the main axis along which flex items are placed:
.flex-container {
display: flex;
flex-direction: row; /* default: left to right */
flex-direction: row-reverse; /* right to left */
flex-direction: column; /* top to bottom */
flex-direction: column-reverse; /* bottom to top */
}
2. flex-wrap
The flex-wrap
property allows items to wrap onto multiple lines if needed:
.flex-container {
flex-wrap: nowrap; /* default */
flex-wrap: wrap; /* wrap items to next line */
flex-wrap: wrap-reverse;/* wrap in reverse order */
}
3. flex-flow (Shorthand)
The flex-flow
shorthand combines flex-direction
and flex-wrap
:
.flex-container {
flex-flow: row wrap;
}
4. Responsive Layout Example
Allow content to wrap on smaller screens for better responsiveness:
.flex-container {
display: flex;
flex-wrap: wrap;
gap: 20px;
}
5. Visual Summary
row
: items in horizontal row (default)column
: items in vertical columnwrap
: items move to new line as neededrow-reverse
/column-reverse
: items flow in reverse order
Conclusion
Understanding flex-direction
and flex-wrap
helps you create adaptable, fluid layouts that respond well to different screen sizes and content volumes.