La propriété font-

Maintenant que vous savez coder en HTML et CSS, nous allons voir l'ensemble des propriétés et balises possibles.

Le prochain chapitre est consacré au texte, et sa mise en forme : taille, police, interlettrage, interlignage, …

font-family

L'un des éléments le plus important du webdesign est la ou les typos utilisées.
Historiquement, il n'existe que très peu de polices utlisables sur un site internet :

Pourquoi cette liste est-elle si réduite ? Tout simplement parce que ces polices sont installées avec le système Windows ET macOS. En utilisant l'une de ces typos (appelées Safe Web Font), vous êtes sur qu'un utilisateur Apple ou Windows la verra bien.

Pour choisir une de ces polices, nous allons utiliser par propriété CSS font-family :

				
					body{
						font-family: Arial;
					}
				
			

Appliquer une police à la body permet de l'appliquer à tout notre site internet.

Nous verront dans un autre chapitre intitulé Les polices de caractères comment ajouter d'autres typos à notre liste.

font-weight

La propriété font-weight permet de contrôler la graisse de notre texte. Par exemple, pour avoir un mot en gras, nous allons le mettre entre balise <span> :

				
					<p>
						Texte avec un <span>mot</span> en gras.
					</p>
				
			

Pour ensuite lui appliquer le CSS suivant :

				
					span{
						font-weight: bold;
					}
				
			

Résultat :

Texte avec un mot en gras.

Voilà la liste des valeurs possibles :

Il est aussi possible de donner une valeur comprise en 0 et 1000 :

				
					font-weight: 100; /* Thin (Hairline) */
					font-weight: 200; /* Extra Light (Ultra Light) */
					font-weight: 300; /* Light*/
					font-weight: 400; /* Normal */
					font-weight: 500; /* Medium */
					font-weight: 600; /* Semi Bold (Demi Bold) */
					font-weight: 700; /* Bold */
					font-weight: 800; /* Extra Bold (Ultra Bold) */
					font-weight: 900; /* Black (Heavy) */
				
			

font-style

La propriété font-style permet d'utiliser une version italique de la police de caractère où, à défaut, de pencher artificiellement le texte.

Pour utiliser la version italique d'une typo, nous allons écrire :

				
					p{
						font-style: italic;
					}
				
			

Résultat :

Un exemple de texte italic.

Pour un texte en oblique, nous allons utiliser oblique. De cete manière, le navigateur va pencher les glyphes ; ce qui en général n'est pas très joli … À éviter donc :

				
					p{
						font-style: oblique;
					}
				
			

Résultat :

Un exemple de texte oblique.

font-size

La propriété font-size permet de définir une taille à notre texte.
Il est possible d'utiliser plusieurs unités :

Voilà la liste des valeurs possibles :

				
					/* Valeurs avec mots-clef : */
					font-size: xx-small;
					font-size: x-small;
					font-size: small;
					font-size: medium;
					font-size: large;
					font-size: x-large;
					font-size: xx-large;
					font-size: larger;
					font-size: smaller;

					/* Valeurs de longueurs */
					font-size: 14px;
					font-size: 0.8em;
					font-size: 0.8rem;
				
			

Différences entre rem et em

Imaginons que la taille de base de notre texte soit 16px.
Nous avons ensuite une <div> à laquelle nous allons appliquer une taille de 20px, dans laquelle nous avons deux paragraphes :

				
					<div>
						<p class="rem">
							Texte avec une valeur de 2rem.
						</p><!-- .rem -->
						<p class="em">
							Texte avec une valeur de 2em.
						</p><!-- .em -->
					<div>
				
			

Nous allons maintenant appliquer une valeur de 2rem au premier, et 2em au second :

				
					html{
						font-size: 16px;
					}
					div{
						font-size: 20px;
					}
					p.rem{
						font-size: 2rem;
					}
					p.em{
						font-size: 2em;
					}
				
			

Notre premier paragraphe aura une taille 2 fois suppérieure (2rem) à celle de notre document (16px).
Elle sera donc de : 16 x 2 = 32px

En revanche, le second paragraphe aura une taille deux fois suppérieure (2em) à celle de son parent, donc la div (20px).
Elle sera donc de : 20 x 2 = 40px

Résultat :

Texte avec une valeur de 2rem.

Texte avec une valeur de 2em.

font-stretch

La propriété font-stretch permet de choisir entre une forme normale, condensée ou étendue d'une police :

				
					/* Liste des valeurs possibles */
					font-stretch: ultra-condensed;
					font-stretch: extra-condensed;
					font-stretch: condensed;
					font-stretch: semi-condensed;
					font-stretch: normal;
					font-stretch: semi-expanded;
					font-stretch: expanded;
					font-stretch: extra-expanded;
					font-stretch: ultra-expanded;

					/* Exemple */
					p{
						font-stretch: expanded;
					}