Técnico

O que faz realmente o atributo lang em HTML?

Um pequeno atributo ajuda navegadores, ferramentas de tradução e motores de busca a identificar corretamente o idioma da tua página.

O que é

O atributo lang é um pequeno trecho de código adicionado logo na primeira tag de uma página (<html lang="pt"> para português, <html lang="en"> para inglês, e assim por diante) que indica explicitamente em que idioma o conteúdo da página está escrito. É fácil assumir que isso é óbvio a partir das palavras na página, mas o software não "lê" como uma pessoa — precisa que isto seja declarado claramente, em vez de deduzido pelo contexto.

Navegadores, ferramentas de tradução e motores de busca verificam todos este único atributo antes de fazer seja o que for relacionado com idioma, em vez de analisar primeiro o texto real.

Por que importa

Os navegadores usam o atributo lang para decidir se sequer oferecem uma sugestão de tradução automática, e para escolher a partir de que idioma traduzir, caso o façam — um atributo lang em falta ou errado pode fazer com que os visitantes recebam uma sugestão para traduzir a página para o seu próprio idioma quando ela já está nesse idioma, ou que não recebam sugestão de tradução quando na verdade precisavam dela. Os motores de busca também o usam como sinal para associar uma página aos resultados de pesquisa regionais ou de idioma corretos.

É um detalhe pequeno e invisível, mas também é uma correção de uma linha sem qualquer desvantagem — não há razão para nenhuma página saltar isto depois de publicada para visitantes reais, seja qual for o idioma.

Como corrigir

  1. Identifica o idioma principal do conteúdo da tua página.
  2. Adiciona ou corrige o atributo lang na tag <html>, por exemplo <html lang="pt"> para português ou <html lang="fr"> para francês — usa um código de idioma padrão de duas letras.
  3. Se o teu site tiver páginas em vários idiomas, garante que o atributo lang de cada página corresponde ao idioma dessa página em concreto, e não apenas ao idioma principal do site.
  4. A maioria dos construtores de sites (Squarespace, Wix, Webflow, WordPress) define isto automaticamente com base na configuração de idioma do site — nessas plataformas, verifica a definição de idioma geral do site em vez de editar código diretamente.
  5. Volta a executar o teu Launch Readiness check para confirmar que o atributo já é detetado com o código de idioma correto.

Veja se o seu próprio site tem este problema

O Launch Readiness analisa o seu site em busca deste e de mais ~50 problemas antes do lançamento, em segundos — grátis, sem registo.

Fazer uma análise grátis