Welcome to Learn HTML!

This HTML course for web developers provides a solid overview for developers, from novice to expert level HTML.

Welcome to HTML! HyperText Markup Language, or HTML, is the backbone of the web, providing the content, as well as the structure of that content, that you see displayed in your web browser.

Unless you're reading a PDF or a printed version of this page, this content is made up of various HTML elements and text. HTML is the content layer of the web. HTML elements are the nodes that make up the Document Object Model.

Cascading Style Sheets provide the look and feel, or presentation layer of the page. JavaScript is the behavior layer, often used to manipulate the objects within a document. Sites that are built with JavaScript frameworks are really just manipulating HTML. In turn, it's important to mark up your HTML in a way that scripts can easily parse and that assistive technologies can easily understand. This means writing HTML code with modern standards.


This HTML course for web developers provides a solid overview for developers, from novice to expert level HTML. If you're completely new to HTML, you will learn how to build structurally sound content. If you've been building websites for years, this course may fill in gaps in knowledge that you didn't even know you had.

Along this journey, we will be building the structure for MachineLearningWorkshop.com. No machines were harmed in the creation of this series.

This is not a complete reference. Each section introduces the section topic with brief explanations and examples, providing you an opportunity to explore further. There will be links to topic references, such as MDN and WHATWG specifications, and other web.dev articles. While this is not an accessibility course, each section will include accessibility best practices and specific issues, with links to deeper dives on the topic. Each section will have a short assessment to help people confirm their understanding.

Here's what you'll learn:

Overview of HTML

A brief introduction to the key concepts in HTML.

Document structure

Learn how to structure your HTML documents with a solid foundation.


How to use meta tags to provide information about your documents.

Semantic HTML

Using the correct HTML elements to describe your document content.

Headings and sections

How to correctly use sectioning elements to give meaning to your content.


Learn about the different global attributes along with attributes specific to particular HTML elements.

Text basics

How to format text using HTML.

Everything you need to know about links.


Lists and other ways of grouping your content.

Navigation is a key element of any site of application, and it starts with HTML.


Understanding how to use tables to mark up tabular data.


An overview of forms in HTML.


An overview of images in HTML.

Audio and Video

Discover how to work with HTML media such as audio and video.

Template, slot, and shadow

An explanation of template, slot, and shadow.


Learn how HTML information can be exposed and manipulated using JavaScript.


How to manage focus order in your HTML documents.

Other inline text elements

An introduction to the range of elements used to mark-up text.

Details and summary

Discover how the very useful details and summary elements work, and where to use them.


The <dialog> element is a useful element for representing any kind of dialog in HTML, find out how it works.

Conclusion and next steps

Wrapping up with some further resources.

So, are you ready to learn HTML? Let's get started.