Menu

Font-weight CSS : mettre en gras, valeurs de 100 à 900

La propriété font-weight rend le texte gras, léger ou entre les deux. Découvrez l'échelle numérique de 100 à 900, normal et bold, les valeurs relatives bolder et lighter, et pourquoi une graisse ne change parfois rien.

Cette page contient des éditeurs exécutables - modifiez, exécutez et voyez la sortie instantanément.

Comment mettre du texte en gras en CSS

font-weight définit l'épaisseur des lettres. bold (identique à 700) met le texte en gras, et normal (identique à 400) correspond au texte normal.

Les titres, <th>, <b> et <strong> sont en gras par défaut à cause de la feuille de style du navigateur, et font-weight: normal est donc la façon de retirer le gras. Pour savoir quand utiliser <b> ou <strong> dans le HTML lui-même, voir le gras en HTML.

L'échelle numérique : de 100 à 900

Les nombres ont des noms standard que suivent les familles de polices :

ValeurNom courant
100Thin
200Extra Light
300Light
400Normal (Regular)
500Medium
600Semi Bold
700Bold
800Extra Bold
900Black (Heavy)

Tout nombre de 1 à 1000 est valide, 450 et 650 sont donc autorisés aussi. Voir une différence dépend de la police : le navigateur ne peut dessiner que les graisses que la police possède réellement.

system-ui est la police d'interface du système d'exploitation, qui fournit en général de nombreuses graisses. Si chaque ligne ci-dessus ressemble à l'une de deux graisses seulement, votre police système n'a que le normal et le gras.

Pourquoi une graisse ne change rien

Une police est un ensemble de fichiers, souvent un par graisse. Quand la graisse exacte manque, le navigateur prend la plus proche qu'il possède :

  • Pour 500, il essaie 500, puis les graisses plus légères, puis les plus épaisses.
  • Pour 600 et au-delà, il essaie d'abord les graisses plus épaisses, puis les plus légères.
  • S'il n'existe aucun fichier gras, la plupart des navigateurs en simulent un en épaississant les lettres normales (gras synthétique).

Comparez une police qui a de nombreuses graisses avec serif, qui sur la plupart des systèmes n'a que le normal et le gras :

Dans la colonne serif, 300 et 500 retombent en général sur le style normal et 600 sur le gras. C'est la réponse à la plupart des questions du type « font-weight ne fonctionne pas » : le CSS est correct, c'est la police qui n'a pas la graisse. Une police variable (un seul fichier avec un axe de graisse) dessine en douceur toutes les valeurs de sa plage.

bolder et lighter

bolder et lighter sont relatifs à la graisse dont l'élément hérite. Ils passent au groupe de graisse suivant au lieu d'ajouter une valeur fixe :

Graisse du parentbolder donnelighter donne
100 à 349400100
350 à 549700100
550 à 749900400
750 à 900900700

Un schéma concret : une échelle de graisses en variables

Choisissez trois ou quatre graisses pour tout le site et donnez-leur un nom, au lieu de disperser des nombres :

:root {
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-bold: 700;
}
body   { font-weight: var(--weight-regular); }
button { font-weight: var(--weight-medium); }
h1, h2 { font-weight: var(--weight-bold); }

Erreurs courantes

  • S'attendre à ce que chaque nombre soit différent. Seules les graisses contenues dans la police s'affichent distinctement.
  • Utiliser <b> pour le libellé d'un bouton. Stylisez le bouton avec font-weight ; gardez <b> et <strong> pour le texte.
  • Mettre le nombre entre guillemets. font-weight: "700" est invalide et ignoré. Écrivez font-weight: 700.
  • Du gras partout pour insister. Quand tout est en gras, rien ne ressort. Gardez le texte courant à 400.
  • Des graisses fines pour du petit texte. De 100 à 300 en petite taille, le texte est difficile à lire, surtout sur des fonds peu contrastés.

Questions fréquentes

Comment mettre du texte en gras en CSS ?

Utilisez font-weight: bold; ou le nombre équivalent font-weight: 700; sur l'élément. Pour retirer le gras d'un titre ou d'un <strong>, définissez font-weight: normal; (400).

Quelles sont les valeurs de font-weight ?

Des nombres de 1 à 1000, écrits en général par centaines : 100 thin, 200 extra light, 300 light, 400 normal, 500 medium, 600 semibold, 700 bold, 800 extra bold, 900 black. Les mots-clés normal et bold valent 400 et 700, et bolder et lighter sont relatifs au parent.

font-weight bold est-il identique à 700 ?

Oui. bold se calcule en 700 et normal en 400, les deux formes donnent donc exactement le même rendu.

Pourquoi font-weight 500 ou 600 ressemble-t-il à normal ou bold ?

La police n'a pas cette graisse. Quand une police ne fournit que 400 et 700, le navigateur prend le fichier disponible le plus proche : 500 s'affiche comme 400 et 600 comme 700. Chargez une police avec plus de graisses ou une police variable.

Faut-il utiliser font-weight en CSS ou la balise <b> ?

Utilisez <strong> quand les mots sont importants, <b> pour un texte simplement présenté autrement, et font-weight pour le design visuel comme les boutons, les étiquettes et les titres. Les balises portent un sens ; la propriété ne concerne que l'apparence.

Coddy programming languages illustration

Apprendre à coder avec Coddy

COMMENCER