Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédente | |||
900-codage:040_html [le 13/02/2025 à 14:40] – supprimée - modification externe (Date inconnue) 127.0.0.1 | 900-codage:040_html [le 13/02/2025 à 14:40] (Version actuelle) – ↷ Page déplacée de 030codage:040_html à 900-codage:040_html prof | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== Dans le HTML ====== | ||
+ | ==== Les pieds dans la toile ==== | ||
+ | |||
+ | Bien que pour HTTP, protocole apte à transmettre des flux d' | ||
+ | |||
+ | Le langage HTML (Hyper Text Markup Language), lui aussi, propose des méthodes particulières pour traiter les caractères non US-ASCII. Il règne d' | ||
+ | |||
+ | Avec la version 3.2 du HTML, il n'y avait normalement pas d' | ||
+ | |||
+ | Comme HTML est probablement le lieu où les normes sont le moins respectées, | ||
+ | |||
+ | Voyons ceci... | ||
+ | |||
+ | Dans la page que nous avons sous les yeux, il est écrit | ||
+ | < | ||
+ | & | ||
+ | <span class=" | ||
+ | ... | ||
+ | & | ||
+ | </ | ||
+ | En voyant ceci, notre « browser » va comprendre qu'il faut utiliser UTF-8 et, normalement, | ||
+ | |||
+ | Mais en cas de désaccord entre la saisie et l' | ||
+ | Nous avons été abusés par le système | ||
+ | Pourrait devenir ceci : | ||
+ | Nous avons été abusés par le système | ||
+ | Nettement moins lisible n' | ||
+ | |||
+ | Normalement, | ||
+ | |||
+ | Si nous utilisons les « signes nommés », nous pouvons garantir plus d' | ||
+ | |||
+ | === Les signes nommés === | ||
+ | |||
+ | Le principe est simple : | ||
+ | |||
+ | * Un caractère d' | ||
+ | * un nom pour le caractère non US-ASCII | ||
+ | * un délimiteur de fin de codage : le **;** | ||
+ | |||
+ | Un simple exemple, juste pour illustrer. Le **é** devrait se coder dans le source HTML : **&; | ||
+ | |||
+ | Vous trouverez beaucoup plus de détails sur les signes nommés ainsi que sur beaucoup d' | ||
+ | |||
+ | Il existe une table de signes nommés définie dans HTML 3.2 . HTML 4.0 définit des ajouts à cette table, bien que, théoriquement, | ||
+ | |||
+ | <meta http-equiv= " | ||
+ | |||
+ | devrait à elle seule permettre l' | ||
+ | |||
+ | |||
+ | |||
+ | ===== Conclusions ===== | ||
+ | |||
+ | Si vous n'avez pas encore attrapé le vertige, vous ne l' | ||
+ | |||
+ | ==== Les faits ==== | ||
+ | |||
+ | * Les systèmes numériques ne savent traiter que des informations binaires, donc numériques. | ||
+ | * Les protocoles applicatifs, | ||
+ | * Le texte est destiné à être lu, donc écrit, et n'est pas constitué d'une collection de valeurs numériques, | ||
+ | * Il n'y a pas qu'un seul alphabet au monde. | ||
+ | * Les protocoles applicatifs peuvent avoir aussi à échanger des données qui ne sont pas du texte (une image, du son, une vidéo...). | ||
+ | |||
+ | ==== Les solutions ==== | ||
+ | |||
+ | * Coder sur 7 bits un jeu de caractères minimal (US-ASCII), mais il n'y a pas que l' | ||
+ | * Coder sur 8 bits, mais ça ne suffit pas non plus pour toutes les langues possibles. | ||
+ | * Coder en UTF-8. | ||
+ | |||
+ | ==== Le bricolage ==== | ||
+ | |||
+ | Le « bricolage » le plus propre consiste à utiliser un jeu de caractères minimal et de coder les caractères supplémentaires par une combinaison identifiable des caractères de base. C'est cette solution qui est le plus souvent mise en œuvre, et elle donne finalement les meilleurs résultats. | ||
+ | |||
+ | * Codage « quoted-printable » (e-mails, imprimantes...) | ||
+ | * Codage « Base64 » (e-mails, fichiers pouvant contenir autre chose que du texte pur...) | ||
+ | * Signes nommés (HTML), encore appelés « html entities » définis de façon officielle sur [[http:// | ||
Dans le HTML: Dernière modification le: 01/01/1970 à 00:00 par