HTML Course: 61 Free Interactive Lessons in 10 Modules

61 short lessons in 10 modules. Each one: read, write, check. Your progress is saved in this browser.

Start: What HTML Is

Illustration of a student with a backpack walking up a stepping-stone path toward a finished website

Here is the whole course: 61 lessons in 10 modules. Each module covers one topic, from HTML basics and text to tables, forms and accessibility, and finishes with a project that uses what you learned. If you are new, start at module 1 and go in order, because each module builds on the one before it. All of it follows the current HTML Living Standard (opens in a new tab). Lessons open one by one as you complete them. Already know the basics? Tick the option at the bottom of this page to open every lesson and go straight to the module you need. Progress is saved in this browser.

Module 1: First Page

What HTML is, how a tag works and the skeleton every page sits on.

  1. What HTML Is 5 min
  2. Tags and Elements 6 min
  3. Attributes 6 min
  4. The Page Skeleton Drag and drop7 min
  5. Head and Body Fix the bugs6 min
  6. Project: Hello World Page Project15 min

Module 2: Text

Headings, paragraphs, emphasis, lists, quotes, code and the odd special character.

  1. Headings 6 min
  2. Paragraphs and Line Breaks Fix the bugs6 min
  3. Strong and Emphasis 6 min
  4. Lists 7 min
  5. Nested Lists 6 min
  6. Quotes and Code 7 min
  7. Comments and Entities 7 min
  8. Project: Recipe Card Project20 min

Module 3: Links and Media

Links between pages, file paths, images, figures, audio, video, embeds.

  1. Links 6 min
  2. Relative and Absolute Paths 7 min
  3. New Tabs and Page Jumps 7 min
  4. Images Fix the bugs7 min
  5. Figures and Captions 6 min
  6. Audio and Video 7 min
  7. Embedding with iframe 6 min
  8. Project: Travel Postcard Project20 min

Module 4: Structure and Semantics

Generic boxes, page landmarks and what meaningful tags buy you.

  1. div and span 6 min
  2. Header, Nav, Main, Footer 7 min
  3. Article, Section, Aside 8 min
  4. Fix the Div Soup Fix the bugs8 min
  5. Project: Blog Page Project15 min

Module 5: Tables

Rows, cells, headers, captions, spanning, and when a table is wrong.

  1. Table Basics 7 min
  2. Headers and Captions 7 min
  3. Spanning Cells 8 min
  4. Tables Are Not Layout Fix the bugs8 min
  5. Project: Class Timetable Project15 min

Module 6: Forms

Inputs, labels, choices, buttons and browser-side validation.

  1. Forms and Inputs 7 min
  2. Labels 7 min
  3. Input Types 7 min
  4. Textarea, Select, Radio, Checkbox 9 min
  5. Buttons and Fieldsets 7 min
  6. Built-in Validation 8 min
  7. Project: Sign-up Form Project15 min

Module 7: Head and Metadata

Titles, character sets, the mobile viewport, SEO tags, icons, and links to CSS and JS.

  1. Title and Charset 6 min
  2. Viewport and Description 7 min
  3. Favicon and Social Previews 8 min
  4. Linking CSS and JavaScript 8 min
  5. Project: Complete Head Project15 min

Module 8: Accessibility

Pages that work for everyone: alt text, structure, labels, the keyboard and ARIA.

  1. Good Alt Text Fix the bugs8 min
  2. Heading Order Fix the bugs8 min
  3. Landmarks 9 min
  4. Connecting Labels Fix the bugs9 min
  5. Keyboard and Focus Fix the bugs9 min
  6. ARIA Basics 9 min
  7. Project: Accessibility Rescue Project20 min

Module 9: A Touch of CSS

Enough CSS to make your HTML projects look finished.

  1. The style Attribute 7 min
  2. The style Element and Selectors 9 min
  3. External Stylesheets 8 min
  4. Colors and Fonts 9 min
  5. The Box Model 10 min
  6. Project: Style Your Card Project20 min

Module 10: Final Projects

Four complete pages that use everything you have learned.

  1. Personal Profile Page Project30 min
  2. Full Recipe Page Project30 min
  3. Contact Page with Form Project30 min
  4. One-Page Portfolio Project35 min

Frequently asked questions

In what order should I learn HTML topics?

Page skeleton and basic tags first, then text, links and images. After that come semantic structure, tables and forms, then the head and meta tags, accessibility and a little CSS. The modules here follow that order, and each one reuses skills from the ones before. It is also the usual first stretch of the road into front-end web development (opens in a new tab). The HTML learning roadmap lays it out week by week.

How long is each lesson?

Most take 5 to 10 minutes: a short explanation, an example and one task. Module projects need 15 to 30 minutes, and the four final projects take longer. The whole course is roughly 10 to 11 hours, so one module fits into one or two sittings. The first module takes about 45 minutes.

Can I skip modules if I already know some HTML?

Yes. By default lessons open one after another, but the "I already know some HTML" option at the bottom of the course page opens all of them, so you can go straight to any module. Not sure how much you know? Try a module project first. If it feels easy, move on; if not, the lessons before it will fill the gaps. Another test: write a page from memory in an online editor such as HTML Code Editor (opens in a new tab) and see how far you get without help.

Do I get a certificate when I finish?

Yes. Once every lesson is complete, the certificate page opens and you can print a certificate of completion with your name on it. Your browser builds it from your saved progress, so there is no account and no payment involved. Until then, the page shows how many lessons you have left.