On the Peculiarities of Counting the Number of HTML Elements

Published on January 17, 2022 (↻ September 26, 2023), filed under (RSS feed for all categories).

How many HTML elements are there?

What looks like a fairly simple question, isn’t one:

The answers to these questions lead to different answers about the number of HTML elements.

Many people may want to know the number of HTML elements as per the current specification. That still leaves the question how they treat SVG and MathML as well as custom elements. Custom elements are not countable and should probably be ignored. If <svg> and <math> are considered elements of their respective specifications, as of today June 2, 2022, the answer is 111; if <svg> and <math> are considered HTML elements, 113.

If you’re looking for the number of HTML and XHTML elements formally specified, the answer is 131 or 133, that is, without or with <svg> and <math>. (I maintain an HTML elements index that makes this easy to tell.)

If you’re looking for all elements specified in HTML 1, it’s 22 elements; in HTML 2.0, 49 elements; in HTML 3.2, 70 elements; in HTML 4.01, 91 elements; in (unofficial) HTML 5.2, 111 elements. In XHTML 1.0, 91 elements; but in XHTML 1.1, a “strict” spec, 83 elements.

You notice that the answer to the number of HTML elements isn’t difficult; it only needs qualification because there isn’t one number of HTML elements. When you talk about the number of HTML elements, make clear what you’re including and excluding; and when you’re reading about it, check on what the author is including and excluding. This way, you avoid ambiguity and inaccuracy.

If you’re curious about all the HTML elements, check out aforementioned HTML elements index! It’s up-to-date—and when you find a mistake, I’m happy to stand corrected and might pay or donate for the correction.

Was this useful or interesting? Share (toot) this post, become a one-time nano-sponsor, or support my work by learning with my ebooks.

About Me

Jens Oliver Meiert, on November 9, 2024.

I’m Jens (long: Jens Oliver Meiert), and I’m a frontend engineering leader and tech author/publisher. I’ve worked as a technical lead for companies like Google and as an engineering manager for companies like Miro, I’m a contributor to several web standards, and I write and review books for O’Reilly and Frontend Dogma.

I love trying things, not only in web development (and engineering management), but also in other areas like philosophy. Here on meiert.com I share some of my experiences and views. (Please be critical, interpret charitably, and give feedback.)