Skip to main content
Validação HTML

Este documento parece estar escrito em X. Considere adicionar “lang=”y”” (ou variante) à tag de abertura “html”.

Sobre este problema HTML

O atributo lang no elemento <html> declara a linguagem primária do conteúdo do documento. Quando este atributo está em falta ou definido incorretamente, o validador analisa o conteúdo de texto e tenta detetar a linguagem automaticamente. Se identificar uma linguagem provável, produz este aviso sugerindo que adicione o valor lang apropriado.

Isto importa por várias razões importantes:

  • Acessibilidade: Os leitores de ecrã dependem do atributo lang para selecionar as regras de pronúncia corretas e o perfil de voz. Sem ele, um leitor de ecrã pode tentar ler texto em espanhol usando fonética inglesa, produzindo discurso ininteligível para o utilizador.
  • Comportamento do browser: Os browsers usam a declaração de linguagem para hifenização, estilo de aspas, verificação ortográfica e seleção de fontes. Por exemplo, a propriedade CSS hyphens: auto depende do atributo lang para aplicar regras de hifenização apropriadas à linguagem.
  • Motores de busca: Os motores de busca usam o atributo lang como sinal para compreender a linguagem do seu conteúdo, o que ajuda a servi-lo à audiência certa nos resultados de pesquisa.
  • Ferramentas de tradução: Os serviços de tradução automática usam a linguagem declarada para determinar se (e de que linguagem) oferecer tradução.

O valor do atributo lang deve ser uma tag de linguagem BCP 47 válida. Exemplos comuns incluem en (inglês), es (espanhol), fr (francês), de (alemão), zh (chinês), ja (japonês) e ar (árabe). Você também pode especificar variantes regionais como en-US, en-GB, pt-BR ou es-MX.

Exemplos

Atributo lang em falta

Isto desencadeia o aviso porque o validador deteta a linguagem do conteúdo mas não encontra declaração lang:

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Mi Sitio Web</title>
</head>
<body>
  <h1>Bienvenido a mi sitio web</h1>
  <p>Este es un párrafo en español.</p>
</body>
</html>

Corrigido com o atributo lang correto

Adicionar lang="es" informa browsers, leitores de ecrã e motores de busca que este documento está em espanhol:

<!DOCTYPE html>
<html lang="es">
<head>
  <meta charset="UTF-8">
  <title>Mi Sitio Web</title>
</head>
<body>
  <h1>Bienvenido a mi sitio web</h1>
  <p>Este es un párrafo en español.</p>
</body>
</html>

Atributo lang não correspondente

Isto também pode desencadear o aviso quando o valor lang não corresponde ao conteúdo real. Aqui, o conteúdo está em francês mas a linguagem está declarada como inglês:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Mon Site Web</title>
</head>
<body>
  <h1>Bienvenue sur mon site web</h1>
  <p>Ceci est un paragraphe en français.</p>
</body>
</html>

A correção é alterar o valor lang para corresponder ao conteúdo:

<!DOCTYPE html>
<html lang="fr">
<head>
  <meta charset="UTF-8">
  <title>Mon Site Web</title>
</head>
<body>
  <h1>Bienvenue sur mon site web</h1>
  <p>Ceci est un paragraphe en français.</p>
</body>
</html>

Usar uma variante regional

Se precisar de especificar uma variação regional, anexe a subtag da região. Por exemplo, es-MX para espanhol mexicano ou pt-BR para português brasileiro:

<!DOCTYPE html>
<html lang="es-MX">
<head>
  <meta charset="UTF-8">
  <title>Mi Sitio Web</title>
</head>
<body>
  <h1>Bienvenido a mi sitio web</h1>
  <p>Este es un párrafo en español de México.</p>
</body>
</html>

Secções numa linguagem diferente

Quando o seu documento está principalmente numa linguagem mas contém secções noutra, defina a linguagem principal em <html> e use lang em elementos individuais para as exceções:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>My Website</title>
</head>
<body>
  <h1>Welcome to my website</h1>
  <p>This site is available in multiple languages.</p>
  <blockquote lang="es">
    <p>Bienvenido a mi sitio web.</p>
  </blockquote>
</body>
</html>

Esta abordagem garante que as tecnologias assistivas mudem as regras de pronúncia apropriadamente quando encontram a secção em língua estrangeira, enquanto os browsers e motores de busca ainda compreendem a linguagem primária do documento.

Encontre problemas como este automaticamente

O Rocket Validator analisa milhares de páginas em segundos, detetando problemas HTML em todo o seu site.

Ajude-nos a melhorar os nossos guias

Este guia foi útil?

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