Propriété CSSFlexbox

align-items

Aligne les éléments sur l’axe secondaire d’un conteneur flex ou grid.

Valeur initiale
normal
Héritée
Non
Animable
non
S’applique à
tous les éléments, l’effet se voit dans les conteneurs flex et grid
JavaScript
element.style.alignItems = "center"
Sur cette page

Exemple

#
CSS
.profile {
  display: flex;
  align-items: center;
  gap: 12px;
}
Aperçu

Définition et utilisation

#

La propriété align-items positionne tous les éléments du conteneur sur l’axe secondaire, c’est-à-dire perpendiculaire à l’axe principal. En ligne (flex-direction: row), c’est un alignement vertical : en haut, en bas, au centre ou sur la ligne de base du texte.

Par défaut, les éléments flex s’étirent (stretch) sur toute la hauteur de la ligne. C’est pourquoi les colonnes d’une mise en page flex ont une hauteur égale sans aucune astuce.

Un élément isolé peut remplacer ce réglage avec sa propre propriété align-self.

Syntaxe

#
Syntaxe
align-items: normal | stretch | flex-start | flex-end | center | baseline | start | end;

Valeurs

#
  • stretch

    Les éléments sans hauteur définie s’étirent sur toute la hauteur du conteneur.
  • flex-start

    Les éléments se collent au début de l’axe secondaire, en ligne au bord supérieur.
  • flex-end

    Les éléments se collent à la fin de l’axe secondaire.
  • center

    Les éléments se placent au centre de l’axe secondaire.
  • baseline

    Les éléments s’alignent de façon à ce que les lignes de base de leur texte soient sur une même ligne, même avec des tailles de police différentes.

Valeurs en pratique

#

stretch

Les éléments sans hauteur définie s’étirent sur toute la hauteur du conteneur.
.demo { align-items: stretch; }

flex-start

Les éléments se collent au début de l’axe secondaire, en ligne au bord supérieur.
.demo { align-items: flex-start; }

flex-end

Les éléments se collent à la fin de l’axe secondaire.
.demo { align-items: flex-end; }

center

Les éléments se placent au centre de l’axe secondaire.
.demo { align-items: center; }

baseline

Les éléments s’alignent de façon à ce que les lignes de base de leur texte soient sur une même ligne, même avec des tailles de police différentes.
.demo { align-items: baseline; }

Compatibilité des navigateurs

#

Largement disponible

Fonctionne dans tous les navigateurs modernes, y compris sur mobile. Vous pouvez l’utiliser sans crainte.

  • Chrome
  • Edge
  • Firefox
  • Safari

Bonnes pratiques

#
  • Si vous voulez aligner un seul élément, utilisez align-self sur cet élément.
  • Avec flex-direction: column, l’axe secondaire est horizontal, donc align-items aligne les éléments horizontalement.

Entrées associées

#

Vous voyez une erreur ou il manque un exemple ? Écrivez-nous.