Si votre site contient des passages en langue étrangère, sont-ils signalés pour que les logiciels de lecture utilisent la bonne prononciation ?
Critère officiel 8.7 — Dans chaque page web, chaque changement de langue est-il indiqué dans le code source (hors cas particuliers) ?
Pourquoi c'est important
Un logiciel de lecture lit chaque texte avec la voix de la langue déclarée. Un passage en anglais non signalé est lu avec une prononciation française — rendant les mots méconnaissables pour un utilisateur qui n'a pas la référence visuelle.
Exemples concrets
Ce qui est conforme
La page touristique de la commune contient un bloc en anglais correctement signalé. Le logiciel de lecture active automatiquement sa voix anglaise pour ce passage, puis revient au français pour la suite.
Ce qui pose problème
La même page contient « Welcome to our commune » sans indication de changement de langue. Le lecteur d'écran lit « Welcome » à la française : « vel-come » — incompréhensible pour un visiteur anglophone malvoyant.
Comment agir
Si votre site publie du contenu en anglais, en alsacien, en breton ou des formules latines (certaines délibérations), signalez chaque passage à votre prestataire. Question à lui transmettre : « Pouvez-vous baliser ces passages en langue étrangère avec l'attribut lang approprié ? » Listez les passages concernés avec la langue correspondante.
Règles clés
- Appliquer lang sur l'élément le plus proche qui englobe uniquement le passage dans la langue étrangère : <span>, <p>, <blockquote>, <section>…
- Exception RGAA : les noms propres, les termes techniques sans équivalent français établi, et les mots empruntés intégrés à la langue française (week-end, parking, marketing) n'ont pas besoin de balisage.
- Les langages informatiques (HTML, CSS, SQL) ne sont pas des langues humaines — le balisage lang n'est pas requis mais peut être utilisé.
- Un seul mot isolé dans une autre langue n'a souvent pas besoin d'être signalé si sa prononciation n'est pas ambiguë.
Erreurs fréquentes
- Mots anglais courants en contexte francophone sans lang="en" ("dashboard", "workflow", "feedback", "newsletter")
- Citations dans une autre langue sans balisage
- Noms de marques ou de produits dans une autre langue sans lang
- Pages multilingues avec des blocs de contenu dans plusieurs langues sans lang sur chaque bloc
- Extraits de code (SQL, Python…) — cas particulier : les langages de programmation ne sont pas des langues humaines, lang n'est pas requis mais peut aider
Exemples de code
citation en langue étrangère sans balisage
✗ Non conforme<p>Comme le dit le proverbe anglais :
"Accessibility is not a feature, it is a necessity."
</p>La citation anglaise sera prononcée avec une phonétique française. Sans lang="en", le lecteur d'écran ne changera pas de moteur de prononciation.
citation en langue étrangère balisée
✓ Conforme<p>Comme le dit le proverbe anglais :
<q lang="en">Accessibility is not a feature,
it is a necessity.</q>
</p>lang="en" sur le <q> indique au lecteur d'écran de basculer sur le moteur anglophone pour cette citation. L'élément <q> est sémantiquement correct pour une citation courte.
bloc de contenu multilingue
✗ Non conforme<!-- Page française avec section en anglais -->
<section>
<h2>Our international team</h2>
<p>Welcome to our global network of accessibility experts.</p>
</section>La section est rédigée en anglais mais la page déclare lang="fr" sur <html>. La synthèse vocale prononcera tout avec le moteur français.
bloc de contenu multilingue balisé
✓ Conforme<section lang="en">
<h2>Our international team</h2>
<p>Welcome to our global network of accessibility experts.</p>
</section>lang="en" sur la <section> indique que tout son contenu est en anglais. Le lecteur d'écran bascule sur le moteur anglophone pour l'ensemble du bloc.
Référence WCAG : 3.1.2