Qual a diferença entre “pt” e “pt-BR” do atributo lang no html?

O português assim como o inglês tem variações em diferentes países, a indicação do pt-BR, pt-PT, pt, en, en-US, en-GB não interferem no HTML, são apenas valores para informar qual o idioma se encontra, por exemplo alguns navegadores possuem detecção automática de idioma da página e eles podem repassar para algum plugin isso, ou um plugin (add-on/extensão) podem usar o atributo diretamente.

Resumindo, pt indica português, independente do país/região como:
Brasil
Portugal
São Tomé e Príncipe
Angola
Moçambique
Cabo Verde
Timor Leste
Guiné-Bissau
Guiné Equatorial
Macau (Macau)

Se colocar a URL da página que usa esse atributo no https://translate.google.com ele vai detectar que aquele conteúdos entre as tags <div lang="pt-BR">...</div> o português brasileiro (apesar que o google não difere muito ambos).

Outros que geralmente podem usar esse atributo são os buscadores como Google, Bing, Yahoo, Baidu. Os buscadores usam esses atributos pra entregar páginas da preferencia regional e de idioma de uma pessoa que esta buscando.

Agora falando apenas de HTML, o atributo lang independente do seu valor, pt ou pt-BR não muda em nada, a ideia do uso dele é normatizar e indicar os tipos de dados pra quem tiver interesse, se não houver esse atributo plugins, google tradutor ou buscadores irão ter dificuldades em detectar o idioma do texto apresentado.

A diferença entre “pt” e “pt-BR” está na granularidade da especificação do idioma:

"pt" (Português): Este é um código de idioma genérico para o português. Ele é usado quando você quer indicar que o conteúdo está em português, mas não está especificando uma variante específica.

<html lang="pt">
<!-- Conteúdo em português -->
</html>

"pt-BR" (Português do Brasil): Este é um código de idioma mais específico, indicando que o conteúdo está em português, mas mais especificamente no dialeto ou variante brasileira do português.

<html lang="pt-BR">
<!-- Conteúdo em português do Brasil -->
</html>

A escolha correta do atributo “lang” em HTML é importante para garantir a acessibilidade, a correta formatação e a interpretação do conteúdo por parte dos usuários e dos agentes de usuário (como motores de busca e leitores de tela). Aqui estão algumas razões pelas quais a escolha adequada do atributo “lang” é significativa para os programadores:

  • Acessibilidade: Leitores de tela e outros dispositivos assistivos usam informações sobre o idioma para apresentar corretamente o conteúdo aos usuários com deficiência visual. Se o atributo “lang” não for especificado ou for impreciso, a experiência de acessibilidade pode ser comprometida.
  • Formatação de Texto: Alguns navegadores podem ajustar automaticamente a formatação do texto com base no idioma especificado. Por exemplo, a direção do texto pode ser alterada para línguas que são lidas da direita para a esquerda, como árabe ou hebraico.
  • Motor de Busca: Os motores de busca podem usar a informação de idioma para melhorar a relevância dos resultados da pesquisa. Além disso, ao especificar o idioma correto, você ajuda os motores de busca a entender o conteúdo da página, o que pode afetar positivamente o SEO (Search Engine Optimization).
  • Localização e Internacionalização: Se você estiver desenvolvendo um site que será traduzido para diferentes idiomas ou adaptado para diferentes regiões, o atributo “lang” pode ser usado para indicar a língua específica de cada parte do conteúdo.
  • Códigos de Script e Variantes: Além do atributo “lang”, você também pode usar o atributo “xml:lang” para indicar a linguagem do conteúdo em documentos XML. Se houver código de script específico associado ao idioma (por exemplo, script latino para português, script cirílico para russo), isso pode ser especificado usando o atributo “lang”.

Um exemplo de código HTML para uma página usando atributo lang em pt-BR

<!DOCTYPE html>
<html lang="pt-BR">
<head>
<meta charset="UTF-8">
<title>Minha página</title>
</head>
<body>
<h1>Minha página</h1>
<p>Este é um exemplo de como usar o atributo `lang` em HTML.</p>
</body>
</html>

Portanto, ao escolher o valor correto para o atributo “lang”, os programadores estão contribuindo para uma melhor experiência do usuário, garantindo que o conteúdo seja interpretado e apresentado de maneira adequada para o público-alvo.

Se você está criando uma página em português, mas não está focando em uma variante específica (como a variante brasileira), você pode usar “pt”. Se você deseja ser mais específico, indicando que o conteúdo é em português do Brasil, então use “pt-BR”. A especificação do idioma ajuda os navegadores e outros agentes de usuário a apresentar o conteúdo da maneira mais apropriada para o público-alvo.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *