Every HTML Element
Page behavior and presentation
- Several users report the page initially scrolling down near an
<iframe>(red dot) on load, on both mobile and desktop; author attributes it to misconfigured iframe source and fixes it. - People are impressed that browsers handle many recursive iframes (one user counts 18 levels before it stops rendering).
Scope: “Every HTML Element”?
- Debate over what “every” means: some note missing or hard-to-spot elements like
<script>,<canvas>,<details>/<summary>,<dialog>,<marquee>,<blink>, deprecated tags (<xmp>,<plaintext>,<center>), and experimental<portal>. - Others point out distinctions between conforming, obsolete, and never-standard elements; HTML specs don’t have a single clean “all elements” list, and some legacy names only exist in parsing rules.
- Links are shared to element indices, the HTML spec, and an HTML-tags memory game; mismatches highlight the ambiguity of “full coverage.”
Semantics, layout, and custom elements
- Strong advocacy for using semantic elements instead of
<div>-heavy layouts and classes, sometimes combined with “classless CSS.” - Some propose using custom elements (with hyphens to avoid future conflicts) instead of classes, e.g.,
<my-product primary>. - Others push back that HTML tags should describe content, not layout; flex/grid can be applied to whatever semantic container fits.
Specific elements and quirks
<hgroup>: confusion over its status; commenters clarify it was deprecated in a W3C line but retained and later “rehabilitated” in WHATWG, with changed semantics.<ruby>is highlighted as underused but highly useful for East Asian pronunciation (furigana).<dialog>: criticism that calling it “just HTML” is misleading whenshowModal()JS is used; some note dialogs can open via theopenattribute or be combined with the Popover API, but modal behavior still effectively requires JS.- Forms: discussion on explicit vs implicit
<label>; implicit wrapping avoidsidcollisions, but explicit labels may work better with some screen readers.
Deprecated/obsolete elements and nostalgia
- Nostalgic mentions of
<marquee>,<blink>,<center>,<xmp>,<plaintext>, “under construction” GIFs. - Clarification that some of these were never in any official HTML standard (especially
<blink>/<marquee>), or are now fully obsolete, though they may still “work” in browsers. - CSS snippets are shared showing how to “revive” blink-like behavior.
HTML vs XHTML and parsing rules
- Debate about self-closing syntax (
<br />,<input />), with reminders that HTML never required the trailing slash; it was a XHTML artifact. - One side misses XHTML’s strictness; another argues HTML’s parser is now fully specified and deterministic, whereas XML/XHTML push errors onto users with fatal failures.
- Explanation that HTML parsing is best understood as a state machine manipulating a stack of open elements, which is why regex/XML parsers are a poor fit.
- Counterintuitive examples show XHTML can be well-formed yet semantically invalid (e.g., nested
<button>), while HTML’s parser rules prevent some invalid DOMs.
Meta resources and reactions
- Readers share related “every element” posts, classless-CSS collections, and research on tag/attribute frequencies from Common Crawl.
- Overall tone is enthusiastic: people report learning or rediscovering tags (
<progress>,<meter>,<ruby>,<hgroup>), enjoying the creativity, and getting “House of Leaves”–style vibes from the page’s structure.