RivoCode

HTML & CSS · Document Structure · Lesson 3 of 25

Semantic HTML

Concept

Semantic HTML

Tags like header, nav, main, and footer describe what content means, not just how it looks, which helps accessibility and SEO.

A screen reader user can jump straight to <main> or <nav> by name — something that's impossible when every section of a page is just an unlabeled <div>.

By the end of this lesson
  • Explain the core idea behind Semantic HTML.
  • Predict output before running a change.
  • Test one realistic and one unusual input.
  • Use the result to make the next decision.
How to study this page
  1. 1. Read one concept.
  2. 2. Change the example.
  3. 3. Run, compare, and explain.
  4. 4. Complete the challenge below.
Syntax
<header>...</header>
<nav>...</nav>
<main>...</main>
<footer>...</footer>
ExampleRunnable
<header><h1>My Site</h1></header>
<main><p>Main content goes here.</p></main>
<footer><p>2026</p></footer>
Try it Yourself »
A semantic article and section
<article>
  <h2>Post title</h2>
  <section>
    <p>Post content...</p>
  </section>
</article>
Self-check before continuing

Without looking at the example, describe what changes when you modify one input in Semantic HTML. Then reopen the editor and prove your explanation with a small test.

You are ready to continue when you can predict, test, and explain the result.

Your turn

Rewrite a page using semantic tags instead of generic div elements.

Loading editor…

Console

Output will appear here...