Flexbox

Flexbox est un modèle de mise en page CSS qui aligne des éléments sur une ligne ou une colonne, répartissant l'espace de façon souple et responsive.
Design
Created on
01.08.2026
Updated on
17.08.2026

Résumer avec

Ce qu'est Flexbox

Flexbox, abréviation de CSS Flexible Box Layout, est un modèle de mise en page qui aligne les éléments sur un seul axe, une ligne ou une colonne, et contrôle la façon dont ils se partagent l'espace disponible. Il a été conçu pour résoudre des problèmes d'interface quotidiens que l'ancien CSS gérait maladroitement : centrer un élément, espacer une barre de navigation régulièrement, ou faire en sorte qu'un groupe d'éléments s'étire pour remplir un conteneur.

Le nom résume l'idée. Les éléments d'un conteneur flex peuvent se flexibiliser : grandir pour occuper la place libre ou rétrécir pour éviter le débordement, si bien qu'une mise en page s'adapte naturellement aux tailles d'écran et aux longueurs de contenu. Pour la plupart des mises en page à une dimension, Flexbox est l'outil que designers et développeurs choisissent en premier.

Avant Flexbox, aligner et répartir le contenu reposait sur des techniques jamais conçues pour cela, comme les flottants, l'inline-block et le positionnement absolu, chacune avec ses caprices qui rendaient les tâches simples fragiles. Flexbox a remplacé ce bricolage par un modèle bâti spécifiquement pour disposer les composants d'interface, ce qui explique le soulagement ressenti quand les navigateurs l'ont adopté. Aujourd'hui, il est pris en charge partout où cela compte, donc il est rare d'avoir à revenir aux anciennes astuces.

Comment fonctionne Flexbox

Flexbox distingue deux rôles : le conteneur et ses éléments. Vous transformez un élément en conteneur flex avec une seule déclaration, et ses enfants directs deviennent automatiquement des éléments flex que vous pouvez aligner et répartir.

  • Axe principal : la direction du flux, définie par flex-direction en ligne (row) ou colonne (column).
  • justify-content : la répartition des éléments le long de l'axe principal, par exemple centrés ou espacés.
  • align-items : l'alignement des éléments sur l'autre axe, par exemple en haut, au centre ou étirés.
  • flex-wrap : le fait que les éléments restent sur une ligne ou passent à la ligne.

Chaque élément peut aussi grandir, rétrécir et partir d'une taille de base, ce qui permet à une rangée de cartes de se partager l'espace intelligemment sans largeurs fixes.

À quoi sert Flexbox

Flexbox brille sur les mises en page à une dimension, où l'on raisonne sur une seule ligne de contenu. Barres de navigation, groupes de boutons, rangées de formulaire, listes de cartes, et tout bloc que vous voulez centrer verticalement et horizontalement en sont des cas classiques. Le fameux problème du centrage parfait, jadis source de bricolages, tient désormais en deux lignes de CSS.

Comme les éléments réagissent à l'espace disponible, Flexbox est responsive par nature. Une barre d'outils peut étaler ses boutons sur un grand écran et les faire passer à la ligne élégamment sur un téléphone, sans media query pour le comportement de base.

C'est sur l'alignement que Flexbox récolte le plus d'éloges. Contrôler la position des éléments sur les deux axes, et la répartition de l'espace restant entre eux, était autrefois réellement pénible. Avec Flexbox, vous décrivez l'intention directement, espacer ceci régulièrement, coller cela à la fin, centrer le reste, et le navigateur calcule les pixels exacts. Comme le calcul s'adapte au conteneur, les mêmes règles continuent de fonctionner quand l'écran ou le contenu change.

Flexbox et CSS Grid

Flexbox et CSS Grid sont complémentaires, pas rivaux. Flexbox est à une dimension : il dispose le contenu en ligne ou en colonne et convient quand c'est le contenu qui doit dicter les tailles. Grid est à deux dimensions : il gère lignes et colonnes en même temps et convient à la structure d'une page, où vous définissez la grille à l'avance.

Une règle pratique : utilisez Grid pour le squelette global de la page et Flexbox pour les composants à l'intérieur de chaque zone. La plupart des projets réels emploient les deux, et ils s'imbriquent proprement, donc la question n'est pas lequel choisir mais où placer chacun.

Flexbox dans les outils no-code

Nul besoin d'écrire du CSS à la main pour utiliser Flexbox. Les éditeurs visuels comme Webflow et Framer l'exposent directement : régler un conteneur en disposition horizontale ou verticale avec des contrôles d'alignement, c'est du Flexbox sous le capot. Comprendre le modèle vous rend donc bien plus efficace dans ces outils, car les options des panneaux correspondent aux vraies propriétés flex.

C'est pourquoi la maîtrise de Flexbox compte même pour qui n'ouvre jamais d'éditeur de code. Savoir ce que font justify et align transforme un panneau déroutant en un panneau prévisible.

Comprendre ses limites fait partie de son bon usage. Parce que Flexbox raisonne dans une seule direction à la fois, vouloir lui faire contrôler à la fois les lignes et les colonnes d'une grille complexe mène à un balisage fragile et trop imbriqué. Quand vous vous surprenez à lutter contre lui pour aligner des éléments sur deux axes en même temps, c'est le signal qu'il faut passer à CSS Grid. Savoir où Flexbox s'arrête, c'est ce qui garde une mise en page propre plutôt qu'astucieuse.

Flexbox chez BeBranded

Chez BeBranded, nous construisons la plupart des composants d'interface avec Flexbox, que ce soit en CSS écrit à la main ou via les contrôles de mise en page de Webflow. Il nous donne des barres de navigation, des grilles de cartes et des sections de contenu propres et responsive, qui s'adaptent à tout écran sans tailles fixes fragiles. Nous l'associons à CSS Grid pour la structure de page, afin que chaque partie d'un design utilise le bon outil. Le bénéfice pour le client est un site qui paraît intentionnel sur chaque appareil et reste facile à mettre à jour, car la logique de mise en page est simple et cohérente plutôt qu'un assemblage de contournements.

FAQ

Flexbox sert à disposer des éléments sur une ligne ou une colonne et à contrôler leur alignement et le partage de l'espace. Il est idéal pour les barres de navigation, les groupes de boutons, les listes de cartes et le centrage, et il s'adapte de façon responsive aux tailles d'écran.
Flexbox est à une dimension, disposant les éléments en ligne ou en colonne, tandis que CSS Grid est à deux dimensions, gérant lignes et colonnes ensemble. Grid convient à la structure de page, Flexbox aux composants internes. La plupart des projets utilisent les deux, souvent imbriqués.
Faites du parent un conteneur flex, puis mettez justify-content à center pour l'alignement horizontal et align-items à center pour l'alignement vertical. Cela centre un enfant dans les deux sens en deux lignes de CSS, une tâche qui exigeait autrefois des bricolages.
Oui. Les éléments flex grandissent et rétrécissent avec l'espace disponible, et flex-wrap leur permet de passer à la ligne sur les petits écrans. Beaucoup de mises en page s'adaptent ainsi naturellement, souvent sans aucune media query pour le comportement de base.
Non. Des éditeurs visuels comme Webflow et Framer exposent Flexbox via des panneaux de mise en page, où vous réglez direction et alignement avec des contrôles plutôt que du CSS. Comprendre le modèle sous-jacent rend tout de même ces panneaux bien plus faciles à utiliser.
L'axe principal est la direction du flux des éléments, définie par flex-direction en ligne ou colonne. Des propriétés comme justify-content agissent le long de cet axe, tandis qu'align-items agit sur l'axe transversal perpendiculaire.

Prêt à booster vos conversions ?

Notre équipe est là pour comprendre vos besoins et travailler avec vous pour créer vos prochains projets.
Recevez des news et des ressources.
Des conseils pratiques directement dans votre boîte mail.
Merci ! Votre demande a bien été reçue.
Oups ! Une erreur est survenue lors de l'envoi du formulaire.