Cascading Style Sheets/Flexbox
This page was last edited on 11 December 2024, and is still under heavy construction. Content that is added is likely to be moved/deleted/edited significantly in a short amount of time. All Wikibookians with knowledge in this subject are welcome to help out. You can remove this tag when the book has become more mature. |
Flexbox is a great way to improve layouts in web pages. It is supported in every major browsers.
Container
editflex-direction
editcolumn
editcolumn-reverse
editrow
editrow-reverse
editflex-wrap
editnowrap
editAs you can see, the elements are squeezed to fit the box.
wrap
editAs you can see, the elements are wrapped.
wrap-reverse
editAs you can see, the elements are wrapped from bottom to top.
flex-flow
editSyntax: flex-flow: flex-direction flex-wrap;
justify-content
editcenter
editflex-start
editflex-end
editspace-evenly
editspace-around
editspace-between
editalign-items
editA container height of 4em is used to demonstrate these examples.
center
editflex-start
editflex-end
editstretch
editbaseline
editThis demonstration is shown with different font sizes. The position matches the bottom of text.
align-content
editA container height of 16em is used to demonstrate these examples. The container must wrap the items in order to work.
flex-start
editflex-end
editcenter
editspace-evenly
editspace-around
editspace-between
editgap
editThis CSS function for flexbox is a fairly new function. It is introduced in Chrome and Edge 84, Firefox 63, Opera 70 and Safari 14.1. It measures the gutter between flex items.
This is a example with 4px gap around the items.
This is another example with 12px 6px gap around the items (12px between rows, 6px between columns).
Items
editorder
editThis property determines the order of each flex item. It is sorted from lowest to highest.
This demonstration shows:
- 1st div shows an order of 4
- 2nd div shows an order of 6
- 3rd div shows an order of 2
- 4th div shows an order of 3
- 5th div shows an order of 1
- 6th div shows an order of 5
flex-grow
editThis property controls the growth relative to each flex item.
flex-shrink
editThis property controls the shrinkage relative to each flex item. Width of 25% for each item is used (150% in total), allowing for shrinking without wrapping.