Comprensible Legible Nivel AA WCAG 2.0, 2.1, 2.2

3.1.2 Idioma de las partes

Meta La tecnología de asistencia puede identificar los idiomas usados dentro de una página.
Qué hacer Indicar cuándo las palabras o frases están en un idioma diferente al de la página usando el atributo lang.
Por qué importa Las personas que usan tecnología de asistencia obtienen cada fragmento con la pronunciación correcta de su idioma.

Criterio de éxito oficial

3.1.2 Idioma de las partes Nivel AA

El idioma humano de cada pasaje o frase en el contenido se puede determinar mediante programación, excepto para nombres propios, términos técnicos, palabras de idioma indeterminado y palabras que forman parte del vernáculo del texto que les rodea.

¿Qué es?

Mientras que CE 3.1.1 exige marcar el idioma principal de la página, este criterio va más lejos: cuando hay fragmentos en un idioma diferente al de la página, también deben marcarse con el atributo lang en el elemento contenedor. Así los lectores de pantalla cambian de motor de pronunciación para ese fragmento.

Excepciones al criterio

No todo fragmento en otro idioma requiere marcado. El criterio especifica cuatro excepciones:

Nombres propios

Personas, lugares, marcas y organizaciones no necesitan marcado de idioma.

Ejemplo: «Visitamos el Rijksmuseum» no requiere lang="nl".

Términos técnicos

Tecnicismos adoptados internacionalmente y usados en el idioma principal.

Ejemplo: «cache», «router», «pixel» en textos en español.

Vernáculo

Palabras extranjeras integradas en el idioma principal, que se pronuncian según las reglas de este.

Ejemplo: «rendezvous», «déjà vu» o «wifi» en inglés.

Idioma indeterminado

Palabras cuyo idioma no se puede determinar con certeza no requieren marcado.

Ejemplo: Nombres de dominio, onomatopeyas, señales.

¿Por qué es importante?

Cuando un fragmento en otro idioma no está marcado, el lector de pantalla lo pronuncia con las reglas del idioma principal de la página. Una cita en alemán dentro de una página en español sonará incomprensible si no tiene lang="de". El marcado correcto permite que el lector cambie automáticamente al motor de voz adecuado.

¿Quién se ve afectado?

Personas ciegas: El lector de pantalla carga automáticamente las reglas del idioma correcto para cada fragmento, garantizando una pronunciación comprensible.

Personas con discapacidades auditivas: Los subtítulos y herramientas de transcripción también se benefician de la identificación correcta del idioma de cada fragmento.

Cómo implementar 3.1.2

Técnica H58: atributo lang en el elemento contenedor

Envuelve el fragmento en otro idioma con cualquier elemento HTML y añádele el atributo lang. Si el fragmento es parte de un párrafo, usa <span>. Si es un bloque completo, puedes usar <p>, <blockquote> o <div>.

HTML
<!-- Frase corta dentro de un párrafo -->
<p>Nuestro lema es <span lang="de">Qualität zuerst</span>.</p>

<!-- Cita completa en otro idioma -->
<blockquote lang="fr">
  <p>L'excellence avant tout.</p>
</blockquote>

<!-- Sección entera en otro idioma -->
<section lang="en">
  <h2>English Version</h2>
  <p>This is the English summary...</p>
</section>

Buenas prácticas

Marca el fragmento más pequeño posible que contenga el texto en otro idioma. No es necesario marcar palabras individuales que sean nombres propios o términos técnicos de uso común. El atributo lang se hereda por los hijos del elemento marcado, por lo que no es necesario repetirlo en cada palabra.

Ejemplos prácticos

Correcto Cita en otro idioma con lang

Un artículo académico incluye una cita en latín: <q lang="la">Cogito ergo sum</q>. El lector de pantalla cambia al motor de pronunciación latino para esa cita.

Correcto Término técnico sin marcado

Una web en español habla de «cookies» y «cache» sin marcarlos con lang="en". Son términos técnicos adoptados en el vernáculo — la excepción aplica.

Fallo Párrafo completo en otro idioma sin marcar

Un sitio bilingüe tiene secciones en inglés dentro de páginas en español sin lang="en" en esas secciones. El lector pronuncia el inglés con reglas españolas.

Técnicas recomendadas

Técnicas suficientes para CE 3.1.2
CódigoTécnicaTipo
H58Uso del atributo lang para identificar cambios de idioma en HTMLSuficiente
PDF19Especificar el idioma de un pasaje o frase con la clave /Lang en PDFSuficiente (PDF)

Errores comunes

F90: Omitir el atributo lang en fragmentos con un idioma diferente al de la página.
  • Marcar el fragmento con el código de idioma incorrecto.
  • No marcar secciones enteras de una página en otro idioma.
  • Confundir términos del vernáculo (que no necesitan marcado) con citas o fragmentos reales en otro idioma (que sí lo necesitan).

Criterios de éxito relacionados