Pour commencer, rappelons que l’affichage de petits drapeaux pour signifier la langue est plus que douteux, ne serait-ce que parce que ceux-ci symbolisent des états : or l’anglais se parle aussi bien en Angleterre qu’aux États-Unis, tandis que la Belgique est partagée en trois régions linguistiques.
Bien préciser la langue est important car cela permet aux navigateurs de s’adapter en affichant, par exemple, les textes dans le bon jeu de caractères. Sans ces précisions, les logiciels vocaux, utilisés par les gens pressés et les personnes mal-voyantes, ne peuvent pas savoir quel dictionnaire linguistique utiliser. Enfin, cela permet aux moteurs de reconnaître la langue des contenus pour les indexer d’autant mieux.
Les attributs lang (en HTML) et/ou xml:lang (en XHTML) permettent de spécifier la langue des contenus. Voici comment les utiliser.
La langue principale du document
Afin que le navigateur sache dans quelle langue est rédigé le document, conformément à la bonne pratique n°13, on indiquera, par exemple :
N’oubliez pas de préciser également le sens de lecture de la page avec l’une des deux valeurs de l’attribut dir : rtl pour les langues s’écrivant de droite à gauche et ltr pour celles s’écrivant de gauche à droite. Exemple pour une page rédigée en arabe :
Pensez à définir le jeu de caractères. La norme iso-8859-1, souvent appelée Latin-1
, est utilisable pour la plupart des langues d’Europe de l’Ouest. Son adaptation, l’iso-8859-15, prend en compte le caractère euro. Dans un site plus largement multilingue, on préférera utiliser l’utf-8.
Signalez les changements de langue dans la page
Il est possible d’indiquer la langue de n’importe quelle partie du document et de gérer le mélange de texte s’écrivant de gauche à droite avec du texte de droite à gauche.
Si au sein d’une page vous utilisez une autre langue que celle déclarée initialement, vous devez le signaler. Les logiciels (notamment les navigateurs vocaux ou en braille) peuvent ainsi s’adapter et utiliser le bon accent ou le bon jeu de caractère (accents, contraction...)
Je me suis penchée à leur table avec bonne volonté en disant : <q lang="en">Oh, I'm sorry ! I don't speak english very well. Can you repeat please ?</q>Faites de même pour les sigles et acronymes :
Cette page est réalisée en <abbr title="Extensible HyperText Markup Language" lang="en">XHTML</abbr>Rien n’est plus agaçant que de suivre un lien alléchant pour tomber sur une page rédigée dans une langue que l’on ne comprend pas. Pensez donc, si elle diffère de celle utilisée dans la page en cours, à indiquer dans quelle langue est rédigée la page visée par vos liens externes, avec l’attibut hreflang :
Tout ceci est expliqué sur le site du <a href="http://www.w3.org" title="Le site du W3C, en anglais" hreflang="en">W3C</a> !











Vos commentaires
1. Le 30 mai 2007 à 23:10, par Nicolas Krebs
Bon article. Permets tu que je le signale à http://lists.w3.org/Archives/Public... ?
Voir aussi Why you should not use a flag as a symbol of language et Do not use flag icons to indicate languages.
Voir aussi FAQ : Why use the language attribute ?
2. Le 12 juin 2007 à 22:05, par Stéphane Bortzmeyer
Oui, ça devrait être « speak » :-)
3. Le 13 juin 2007 à 00:54, par Romy Têtue
Héhé, comme quoi ;)
4. Le 15 juin 2007 à 10:56, par Stéphane Deschamps
Juste une remarque en passant : les synthèses vocales s’adaptent, si tant est que le moteur phonologique de la langue mentionnée soit installé.
Par exemple sur mon ordinateur j’ai le français, l’anglais, et puis une ou deux langues latines que j’ai oubliées mais qui permettent de faire des démos rigolotes.
La synthèse saute naturellement du moteur phonologique français au moteur anglais, c’est assez bluffant.
Cependant (et voilà la fameuse remarque) je ne suis pas sûr qu’il se passe quoi que ce soit de perceptible avec une plage Braille, à part peut-être un signe qui précède et qui indique le changement de langue.
Je me renseignerai.
En tout cas, comme d’hab, merci de partager tout ça. On oublie trop souvent de prendre le temps d’expliquer les choses fondamentales.
5. Le 19 juillet 2007 à 19:08, par Emmanuel Gire
Bonjour, juste pour vous signaler une petite coquille sur la page "Bien préciser la langue d’une page Web - romy.tetue.net". Voici l’extrait :
"N’oubliez pas de préciser également le sens de lecture de la page avec l’une des deux valeurs de l’attribut dir : ltr pour les langues s’écrivant de droite à gauche et rtl pour celles s’écrivant de gauche à droite."
Or il me semble que vous avez inversé : "ltr" est l’abréviation de "left to right" et signifie donc "de gauche à droite", et inversement pour "rtl" (rien à voir avec la célèbre radio bien-sûr)...
6. Le 5 février 2008 à 09:53, par Romy Têtue
Oups, oups, oups ! Merci Emmanuel, j’ai corrigé.
7. Le 6 mai 2008 à 16:25, par Romy Têtue
À noter, cet intéressant tutoriel-vidéo (signalé par Olivier G.) : « Déclarer la langue dans une page Web » qui donne deux exemples de navigation avec un logiciel vocal (avec et sans déclaration de langue) et des explications pour mieux indiquer la langue (conformément à la directive 4 du WCAG 1.0 et les points de contrôle 4.1 et 4.3 du RGAA).
Un message, un commentaire ?
Suivre les commentaires :
| 