Skip to main content

Sobre esta regra de acessibilidade

Os leitores de ecrã dependem de bibliotecas de som específicas para cada idioma para pronunciar o texto com precisão. Cada idioma tem as suas próprias regras de pronúncia, padrões de entoação e características fonéticas, pelo que os leitores de ecrã carregam a biblioteca apropriada com base no idioma declarado do documento. Quando o elemento <html> não tem um atributo lang ou contém um valor inválido — como um erro ortográfico ou um código inventado — o leitor de ecrã não consegue determinar que biblioteca usar. Recorre ao idioma que o utilizador configurou durante a configuração, o que significa que conteúdo escrito em francês pode ser lido em voz alta usando regras de pronúncia inglesas. O resultado é uma fala que soa como um sotaque confuso e ininteligível.

Este problema afeta principalmente utilizadores cegos e utilizadores surdocegos que dependem de leitores de ecrã, mas também impacta utilizadores com deficiências cognitivas que podem usar ferramentas de texto para fala para ajudar na compreensão. Quando a pronúncia está errada, a compreensão diminui drasticamente.

Critérios de Sucesso WCAG Relacionados

Esta regra mapeia para o Critério de Sucesso WCAG 3.1.1: Idioma da Página (Nível A), que requer que o idioma humano predefinido de cada página web possa ser determinado programaticamente. Este é um requisito de Nível A — o nível mais fundamental de acessibilidade — significando que deve ser satisfeito para conformidade básica sob WCAG 2.0, 2.1 e 2.2. Também é exigido pela metodologia Trusted Tester, EN 301 549 e RGAA.

Como Corrigir

  1. Adicione um atributo lang ao elemento <html> de abertura.
  2. Defina o seu valor para uma etiqueta de idioma BCP 47 válida que represente o idioma principal da página.
  3. Verifique duas vezes a ortografia do código de idioma. Códigos válidos comuns incluem "en" (inglês), "fr" (francês), "es" (espanhol), "de" (alemão), "ja" (japonês) e "ar" (árabe).
  4. Pode opcionalmente incluir uma subetiqueta regional, como "en-US" para inglês americano ou "fr-CA" para francês canadiano.
  5. Para documentos XHTML servidos como XML, use xml:lang em vez de ou em adição a lang.

Se o idioma mudar dentro do documento para passagens específicas, use o atributo lang no elemento apropriado para indicar a mudança. Para idiomas da direita para a esquerda, inclua também o atributo dir="rtl".

Exemplos

Incorreto: Atributo lang em falta

<html>
  <head>
    <title>My Page</title>
  </head>
  <body>
    <p>Welcome to my website.</p>
  </body>
</html>

Sem um atributo lang, os leitores de ecrã não conseguem determinar o idioma da página e irão recorrer ao idioma configurado do utilizador, que pode não corresponder ao conteúdo.

Incorreto: Valor lang inválido

<html lang="english">
  <head>
    <title>My Page</title>
  </head>
  <body>
    <p>Welcome to my website.</p>
  </body>
</html>

O valor "english" não é uma etiqueta de idioma BCP 47 válida. O código correto para inglês é "en".

Correto: Atributo lang válido

<html lang="en">
  <head>
    <title>My Page</title>
  </head>
  <body>
    <p>Welcome to my website.</p>
  </body>
</html>

Correto: Subetiqueta regional

<html lang="fr-CA">
  <head>
    <title>Ma page</title>
  </head>
  <body>
    <p>Bienvenue sur mon site web.</p>
  </body>
</html>

Correto: Mudança de idioma dentro da página

<html lang="en">
  <head>
    <title>Multilingual Page</title>
  </head>
  <body>
    <p>This paragraph is in English.</p>
    <p lang="es">Este párrafo está en español.</p>
  </body>
</html>

Correto: Idioma da direita para a esquerda

<html lang="ar" dir="rtl">
  <head>
    <title>صفحتي</title>
  </head>
  <body>
    <p>مرحبا بكم في موقعي.</p>
  </body>
</html>

O atributo dir="rtl" garante que a direção do texto seja corretamente renderizada para idiomas da direita para a esquerda como árabe e hebraico.

Ajude-nos a melhorar os nossos guias

Este guia foi útil?

Detecte problemas de acessibilidade automaticamente

O Rocket Validator examina milhares de páginas com Axe Core e o W3C Validator, encontrando problemas de acessibilidade em todo o seu site.

Pronto para validar os seus sites?
Comece o seu teste gratuito hoje.