outils et langages numériques
le positionnement d'un élément
mis à jour en janvier 2026
mis à jour en janvier 2026
position sera convoquée et complétée des valeurs static, relative, absolute, fixed ou sticky.Par défaut, tous les éléments html sont positionnés de manière statique. Les éléments positionnés statiquement ne sont pas affectés par les propriétés top, bottom, left et right (étudiées ci après). Malgré son existence, ce positionnement est très rarement sollicité car il existe par défaut. La valeur convoquée pour ce type de positionnement sera static:
côté html
<body><p>un premier paragraphe</p><p class="statique">un deuxième paragraphe</p><p class="statique gauche">un troisième paragraphe</p>
</body>
côté css
p {background-color: #d5bac5;
}.statique {position: static; /* valeur par défaut */
}.gauche {left: 5em; /* la propriété ne s'applique pas sur un élément statique */
}
côté navigateur
un premier paragraphe
un deuxième paragraphe
un troisième paragraphe
En pratique: testez l'exemple de positionnement statique, à manipuler en ligne…
Ce positionnement est très similaire au positionnement statique. Cependant, une fois que l'élément positionné occupe une place dans le flux normal
de la mise en page, vous pouvez modifier sa position finale en complétant la propriété position et sa valeur relative par les propriétés top, bottom, left ou right qui décaleront l'élément par rapport à sa position de départ. Le reste du contenu ne sera pas ajusté pour combler l'espace laissé par l'élément et les éléments alentours ne seront pas affectés par son décalage:
côté html
<body><p>un premier paragraphe</p><p class="relatif gauche">un deuxième paragraphe</p><p class="relatif">un troisième paragraphe</p>
</body>
côté css
p {background-color: #d5bac5;
}.relatif {position: relative;
}.gauche {left: 5em; /* élément décalé de 5em vers la droite */bottom: 0.6em; /* élément décalé de 0.6em vers le haut */
}
côté navigateur
un premier paragraphe
un deuxième paragraphe
un troisième paragraphe
En pratique: testez l'exemple de positionnement relatif, à manipuler en ligne…
Pour rappel: un exemple d'application vu lors de la mise en forme du texte et de l'usage de <sup> et <sub>…
Un élément positionné avec position:absolute va être retiré du flux normal et sera positionné par rapport à son parent le plus proche lui aussi positionné (avec une valeur de position différente de static). Cela signifie et implique que l’espace initialement attribué à un élément au positionnement absolu va être occupé par les éléments suivants.
Si aucun parent positionné n’est trouvé, alors l’élément sera positionné par rapport à l’élément racine représentant la page en soi (body, html).
Les propriétés top, bottom, left ou right seront convoquées pour affiner le positionnement:
côté html
<body><p>un premier paragraphe</p><p class="relatif">un deuxième <span class="absolu">paragraphe</span></p> /* span = création d'un conteneur inline */<p>un troisième paragraphe</p>
</body>
côté css
p {background-color: #d5bac5;
}.relatif {position: relative; /* ici, positionnement du parent */
}
.absolu {position: absolute; /* l'élément sort du flux normal de son parent relatif */top: 1.6em; /* il est décalé de 1.6em vers le bas */left: 7em; /* puis il est décalé de 7em vers la droite */background-color: #abc2cf; /* et change de couleur de fond */
}
côté navigateur
un premier paragraphe
un deuxième paragraphe
un troisième paragraphe
En pratique: testez l'exemple de positionnement absolu, à manipuler en ligne…
Un élément positionné avec position:fixed; va être retiré du flux de la page et l’espace qui lui était attribué selon le flux normal de cette page va également pouvoir être utilisé par d’autres éléments. Le positionnement fixe est très proche du positionnement absolu et la seule différence entre les deux est que l’élément en position:fixed; ne va plus être positionné par rapport à son parent le plus proche mais par rapport au viewport, c’est-à-dire par rapport à la fenêtre visible du terminal de consultation.
En lui combinant les propriétés top, bottom, left ou right la position finale, de cet élément fixé, sera affinée.
côté html
<body><h2 class="fixe">Le caniche</h2><p>La véritable ascendance de cette race de chien n'est pas claire et … ayant chacun au moins un caniche, bien qu'au XVIIIe siècle pas nécessairement le chasseur de canard.</p>
</body>
côté css
.fixe {position: fixed;bottom: 10px;left: 5em;padding: 5px;background-color: #abc2cf;
}
côté navigateur
pour constater le positionnement fixé, scrollez le contenu textuel
En pratique: testez l'exemple de positionnement fixé, à manipuler en ligne…
Le positionnement d'un élément avec position:sticky; est le fait de pouvoir maintenir la position d'un objet à un endroit précis dès que celui-ci devient hors de portée suite à une action par scroll. L'élément sera conforté dans son positionnement collant principalement par les propriétés top ou right (si un width est renseigné).
Dans l'exemple ci-dessous, lorsque l'utilisateur usera du scroll vertical, l'élément auquel sera attribué le sélecteur .collant restera à la position 0 de l'axe vertical; ce qui donnera l'impression qu'il est collé en haut de la zone d'affichage.
côté html
<body><h2 class="collant">Le caniche</h2><p>La véritable ascendance de cette race de chien n'est pas claire et … ayant chacun au moins un caniche, bien qu'au XVIIIe siècle pas nécessairement le chasseur de canard.</p>
</body>
côté css
.collant {position: sticky;top: 0; /* au scroll vertical, l'élément <h2> sera collé en haut de la zone d'affichage */background-color: #abc2cf;padding: 5px;
}
côté navigateur
pour constater le positionnement collant, scrollez le contenu textuel
En pratique: testez l'exemple de positionnement collant, à manipuler en ligne…