Le module de disposition des boîtes flexibles CSS (CSS Flexible Box Layout) est un module de CSS qui définit un modèle de boîtes optimisé pour la conception des interfaces utilisateurs. En utilisant le modèle des boîtes flexibles, les éléments d'une conteneur flexible peuvent être disposés dans n'importe quelle direction et étendre leurs dimensions (pour remplir un espace vide) ou se réduire pour éviter de dépasser en dehors de l'élément parent. On peut facilement manipuler l'alignement horizontal ou vertical des éléments fils. On peut aussi imbriquer plusieurs niveaux de boîtes flexibles afin de construire des dispositions en deux dimensions..

Exemple

Dans l'exemple qui suit, on utilise display: flex pour un conteneur. Cela signifie que les trois éléments fils deviennent des éléments flexibles. La propriété justify-content a été paramétrée avec la valeur space-between afin d'espacer les éléments de façon égale le long de l'axe principal. Ainsi, on a le même espace à droite et à gauche de chaque élément et, aux extrêmités du conteneur, les bords des éléments fils qui sont alignés avec les bords du conteneur. On peut également voir que les éléments sont étirés le long de l'axe orthogonale (cross axis) car la valeur par défaut de la propriété align-items est stretch. Ainsi, les éléments flexibles s'étirent pour occuper toute la hauteur du conteneur flexible, ils sont donc aussi grand que le plus grand des éléments.

Référence

Propriétés CSS

Guides

Les concepts de base des boîtes flexibles
Un aperçu des différentes fonctionnalités offertes par les boîtes flexibles.
Les liens entre flexbox et les autres méthodes de disposition
Comment flexbox s'articule avec les autres méthodes de disposition et les différents modules de spécification CSS.
L'alignement des éléments au sein d'un conteneur flexible
Le fonctionnement des propriétés d'alignement des boîtes dans le contexte des boîtes flexibles.
Ordonner les éléments flexibles
Ce guide explique les différentes méthodes qui permettent de modifier l'ordre et la direction des éléments dans le conteneur flexible et aborde également les problèmes que cela peut causer.
Contrôler les proportions des éléments flexibles le long de l'axe principal
Cet article explique le fonctionnement des propriétés flex-grow, flex-shrink et flex-basis.
Maîtriser le passage à la ligne des éléments flexibles
Comment créer des conteneur flexibles qui s'étendent sur plusieurs lignes et contrôler l'affichage des éléments sur ces lignes.
Les cas d'utilisation classiques des boîtes flexibles
Des design patterns pouvant être résolus avec les boîtes flexibles.
La rétrocompatibilité de flexbox
L'état de la compatibilité des navigateurs pour les boîtes flexibles, les différents problème d'interopérabilité, la gestion des anciens navigateurs et l'évolution de la spécification.

Spécifications

Spécification État Commentaires
CSS Flexible Box Layout Module Candidat au statut de recommandation Définition initiale.

Compatibilité des navigateurs

Fonctionnalité Firefox (Gecko) Chrome Internet Explorer Opera Safari
Support simple 20.0 (20.0) 21.0-webkit
29.0
10.0-ms
11.0
12.10 6.1-webkit
Fonctionnalité Firefox Mobile (Gecko) Android IE Phone Opera Mobile Safari Mobile
Support simple (Oui) 4.4 11 12.10 7.1-webkit

Voir aussi

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : SphinxKnight, fscholz
 Dernière mise à jour par : SphinxKnight,