Flex
Flex
Terminology
- Container: Parent containing the items
 - Item: Element inside the flex container
 - Main Axis: Axis along which items are laid
 - Cross Axis: Axis perpendicular to the main axis
 
Properties
Container
Row
Note: The default flex direction is row
<div class="container" style="display: flex">
  …
</div>
Item1
  Item2
  Item3
Column
<div class="container" style="display: flex; flex-direction: column;">
  …
</div>
Item1
  Item2
  Item3
Wrap
<div class="container" style="display: flex; flex-wrap: wrap;">
  …
</div>
Item1
  Item2
  Item3
Main Axis Alignment
Justify Content
space-between
<div class="container" style="display: flex; justify-content: space-between;">
  …
</div>
Item1
  Item2
  Item3
space-around
<div class="container" style="display: flex; justify-content: space-around;">
  …
</div>
Align Items
Align items is to align items along the cross-axis in the parent container
Note: It is mostly better to ensure that the items are of same height
Baseline
<div class="container" style="display: flex; align-items: baseline;">
  …
</div>
Item1
  Item2
  Item3
Stretch
<div class="container" style="display: flex; align-items: stretch;">
  …
</div>
Item1
  Item2
  Item3
Cross Axis Alignment
Align Content
space-around
<div class="container" style="display: flex; flex-wrap: wrap; align-content: space-around">
  …
</div>
Item1
  Item2
  Item3
Items
Align Self
This can be used to override the value set for align-items for an individual item
<div class="container" style="display: flex; flex-direction: column;">
  <div class="item">Item1</div>
  <div class="item">Item2</div>
  <div class="item" style="align-self: flex-end">Item3</div>
</div>
Item1
  Item2
  Item3