Un texte qui court sur toute la largeur d'un grand écran est illisible. Voici comment limiter une boîte, la centrer, et lui donner une allure soignée.
Ouvre n'importe quel site d'information sur un grand écran. Le texte n'occupe jamais toute la largeur : il reste dans une colonne centrale, avec du vide de chaque côté.
Ce n'est pas de la coquetterie. Au-delà d'une certaine longueur de ligne, l'œil ne retrouve plus le début de la ligne suivante et la lecture devient fatigante.
À la fin de ce cours, tu seras capable de :
width et max-width.Deux propriétés se ressemblent, et une seule est presque toujours le bon choix.
| Propriété | Effet |
|---|---|
width: 400px |
Largeur imposée : 400 px, même dans une fenêtre de 320 px |
max-width: 400px |
Largeur maximale : 400 px, ou moins si la fenêtre est plus étroite |
.intro {
max-width: 400px;
}
Avec width, un téléphone doit faire défiler la page horizontalement pour lire ton texte. Avec max-width, la boîte se réduit d'elle-même. C'est la première brique de ce qu'on appelle le 🇬🇧 responsive design — une page qui s'adapte à la taille de l'écran.
💡 Astuce : pour du texte courant, une largeur maximale entre 600 et 800 pixels donne des lignes confortables. Au-delà, la lecture se dégrade.
Voici l'astuce la plus utile du CSS, et la moins devinable :
.intro {
max-width: 400px;
margin-left: auto;
margin-right: auto;
}

auto veut dire « le navigateur calcule ». En lui demandant la même chose à gauche et à droite, il ne peut faire qu'une seule chose : partager l'espace restant en deux parts égales. La boîte se retrouve au milieu.
Deux conditions, sans lesquelles ça ne marche pas :
div, un main, un p — pas un span) ;En pratique, on écrit rarement les deux lignes. Le raccourci margin fait le travail :
.intro {
max-width: 400px;
margin: 30px auto;
}
Première valeur pour le haut et le bas, seconde pour la gauche et la droite. Donc : 30 px au-dessus et en dessous, et auto sur les côtés — c'est-à-dire centré.
Deux choses très différentes portent le même nom en français, et c'est une source d'erreurs permanente.
| Écriture | Ce qui bouge |
|---|---|
margin: auto |
La boîte se place au milieu de la page |
text-align: center |
Le contenu se place au milieu de la boîte |
header {
text-align: center;
}
Ici, l'en-tête garde toute sa largeur — c'est son titre qui vient au centre.
⚠️ Attention :
text-align: centers'écrit sur la boîte parente, pas sur le texte. Tu centres le contenu d'une boîte, jamais un élément lui-même.
Le navigateur applique par défaut une marge d'environ 8 pixels autour du <body>. C'est ce liseré blanc que tu vois tout autour d'une page, y compris derrière un en-tête coloré.
body {
margin: 0;
}
Sur un vrai site, on l'enlève presque toujours : un bandeau d'en-tête doit toucher les bords de la fenêtre, sinon il flotte bizarrement.
Deux propriétés qui ne servent à rien de fonctionnel, et qui changent pourtant tout à l'allure d'une page.
.carte {
border-radius: 10px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
border-radius arrondit les coins. Plus la valeur est grande, plus c'est rond — jusqu'à 50%, qui transforme un carré en cercle. C'est comme ça qu'on fait les photos de profil rondes.
box-shadow pose une ombre portée. Ses quatre valeurs sont, dans l'ordre : le décalage horizontal, le décalage vertical, le flou, et la couleur.
💡 Astuce : pour une ombre crédible, garde le décalage horizontal à
0et un flou généreux. Une ombre nette et décalée en diagonale fait tout de suite « années 2000 ».
margin: auto ne centre-t-il rien sur une boîte sans max-width ?margin: 20px auto; exactement ?max-width plutôt que width : la boîte se réduit sur les petits écrans.margin-left: auto et margin-right: auto.margin: 30px auto; fait les deux d'un coup.margin: auto centre la boîte ; text-align: center centre son contenu.body { margin: 0; } supprime le liseré blanc par défaut.Tes boîtes sont bien placées, mais ce sont toutes des <div> anonymes. HTML propose des conteneurs qui, eux, portent un nom.