When beginners start learning HTML, they often use the <div> element for almost everything. While there is nothing wrong with using div elements, HTML5 provides special elements that describe the meaning of different parts of a webpage.
These elements are called semantic elements. They help developers, browsers, search engines and accessibility tools understand the structure of a webpage.
What Are Semantic HTML Elements?
Semantic elements tell us what a particular section of a webpage represents. For example, <header> represents introductory content, while <footer> represents the footer area of a page.
Compare this with a generic div:
<div>
Website Header
</div>
A semantic version is more meaningful:
<header>
Website Header
</header>
The second example immediately tells us what the element represents.
Important Semantic Elements
Some of the most commonly used semantic elements in HTML5 include:
- <header> — introductory content
- <nav> — navigation links
- <main> — primary page content
- <section> — thematic section
- <article> — independent content
- <aside> — related or secondary content
- <footer> — footer information
1. The <header> Element
The <header> element usually contains introductory content for a webpage or a section.
<header>
<h1>Kamran Anjum</h1>
<p>
Web Development Learning Platform
</p>
</header>
2. The <nav> Element
The <nav> element is used for important navigation links.
<nav>
<a href="index.html">
Home
</a>
<a href="blog.html">
Blog
</a>
<a href="contact.html">
Contact
</a>
</nav>
3. The <main> Element
The <main> element contains the primary content of the webpage.
<main>
<h1>
Learn Web Development
</h1>
<p>
Start your learning journey.
</p>
</main>
4. The <section> Element
A <section> represents a thematic grouping of content.
<section>
<h2>
HTML Tutorials
</h2>
<p>
Learn HTML step by step.
</p>
</section>
5. The <article> Element
The <article> element is useful for independent content such as blog posts, news articles, tutorials or forum posts.
<article>
<h2>
Learn HTML in 30 Days
</h2>
<p>
A practical HTML learning guide.
</p>
</article>
6. The <aside> Element
The <aside> element represents content that is related to the main content but not necessarily part of it.
<aside>
<h3>
Related Tutorials
</h3>
<p>
Learn CSS after completing HTML.
</p>
</aside>
7. The <footer> Element
The <footer> element normally contains information about the page or website.
<footer>
<p>
© 2026 Kamran Anjum
</p>
</footer>
Why Should You Use Semantic HTML?
Semantic HTML provides several advantages when building modern websites.
Better Website Structure
Semantic elements make your HTML easier for developers to read and understand.
Better Accessibility
Semantic elements help assistive technologies understand the structure and purpose of different parts of a webpage.
Better SEO Structure
Clear page structure can help search engines better understand the organization and meaning of your content.
Complete Example
Here is a simple webpage structure using several semantic HTML elements:
<!DOCTYPE html>
<html>
<head>
<title>
My Website
</title>
</head>
<body>
<header>
<h1>
My Website
</h1>
</header>
<nav>
<a href="#">
Home
</a>
<a href="#">
Blog
</a>
</nav>
<main>
<article>
<h2>
My First Article
</h2>
<p>
This is my article.
</p>
</article>
<aside>
Related Content
</aside>
</main>
<footer>
© 2026 My Website
</footer>
</body>
</html>