- Publicado em
- ·
HTML Semântico: o que é, tags e como melhora o SEO
- Autores

- Nome
- Henrico Piubello
- Ocupação
Especialista de TI - Grupo Voitto

HTML semântico é escrever HTML (HyperText Markup Language) com tags de significado próprio — como <header>, <nav>, <main>, <article> e <footer> — que descrevem o papel de cada bloco. Essa clareza melhora a acessibilidade, orienta leitores de tela e ajuda os mecanismos de busca a indexar a página.
- O que é HTML?
- O que é HTML semântico?
- Por que o HTML semântico melhora o SEO e a acessibilidade?
- Quais são as principais tags semânticas de estrutura?
- Como marcar ênfase e citações com tags semânticas de texto?
- Como fica uma página HTML semântica completa?
O que é HTML?
O HTML (HyperText Markup Language, ou Linguagem de Marcação de Hipertexto) é a base da maioria das páginas da web. É uma linguagem de marcação que estrutura o conteúdo da internet por meio de elementos, ou "tags", que definem texto, imagens, links e mídia.
Cada tag descreve a função de um elemento na página e como o navegador deve interpretá-lo. É o HTML que organiza o conteúdo online e o torna legível e acessível dentro do navegador. Ele forma, junto com o CSS e o JavaScript, o tripé do desenvolvimento web moderno.
O que é HTML semântico?
HTML semântico é a marcação que atribui significado aos elementos, e não apenas aparência. Em vez de usar <div> para tudo, você escolhe tags que dizem o que o conteúdo representa: um cabeçalho é um <header>, um menu é um <nav>, um artigo é um <article>.
A ênfase na semântica ganhou força com o HTML5, que introduziu elementos estruturais dedicados. Enquanto o HTML tradicional foca em como o conteúdo é organizado visualmente, o HTML semântico descreve o que ele significa. Isso beneficia dois públicos ao mesmo tempo: desenvolvedores, que leem o código mais rápido, e máquinas — leitores de tela e mecanismos de busca — que interpretam o conteúdo com mais precisão. Assim como o CSS controla a apresentação visual do frontend, o HTML semântico cuida do significado da estrutura.
Por que o HTML semântico melhora o SEO e a acessibilidade?
O HTML semântico melhora SEO e acessibilidade porque expõe a estrutura da página de forma explícita. Mecanismos de busca usam a hierarquia de cabeçalhos e os marcos de região (<main>, <nav>, <header>) para entender a importância relativa de cada bloco, enquanto tecnologias assistivas usam essas mesmas tags para permitir uma navegação rápida.
Os números confirmam a relevância dessa estrutura. Segundo o Web Almanac 2024, da HTTP Archive, 70% das páginas no desktop usam a tag <h1> e 71% usam <h2>, indicando que a hierarquia semântica de cabeçalhos já é prática dominante. O mesmo relatório aponta que a mediana dos sites móveis tem texto alternativo (alt) descritivo em 58% das imagens, contra 54% em 2022.
Do lado da acessibilidade, a Pesquisa com Usuários de Leitores de Tela nº 10 da WebAIM (2024) mostra que 88,8% dos entrevistados consideram os cabeçalhos úteis para navegar, tornando-os o método predominante de localização de conteúdo. Já os landmarks (marcos de região) são usados sempre ou com frequência por 31,7% dos usuários — motivo extra para marcar <main>, <nav> e <header> corretamente. Boas práticas de estrutura conversam diretamente com heurísticas de usabilidade como as de Nielsen.
Quais são as principais tags semânticas de estrutura?
As tags semânticas de estrutura organizam o esqueleto da página. Cada uma delimita um tipo de bloco com papel bem definido, o que ajuda tanto o desenvolvedor quanto navegadores e buscadores. A tabela abaixo resume as mais importantes:
| Tag | Para que serve |
|---|---|
<header> | Cabeçalho de página ou seção |
<nav> | Bloco de links de navegação |
<main> | Conteúdo único e principal da página |
<article> | Conteúdo autônomo, como um post |
<aside> | Conteúdo complementar à parte |
<footer> | Rodapé com autoria e links |
<header> e <section>: cabeçalhos e seções
O elemento <header> define o cabeçalho de uma página ou seção, podendo conter títulos, imagens e listas de navegação. O elemento <section> delimita seções de conteúdo, geralmente acompanhadas de um título.
Veja um exemplo simples de uso do <header>:
<header>
<h1>Título da página</h1>
<h2>Subtítulo da página</h2>
</header>
<head>, é possível incluir vários elementos <header> em uma única página. Dica: experimente rodar na sua própria máquina ou teste no Codepen.
Veja um exemplo simples de uso da <section>:
<section>
<h2>Subtítulo da página</h2>
<div>
<p>Lorem ipsum dolor sit amet, consectetur adipisci elit, sed eiusmod tempor incidunt ut labore et dolore magna aliqua.</p>
<hr/>
</div>
</section>
<main> e <article>: conteúdo principal
O <article> é usado quando você apresenta um conteúdo que faz sentido por si só, como um post de blog. É uma boa prática associar cada <article> a um título. O elemento <main> guarda o conteúdo mais relevante da página, e o ideal é haver apenas um <main> por documento.
Veja um exemplo do uso da <article>:
<article>
<h2>Título do artigo 1</h2>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod ...</p>
</article>
<article>
<h2>Título do artigo 2</h2>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod ...</p>
</article>
Veja um exemplo do uso da <main>:
<main>
<h2>Título</h2>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod ...</p>
<article>
<h3>Subtítulo</h3>
<p>Duis aute irure dolor in reprehenderit in voluptate velit esse cillum...</p>
</article>
</main>
<nav> e <a>: navegação e links
O elemento <nav> agrupa links de navegação, facilitando a experiência do usuário e a indexação por mecanismos de busca. Dentro de <nav>, o elemento <a> cria os links propriamente ditos, permitindo o trânsito entre páginas ou seções do site.
Veja um exemplo simples de uso da <nav> e <a>:
<nav>
<a href="#portfolio">Portfólio</a>
<a href="#projetos">Projetos</a>
<a href="#contato">Contato</a>
</nav>
<aside>: conteúdo complementar
Quando você tem informações adicionais que enriquecem o conteúdo principal, mas não são essenciais para entendê-lo, use a tag <aside>. Ela é útil para sugestões de leitura complementar ou anúncios.
Veja um exemplo simples de uso da <aside>:
<aside>
<nav>
<ul>
<li>Link 1</li>
<li>Link 2</li>
<li>Link 3</li>
<li>Link 4</li>
</ul>
</nav>
</aside>
<figure> e <figcaption>: imagens com legenda
Para adicionar imagens ou gráficos de forma semântica, o HTML5 introduziu a tag <figure>. Para descrever essas imagens, use <figcaption>, aninhada dentro de <figure>.
Veja um exemplo simples de uso da <figure>:
<figure>
<img src="http://meusite.com.br/assets/imagem.jpg" alt="Imagem">
</figure>
Exemplo de uso de <figure> com <figcaption>:
<figure>
<img src="http://meusite.com.br/assets/imagem.jpg" alt="Imagem">
<figcaption>Figura 1. Imagem</figcaption>
</figure>
<footer>: rodapé
O <footer> é geralmente usado no final de uma página para fornecer informações como autoria, direitos autorais e links adicionais. É uma parte importante para adicionar credibilidade e transparência ao conteúdo.
Exemplo de uso de <footer>:
<footer>
<p>Escrito por Henrico Piubello</p>
<p>Publicado em 11/09/2023</p>
</footer>
Como marcar ênfase e citações com tags semânticas de texto?
Além da estrutura, o HTML semântico também dá sentido ao texto corrido. Enquanto tags de estrutura organizam blocos, as tags de texto comunicam intenção — ênfase, importância, citação ou data — a leitores de tela e buscadores.
<em> e <strong>
O <em> enfatiza um trecho, enquanto <strong> indica importância. São preferíveis a <i> e <b>, que tratam apenas da aparência.
<p>Você <em>tem certeza</em> que deseja encerrar a aplicação?</p>
<cite>, <q> e <time>
Se você cita uma fonte externa, a tag <cite> identifica a origem, geralmente em conjunto com <q>, que apresenta a citação. Já o elemento <time>, com o atributo datetime, padroniza a representação de datas.
<p>
<q>Lorem ipsum dolor sit amet, consectetur</q> - <cite>http://br.lipsum.com/</cite>.
</p>
<time datetime="2023-09-11">11/09/2023</time>
Como fica uma página HTML semântica completa?
Reunindo as tags anteriores, você obtém uma página cuja estrutura é autoexplicativa. O exemplo abaixo mostra o CodeCrush usando marcos de região do começo ao fim, na arquitetura típica de um projeto de desenvolvimento web moderno:
<!DOCTYPE html>
<html lang="pt-BR">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Exemplo de HTML Semântico - CodeCrush</title>
</head>
<body>
<header>
<h1>CodeCrush</h1>
<nav>
<ul>
<li><a href="/">Página Inicial</a></li>
<li><a href="/sobre">Sobre Nós</a></li>
<li><a href="/contato">Contato</a></li>
</ul>
</nav>
</header>
<main>
<article>
<h2>Artigo Principal</h2>
<p>Este é o conteúdo principal do CodeCrush.</p>
<time datetime="2023-09-11">Publicado em 11 de setembro de 2023</time>
</article>
<aside>
<h3>Barra Lateral</h3>
<p>Informações adicionais podem ser encontradas aqui.</p>
</aside>
</main>
<footer>
<p>© 2023 CodeCrush. Todos os direitos reservados.</p>
</footer>
</body>
</html>
Os comentários explicativos de cada elemento:
<header>: cabeçalho do documento, geralmente com logotipo e navegação.<nav>: seção de navegação.<ul>: lista não ordenada para agrupar os itens de navegação.<li>: item da lista.<main>: conteúdo principal do documento.<article>: conteúdo autônomo e autoexplicativo, como um artigo ou post.<aside>: conteúdo relacionado, separado do conteúdo principal.<time>: data ou hora, útil para indicar a data de publicação.<footer>: rodapé do documento, com direitos autorais e notas finais.
Conclusão
Trocar <div> genérica por tags semânticas não custa esforço extra e paga dividendos em três frentes: código mais legível, páginas acessíveis a quem usa leitor de tela e conteúdo mais fácil de indexar. Com buscas por IA valorizando estrutura clara e legível por máquinas, escrever HTML semântico deixou de ser detalhe de boas práticas para virar vantagem competitiva. Na próxima vez que for marcar uma página, deixe a <div> para o que realmente não tem significado — e use a tag certa para todo o resto.
## faq
Perguntas frequentes
O que é HTML semântico?
HTML semântico é o uso de tags que descrevem o significado do conteúdo, como header, nav, main, article e footer, em vez de apenas div e span. Ele torna a estrutura da página compreensível para navegadores, leitores de tela e mecanismos de busca, melhorando acessibilidade e SEO.
Qual a diferença entre HTML semântico e não semântico?
O HTML não semântico usa elementos genéricos como div e span, que não indicam o papel do conteúdo. O HTML semântico usa tags com significado, como article e nav, que descrevem a função de cada bloco. Essa diferença ajuda a acessibilidade, a manutenção do código e a indexação por buscadores.
HTML semântico melhora o SEO?
Sim, de forma indireta. Tags semânticas ajudam os mecanismos de busca a entender a estrutura e a hierarquia da página, o que favorece a indexação. Segundo o Web Almanac 2024, 70% das páginas já usam h1 e 71% usam h2, sinal de que a hierarquia semântica é prática consolidada.
Quais são as principais tags semânticas do HTML5?
As principais tags de estrutura são header, nav, main, section, article, aside e footer. Para o texto, destacam-se em, strong, cite, q e time. Cada uma comunica um papel específico, tornando o documento mais claro para desenvolvedores, leitores de tela e buscadores.
Vale a pena usar HTML semântico em 2026?
Sim. HTML semântico é o padrão recomendado pela WHATWG e pela MDN, custa o mesmo esforço que a marcação genérica e traz ganhos reais em acessibilidade, SEO e manutenção. Com a ascensão das buscas por IA, uma estrutura clara e legível por máquinas se torna ainda mais valiosa.
Temas deste artigo
## continue lendo
Artigos relacionados
Continue navegando
Artigo anterior

Tech Lead: o que faz, salário e habilidades
O Tech Lead é o desenvolvedor sênior que lidera tecnicamente um time: define arquitetura, toma decisões críticas, mentora e conecta código a negócio.
Leia maisPróximo artigo

Dev Júnior, Pleno e Sênior: qual a diferença na prática?
Dev júnior precisa de supervisão, pleno atua com autonomia e sênior lidera projetos complexos, mentora o time e toma decisões de arquitetura.
Leia maisSobre o autor



