position

Choisit la façon de positionner un élément : dans le flux, en relatif, en absolu, en fixe ou en collant.

Valeur initiale
static
Héritée
Non
Animable
non
S’applique à
tous les éléments
JavaScript
element.style.position = "absolute"
Sur cette page

Exemple

#
CSS
.card {
  position: relative;
}

.card .badge {
  position: absolute;
  top: 12px;
  right: 12px;
}
Aperçu

Définition et utilisation

#

La propriété position décide comment la position de l’élément est calculée. Par défaut (static), l’élément reste là où il tombe dans le flux normal de la page, et les propriétés top, left et les autres ne font rien.

relative déplace l’élément par rapport à son emplacement habituel, qui reste réservé. absolute sort l’élément du flux et le positionne par rapport à l’ancêtre positionné le plus proche. fixed fixe l’élément à la fenêtre du navigateur, donc il ne défile pas avec la page.

sticky combine les deux comportements : l’élément s’écoule normalement jusqu’à ce que le défilement l’amène à un seuil défini par exemple par top: 0. Il se colle alors en place, mais seulement à l’intérieur de son parent.

Syntaxe

#
Syntaxe
position: static | relative | absolute | fixed | sticky;

Valeurs

#
  • static

    Flux normal. Les valeurs top et left de la démo sont ignorées.
  • relative

    L’élément se déplace de 30px vers le bas et vers la droite, et son emplacement d’origine reste vide.
  • absolute

    L’élément sort du flux (l’élément 3 prend sa place) et se positionne par rapport à l’ancêtre positionné.
  • fixed

    L’élément se fixe à la fenêtre. Ici, la fenêtre est le cadre d’aperçu.
  • sticky

    Faites défiler la liste dans l’aperçu : l’en-tête se colle au bord supérieur de son conteneur.

Valeurs en pratique

#

static

Flux normal. Les valeurs top et left de la démo sont ignorées.
.demo { position: static; }

relative

L’élément se déplace de 30px vers le bas et vers la droite, et son emplacement d’origine reste vide.
.demo { position: relative; }

absolute

L’élément sort du flux (l’élément 3 prend sa place) et se positionne par rapport à l’ancêtre positionné.
.area { position: relative; }
.demo { position: absolute; }

fixed

L’élément se fixe à la fenêtre. Ici, la fenêtre est le cadre d’aperçu.
.demo { position: fixed; }

sticky

Faites défiler la liste dans l’aperçu : l’en-tête se colle au bord supérieur de son conteneur.
.demo { position: sticky; top: 0; }

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

#
  • Un élément en absolute se positionne par rapport à l’ancêtre le plus proche dont le position est différent de static. On ajoute le plus souvent position: relative au parent.
  • sticky ne fonctionne pas si un ancêtre a overflow: hidden, ou si vous ne précisez pas de seuil, par exemple top: 0.

Entrées associées

#

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