HTML Tutorial · HTML Basics · Lesson 10 of 34

HTML History & Versions

How Tim Berners-Lee invented HTML for the World Wide Web, every version from the first 18 tags to HTML5 and today's Living Standard on one timeline, what HTML5 changed, and how new elements reach browsers now.

How HTML started

In March 1989, Tim Berners-Lee, a physicist at CERN in Switzerland, proposed an information system to help researchers share documents: the World Wide Web. By the end of 1990 he had written the first web server, the first browser and the language for its pages, the HyperText Markup Language. HTML was inspired by SGML, a markup system already used at CERN, and added the crucial new idea of hyperlinks between documents.

His "HTML Tags" document (1991) described just 18 elements, such as <title>, <p>, lists and <a> for links; a few of them are still used exactly the same way today. The first official standard, HTML 2.0, was published by the IETF in 1995. Since then the language has been developed by the W3C (founded by Berners-Lee in 1994) and, today, by the WHATWG, a group formed by browser makers.

Timeline of HTML versions

  1. HTML Living StandardCurrent
    • The single HTML specification maintained by the WHATWG and endorsed by the W3C; updated continuously, no version numbers
    • Recent additions: <dialog>, the popover attribute, <search>, exclusive accordions <details name="...">, inert, lazy-loading images
  2. HTML 5.2Historic
    • The last numbered W3C version
  3. HTML 5.1Historic
    • <picture> and srcset for responsive images
  4. HTML5Historic
    • Semantic elements (<header>, <nav>, <main>, <article>, <footer>), <video> and <audio> without plug-ins, <canvas>, new form inputs (email, date, range), APIs such as localStorage
  5. HTML WHATWGHistoric
    • Apple, Mozilla and Opera start "Web Applications 1.0", which became HTML5
  6. HTML XHTML 1.0Historic
    • HTML rewritten with strict XML syntax (the planned XHTML 2.0 was later abandoned)
  7. HTML 4.01Historic
    • Presentation moved to CSS; strict and transitional variants; the version of the early-2000s web
  8. HTML 3.2Historic
    • The first W3C recommendation: tables, applets, text flow around images
  9. HTML 2.0Historic
    • The first standard (IETF RFC 1866), including forms
  10. HTML TagsHistoric
    • Tim Berners-Lee's first public description of HTML: 18 elements

How HTML modernized

  • From documents to applications. HTML5 added the elements and APIs needed for web apps, and native <video>, <audio> and <canvas> removed the need for plug-ins. Flash, once everywhere, reached end of life in December 2020.
  • One living standard. In 2019 the W3C and WHATWG agreed on a single HTML specification. New features are added when browsers agree to implement them, instead of in big numbered versions.
  • Error-tolerant parsing. HTML5 defined exactly how browsers must parse even broken markup, so all browsers now build the same page from the same HTML.
  • Built-in components. Features that used to need JavaScript libraries, such as dialogs, popovers, accordions, lazy loading and form validation, are now plain HTML.
  • Baseline. Since 2023, a feature labelled Baseline works in all major browsers, which makes it easy to know when a new element is safe to use.

HTML 4.01 vs HTML5

Topic HTML 4.01 HTML5 / Living Standard
Doctype <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <!DOCTYPE html>
Page structure <div id="header">, <div id="nav"> <header>, <nav>, <main>, <footer>
Video and audio Plug-ins (Flash, QuickTime) <video> and <audio>
Graphics Images only <canvas> and inline <svg>
Forms Text, checkbox, radio, select Also email, url, date, number, range, color, built-in validation
Character set <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta charset="utf-8">
Storage in the browser Cookies only localStorage, sessionStorage, IndexedDB

Recent HTML features and when they became Baseline

Feature What it does Baseline since
<dialog> Native modal and non-modal dialogs 2022
loading="lazy" on images Load images only when they are about to be seen 2022
inert Make part of a page unfocusable and unclickable 2023
<search> A landmark element for search forms 2023
popover Menus, tooltips and pop-ups without JavaScript 2024
<details name="..."> Accordions where only one item is open at a time 2024

Which version should you use?

There is only one: write HTML5 / the Living Standard, starting every page with <!DOCTYPE html>. Before using a very new element, check its Baseline status on MDN or web.dev/baseline.

Official resources

Last reviewed 21 October 2026. Release and support dates come from the official release pages linked above.