Pour pouvoir utiliser le positionnement Flexbox il faut créer un container (dit flexible) et le déclarer de display : flex.
Ce container peut être un div ou une balise structurelle : body, header, footer, main, section, ...
le composant de displayflex est donc qualifié de container
les composants à l'intérieur du container sont qualifiés d'items
Flexbox se base sur deux axes pour positionner les items :
l'axe principal (main axis)
l'axe croisé (cross axis) qui est perpendiculaire à l'axe principal
4.2. Positionnement sur l'axe principal
l'axe principal peut être horizontal et donc l'axe croisé sera vertical : flex-direction :row,
cela implique que les items seront placés horizontalement
ou alors l'axe principal est vertical et donc l'axe croisé sera horizontal : flex-direction :column,
cela implique que les items seront placés verticalement
L'attribut flex-direction peut prendre les valeurs suivantes :
row : sur une ligne en commençant à gauche
row-reverse : sur une ligne en commençant à droite
column : sur une colonne en commençant en haut
column-reverse : sur une colonne en commençant en bas
On peut ensuite positionner les items en utilisant deux propriétés :
justify-content qui est relatif à l'axe principal
align-items qui est relatif à l'axe croisé
Par exemple, pour centrer horizontalement et verticalement les items, on utilise la valeur center, mais
il existe bien d'autres manières de positionner les items : exemple.
Dans les exemples qui suivent on utilise un container doté des propriétés suivantes :