learn.web Back to the curriculum ↗

First steps on the web / 03

HTML: the skeleton

Write meaningful markup for structure, links, images, lists, and forms.

Time
70 min
Mode
Learn → Make → Check
Path
Web Foundations

By the end, you can…

HTML is meaning, not appearance

HTML describes what content is: a heading, a list, a link, an image, a region of navigation. Browsers, screen readers, and search engines read this meaning. Choose elements for what they mean, and styling can follow later.

A link uses an href; an image needs src and, for people who cannot see it, alt describing its purpose. Lists structure items; headings create an outline. These small habits make pages usable for everyone.

Build the skeleton of a profile page

Structure a page with header, nav, main, and footer; give it a single h1 and a clear section for each topic; link to your real or future projects; add one image with a useful alt description.

Then look at the page without CSS. If the meaning is still clear, the skeleton is good. Every later lesson will build on this shape.

Working example
<header><h1>Your name</h1></header>
<nav aria-label="Primary">
  <a href="#about">About</a> <a href="#projects">Projects</a>
</nav>
<main>
  <section id="about">…</section>
  <section id="projects">…</section>
</main>
<footer>…</footer>

Your studio task

Make — Build a semantic personal profile page from scratch.

  1. Write a profile page with header, nav, main, sections, and footer.
  2. Add one real link, one list, and one image with alt text.
  3. Validate the markup with the W3C validator.
  4. Read the page without CSS and confirm the meaning survives.
Definition of done

It uses header, nav, main, and footer, real links, an image with alt text, and reads sensibly without CSS.

Open the interactive lesson with its workspace ↗

Knowledge check

Which element is the right tool for a site's primary navigation?
  1. div
  2. nav
  3. section
Reveal answer (B)

nav marks navigation regions so people and tools can find them and skip them.

What is alt text for?
  1. Describing an image when it cannot be seen
  2. Making images load faster
  3. Styling the image
Reveal answer (A)

alt gives images a textual description for people who cannot see them and for search engines.