HTMHell

htmhell.dev · Group blog · on HN since 2019

HTMHell is a collection of bad HTML practices and markup tips, with an annual advent calendar of articles on HTML and accessibility.

What HN saysHN commenters cite it as a reference for correct HTML semantics, such as anchor tags used as buttons, and for avoiding unnecessary JavaScript.
28HN people shared it
7linked it in comments
36stories submitted
1.1Kstory points
8 months agolast shared
2019people per year2026

Most-shared posts

  1. 1
    A collection of bad practices in HTML
    6 people · 170 points · first shared 2019 · 87 comments on HN
  2. 2
    How HTML Changes in ePub
    3 people · 9 points · first shared 2025 · discussion on HN
  3. 3
    HTML: The Bad Parts
    3 people · 7 points · first shared 2023 · 1 comments on HN
  4. 4
    The HTML Elements Time Forgot
    3 people · 4 points · first shared 2025 · discussion on HN
  5. 5
    You don't need JavaScript for that
    3 people · 2 points · first shared 2023 · discussion on HN
  6. 6
    My favourite colour is Chuck Norris red
    2 people · 519 points · first shared 2024 · 100 comments on HN
  7. 7
    Never Underestimate HTML
    2 people · 6 points · first shared 2023 · discussion on HN
  8. 8
    Template for Accessibility Guidelines
    2 people · 2 points · first shared 2023 · discussion on HN
  9. 9
    The UX of HTML (2023)
    1 people · 183 points · first shared 2024 · 92 comments on HN
  10. 10
    Htmhail
    1 people · 92 points · first shared 2024 · 61 comments on HN
  11. 11
    Replacing JavaScript with Just HTML
    1 people · 47 points · first shared 2025 · 10 comments on HN
  12. 12
    Hell is other people's markup
    1 people · 22 points · first shared 2025 · 3 comments on HN
  13. 13
  14. 14
    The Depths of the Input Element
    1 people · 4 points · first shared 2023 · discussion on HN
  15. 15
    Native HTML light and dark color scheme switching
    1 people · 3 points · first shared 2024 · discussion on HN

What HN people wrote when they linked it

antibland · 2019-11-12
For the button wrapped in a link example [0], which is invalid HTML, many people don't know it's valid to wrap a button inside a form, using the form's action as the destination. Not something I use often, but it's at least a thing worth knowing. <form action="link.html" method="get" target="_blank"> <button type="submit">Link</button> </form> [0] https://www.htmhell.dev/4-link-also-button/
mmatuzo · 2019-11-12
I've added "read more" links to make it more obvious that there's more! https://www.htmhell.dev/
ChrisArchitect · 2026-03-20
Etheryte · 2024-08-09
This is the worst of both worlds, it doesn't conform to the spec and it has incorrect semantics. See HTMHell [0] for a brief discussion on the topic, albeit with a slightly different example. [0] https://www.htmhell.dev/8-anchor-tag-used-as-button/
geor9e · 2024-01-27
I thought this comment was saying they only used html like this other HN post was talking about https://www.htmhell.dev/adventcalendar/2023/2/ . But no, the comments just saying they put all the .js and .css inside the .html file.
rypskar · 2019-11-12
#9 https://www.htmhell.dev/9-cookie-consent-from-hell/ is missing good code. A cookie consent where the only option is OK give zero value. If you don't track users there is no need for the dialog and if you track the users this dialog do not show that tracking is turned off to you click OK

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close