Introduction
Dans ce laboratoire, nous allons apprendre à centrer un élément enfant à l'intérieur de son élément parent en utilisant display: table. En utilisant cette technique, nous pouvons facilement réaliser le centrage vertical et horizontal sans avoir à recourir à des positions complexes ou à JavaScript. C'est une compétence utile à avoir lors de la conception de maquettes réactives pour des sites web et des applications.
Centrage avec display: table
index.html et style.css ont déjà été fournis dans la machine virtuelle.
Pour centrer un élément enfant à la fois verticalement et horizontalement à l'intérieur de son élément parent, suivez ces étapes :
- Ajoutez un élément conteneur avec une
heightet unewidthfixes.
<div class="container"></div>
- Ajoutez l'élément enfant à l'intérieur de l'élément conteneur et donnez-lui une classe
.center.
<div class="center"><span>Contenu centré</span></div>
</div>
- Dans le CSS, appliquez les styles suivants à l'élément conteneur :
- Fixez
heightetwidthaux valeurs fixes souhaitées. - Ajoutez une bordure (facultatif).
.container {
border: 1px solid #9c27b0;
height: 250px;
width: 250px;
}
- Dans le CSS, appliquez les styles suivants à l'élément enfant :
- Utilisez
display: tablepour faire en sorte que l'élément.centerse comporte comme un élément<table>. - Fixez
heightetwidthà100%pour que l'élément remplisse l'espace disponible à l'intérieur de son élément parent. - Utilisez
display: table-cellsur l'élément enfant pour le faire se comporter comme un élément<td>. - Utilisez
text-align: centeretvertical-align: middlesur l'élément enfant pour le centrer horizontalement et verticalement.
.center {
display: table;
height: 100%;
width: 100%;
}
.center > span {
display: table-cell;
text-align: center;
vertical-align: middle;
}
Veuillez cliquer sur 'Go Live' dans le coin inférieur droit pour exécuter le service web sur le port 8080. Ensuite, vous pouvez rafraîchir l'onglet Web 8080 pour prévisualiser la page web.
Résumé
Félicitations ! Vous avez terminé le laboratoire sur le centrage avec display: table. Vous pouvez pratiquer d'autres laboratoires dans LabEx pour améliorer vos compétences.