Positionner correctement des éléments en CSS s'est toujours révélé être une mission aussi palpitante que fastidieuse en raison d'un lourd passé de navigateurs assez peu enclins à suivre des standards communs.
Depuis sa création, CSS propose officiellement quatre types de rendus d'éléments :
Le rendu "bloc"Le rendu "inline"Le rendu "tabulaire"Le rendu "positionné"
Chacune des valeurs de la propriété display (par exemple inline-block), de float, ou de position, renvoie à l'un de ces quatre types de rendus.
CSS3 étend ce périmètre en introduisant un nouveau modèle de boîte "flexible" : Flexbox, ou Flexible Box Layout Module.
Flexbox est un nouveau mode de positionnement, introduit via la propriété display, permettant de créer un contexte général d'affichage sur un parent et d'en faire hériter ses enfants :
Distribution en bloc ou en ligne,Alignements horizontaux et verticaux,Gestion des espaces disponibles (fluidité à l'instar des cellules de tableau),Réorganisation des éléments indépendamment de l'ordre du flux (DOM).