1188 sujets

Accessibilité du Web

Modérateur
Bonjour,

On lit souvent que si on veut que les lecteurs d'écran énoncent un texte dans la bonne langue, il ne faut pas oublier de spécifier l'attribut "lang" partout où c'est nécessaire.

OK, mais je constate néanmoins pas mal de problèmes avec Voice Over sur mac même sur les pages ou portions de pages où l'attribut "lang" est correctement spécifié.

Par exemple, avec le code ci-dessous, sur ma machine qui est un mac avec comme langue par défaut le français, le titre et le 2e élément de la liste sont lus avec une voix anglaise, le 1er et le 3e élément de la liste sont lus avec une voix française.
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
</head>
<body>
<h1>Accessibility</h1>
<ul>
<li>a: open this dialog</li>
<li>b: go back to the list of the last selected character if there was one</li>
<li>p: go to the preferences panel</li>
</ul>
</body>
</html>


J'ai aussi fait pas mal de tests sur différentes pages en anglais (en particulier le site d'Apple américain dont on peut imaginer qu'il est codé dans les règles de l'art) : même problème, la voix française est utilisée ici ou là, mais pas tout le temps, et sans raison semble-t-il !

Je précise que j'ai le même comportement avec différents navigateurs. Voice Over est donc le suspect principal.

Je précise aussi qu'une bonne partie de mon activité sont des projets en français et en anglais dans le domaine de l'apprentissage des langues étrangères, notamment le japonais, le chinois et le coréen. Et pour l'instant, en gros, je n'ai rien qui marche comme attendu concernant le choix des voix par les lecteurs d'écran. Tant qu'il s'agit d'anglais et de français, c'est juste agaçant, mais c'est particulièrement critique pour le chinois/japonais qui utilisent les mêmes caractères, mais en les prononçant d'une manière complètement différente.

Je précise que j'ai bien a priori ajouté dans Voice Over les voix nécessaires et que l'option "Détecter la langue" est bien cochée (si je la décoche, ça semble pire). Mais il est possible que j'aie raté quelque chose dans la configuration de Voice Over, car je n'utilise cet outil que très occasionnellement juste pour tester mes sites.

J'ai aussi fait une recherche dans le web entier et je n'ai trouvé qu'un seul malheureux petit message concernant l'attribut "lang" et Voice Over (qui en gros décrit la même chose que ce que j'ai constaté, mais pour un cas particulier), ce qui suggère fortement que le problème pourrait venir de ma configuration (auquel cas ce serait une bonne nouvelle).

J'ai deux questions :

- Est-ce que c'est pareil sur les autres machines et avec d'autres lecteurs d'écrans ? S'il y en a qui peuvent tester ou faire un retour d'expérience plus général, je les remercie d'avance.

- Est-ce qu'il y aurait des améliorations possibles à faire dans le code ou la configuration du lecteur d'écran pour augmenter les chances que ça fonctionne comme attendu (déjà, ce serait pas mal de faire marcher des pages complètement en anglais quand on les visite avec une machine en français) ?

Amicalement,
Modifié par parsimonhi (31 Oct 2026 - 12:57)
Ce qui me frappe dans ton exemple, c'est que les deux éléments lus en français sont les plus courts. J'ai l'impression que « Détecter la langue » devine d'après le texte lui-même et passe par-dessus lang quand il y a trop peu de mots pour être sûr.
Modérateur
Bonjour,

CrayonSEO a écrit :
Ce qui me frappe dans ton exemple, c'est que les deux éléments lus en français sont les plus courts. J'ai l'impression que « Détecter la langue » devine d'après le texte lui-même et passe par-dessus lang quand il y a trop peu de mots pour être sûr.

Merci pour ton retour.

Le fait est qu'il y a un attribut langue, et qu'il ne devrait pas l'ignorer.

Par ailleurs, il ne se trompe pas sur le titre qui n'a pourtant qu'un mot.

Ça m'a donc tout l'air d'être sensiblement plus compliqué.

Je reste demandeur de test sur d'autres Macs, sur Windows ou Linux, et avec différents lecteurs d'écran. S'il n'y a que Voice Over sur mon MacOS à moi qui ne marche pas, alors ça viendrait de ma configuration et je saurais où chercher. Si par contre d'autres constatent le même soucis avec leur matériel, alors c'est que le problème est plus général.

J'ai aussi pu tester sur un téléphone avec Edge. Ça a l'air mieux (mais il faut que je fasse plus de tests).

Amicalement,
Modérateur
Salut parsimonhi,

C'est toujours un plaisir de te lire.

En lisant ton code, il est totalement valide et respecte le A11Y. Cependant, VoiceOver n'est pas le meilleur dans sa catégorie. Il me semble qu'il faille le configurer pour qu'il détecte correctement les langues (cocher ou décocher détecte lang). Le problème étant que ce comportement est dit instable. Il ne suit pas forcément l'attribut lang. Il me semble même que ce soit un défaut connu.

De mon côté, j'ai fait un test sur mon système (Debian 13 - Gnome 50). Le comportement général est excellent. Ci dessous, un tableau récapitulatif des bons et mauvais élèves :

upload/1794066071-11496-capturedancrandu2026-11-0716-.png
Modifié par Niuxe (07 Nov 2026 - 16:58)
Meilleure solution
Modérateur
Bonjour,

Niuxe a écrit :
De mon côté, j'ai fait un test sur mon système (Debian 13 - Gnome 50). Le comportement général est excellent.


Super ! C'est exactement ce qu'il me fallait. Je vais donc attendre tranquillement que les développeurs de Voice Over corrigent leurs bugs, si toutefois ils le font un jour. Smiley cligne

Amicalement,