Cours de (X)HTML / CSS

Les caractères spéciaux et entités HTML


Principe et syntaxe

Les documents HTML ne devaient à l'origine du HTML être constitués que de caractères ASCII (norme définissant 128 caractères).
Les lettres accentuées, les lettres d'autres alphabets, certains symboles et d'autres caractères ne sont pas compris dans cet encodage ; ils sont sont considérés comme des caractères spéciaux.
Pour afficher des caractères spéciaux, on utiles des entités HTML qui peuvent se définir ainsi :

& + nom (ou code ISO) + ;
		

Ainsi pour afficher le caractère é, on peut écrire

é
			

ou avec le code ISO :

&233;
			

(Pour des raisons de lisibilité humaine, il convient d'utiliser de préférence les noms plutôt que les codes ISO)


Encodages et caractères spéciaux

Aujourd'hui, il n'est plus obligatoire d'écrire un document HTML uniquement avec des codes ASCII.
On peut utiliser des encodages comprenant plus de caractères (ISO-8859-1, ISO-8859-15, UTF-8,...). Dans ce cas on peut utiliser tous les caractères compris dans ces encodages, l'affichage des caractères non compris doit normalement être fait via les entités correspondantes.
Ainsi en ISO-8859-1, il nécessaire d'utiliser les entités pour les caractères œ (œ) et € (€). Alors qu'en ISO-8859-15, ces deux caractères font parties de la norme et peuvent être écrits tels quels.
Sur ce point l'utilisation de l'encodage UTF-8 présente le grand avantage de n'avoir quasiment pas à recourir aux entités HTML, puisque cet encodage comprend théoriquement tous les caractères.

Table de caractères 8859-1

Table de caractères 8859-15


Les entités HTML obligatoires

En théorie certains caractères sont réservé au langage HTML et ne devraient pas être utilisés dans le contenu d'un document HTML. Il s'agit de :

En pratique, il s'avère que seuls les caractères <, > et & doivent être toujours encodés par des entités HTML, les premiers marquant l'ouverture ou la fermeture de balises et le dernier le début d'écriture d'une entité HTML.


Les entités HTML incontournables

Entités HTML dont l'usage est fréquent, à connaître.

Accentuation des caractères
Esperluette Opérateur Caractère Opérateur Accent Opérateur Point-virgule
& + a A
e E
i I
o O
u U
y Y
+ acute (aïgu)
grave (grave)
circ (circonflexe)
uml (umlaüt = tréma)
+ ;

Ce qui donne par exemple :
é = & + e + acute + ; = &eacute;
û = & + u + circ + ; = &ucirc;
ï = & + i + uml + ; = &iuml;


Liste des entités HTML

Liste d'entités HTML, non-exhaustive.