Elementos Semânticos do HTML5
- Página Anterior Código Computacional HTML
- Próxima Página Convenções de Código do HTML5
Semantics (derived from ancient Greece) can be defined as the study of the meaning of language.
Semantic elements are elements with semantics.
What are semantic elements?
Semantic elements clearly describe their meaning to browsers and developers.
Non-semanticExamples of elements: <div> and <span> - cannot provide information about their content.
SemanticExamples of elements: <form>, <table>, and <img> - clearly define their content.
Browser support
Yes | Yes | Yes | Yes | Yes |
All modern browsers support HTML5 semantic elements.
In addition, you can 'help' older browsers handle 'unknown elements'.
Learn more about this chapter in HTML5 browsers.
New semantic elements in HTML5
Many websites include HTML code for navigation indicators, headers, and footers, such as these: <div id="nav"> <div class="header"> <div id="footer">.
HTML5 provides new semantic elements to define different parts of a page:
- <article>
- <aside>
- <details>
- <figcaption>
- <figure>
- <footer>
- <header>
- <main>
- <mark>
- <nav>
- <section>
- <summary>
- <time>
Elementos Semânticos do HTML5

HTML5 <section> element
The <section> element defines a section within a document.
According to the W3C's HTML documentation: 'A section (section) is a group of content with a theme, usually with a title'.
A homepage of a website can be divided into sections such as introduction, content, contact information, etc.
Exemplo
<section> <h1>WWF</h1> <p>O Fundo Mundial para a Natureza (WWF) é....</p> </section>
Elemento <article> do HTML5
O elemento <article> define conteúdo autônomo e contido.
Os documentos têm seu próprio significado e podem ser lidos independentemente do conteúdo restante do site.
Aplicações do elemento <article>:
- Fóruns
- Blogs
- Notícias
Exemplo
<article> <h1>O que a WWF faz?</h1> <p>A missão da WWF é deter a degradação do ambiente natural do nosso planeta,</p> e construa um futuro no qual os humanos vivam em harmonia com a natureza.</p> </article>
Elementos semânticos aninhados
No padrão HTML5, o elemento <article> define um bloco autônomo de elementos relacionados.
O elemento <section> é definido como um bloco de elementos relacionados.
Podemos usar essa definição para decidir como aninhar elementos? Não, não podemos!
Na Internet, você encontrará páginas HTML contendo elementos <article> dentro de elementos <section>, e páginas contendo elementos <sections> dentro de elementos <article>.
Você também encontrará elementos <section> contendo elementos <section>, e elementos <article> contendo elementos <article>.
Elemento <header> do HTML5
O elemento <header> define o cabeçalho para um documento ou seção.
O elemento <header> deve ser usado como contêiner de conteúdo introdutório.
Um documento pode ter vários elementos <header>.
O exemplo a seguir define um cabeçalho para um artigo:
Exemplo
<article> <header> <h1>O que a WWF faz?</h1> <p>Missão da WWF:</p> </header> <p>A missão da WWF é deter a degradação do ambiente natural do nosso planeta,</p> e construa um futuro no qual os humanos vivam em harmonia com a natureza.</p> </article>
Elemento <footer> do HTML5
O elemento <footer> define o rodapé para um documento ou seção.
O elemento <footer> deve fornecer informações sobre seus elementos contidos.
O rodapé geralmente contém informações sobre o autor do documento, direitos autorais, links de termos de uso, informações de contato etc.
Você pode usar vários elementos <footer> em um documento.
Exemplo
<footer> <p>Publicado por: Hege Refsnes</p> <p>Informações de contato: <a href="mailto:someone@example.com"> <a href="someone@example.com"></a>.</p> </footer>
Elemento HTML5 <nav>
O elemento <nav> define uma coleção de links de navegação.
O elemento <nav> visa definir grandes blocos de links de navegação. No entanto, não todos os links do documento devem estar dentro do elemento <nav>!
Exemplo
<nav> <a href="/html/">HTML</a> | <a href="/css/">CSS</a> | <a href="/js/">JavaScript</a> | <a href="/jquery/">jQuery</a> </nav>
Elemento HTML5 <aside>
<aside> É um elemento que contém algum conteúdo além do conteúdo principal da página (por exemplo, uma barra lateral).
O conteúdo do aside deve estar relacionado ao conteúdo ao redor.
Exemplo
<p>Minha família e eu visitamos o Epcot Center neste verão.</p> <aside> <h4>Epcot Center</h4> <p>O Epcot Center é um parque temático no Disney World, Flórida.</p> </aside>
Elementos HTML5 <figure> e <figcaption>
Nos livros e jornais, é comum encontrar títulos combinados com imagens.
A função do título (caption) é adicionar uma explicação visível para a imagem.
Através do HTML5, imagens e títulos podem ser combinados em <figure> No elemento:
Exemplo
<figure> <img src="pic_mountain.jpg" alt="The Pulpit Rock" width="304" height="228"> <figcaption>Fig1. - O Pulpit Pock, Noruega.</figcaption> </figure>
<img>
O elemento define a imagem,<figcaption>
O elemento define o título.
Por que usar elementos HTML5?
Se estiver usando HTML4, os desenvolvedores usarão os nomes de atributos preferidos para definir o estilo dos elementos da página:
header, topo, fundo, rodapé, menu, navegação, principal, contêiner, conteúdo, artigo, barra lateral, topo de navegação, ...
Desta forma, o navegador não consegue identificar o conteúdo correto da página da web.
e através dos elementos do HTML5, como: <header> <footer> <nav> <section> <article>, este problema é resolvido.
Segundo o W3C, a Semantic Web:
“Permite a partilha e reutilização de dados entre aplicações, empresas e grupos.”
Elementos Semânticos no HTML5
A seguir está listado os novos elementos semânticos do HTML5, ordenados alfabeticamente.
esses links apontam para o manual completo de referência do HTML.
Etiquetas | Descrição |
---|---|
<article> | Definir um artigo. |
<aside> | Definir conteúdo além do conteúdo da página. |
<details> | Definir detalhes adicionais que o usuário pode visualizar ou ocultar. |
<figcaption> | Definir o título do elemento <figure>. |
<figure> | Determinar conteúdo autocontido, como ilustrações, gráficos, fotos, listas de código, etc. |
<footer> | Definir o rodapé da seção ou do documento. |
<header> | Determinar o cabeçalho da seção ou do documento. |
<main> | Determinar o conteúdo principal do documento. |
<mark> | Definir texto importante ou destacado. |
<nav> | Definir um link de navegação. |
<section> | Definir um capítulo no documento. |
<summary> | Definir o título visível do elemento <details>. |
<time> | Definir a data/hora. |
- Página Anterior Código Computacional HTML
- Próxima Página Convenções de Código do HTML5