Categories
HTML Accessibility

12 years beyond a HTML joke

Patrick Lauke pervey (eyes closed) glasses look

Originally published February 2020, updated in March 2021. Updated again today after reading web standards fantasy

It’s actually been longer (I remember being introduced to the outline algorithm in 2007), but 12 years is a number worth signifying.

In 2020 2021  2022 as it was in 2010 the HTML specification defines an outline algorithm and specifies how it affects heading rank regardless of the hard coded heading level h1...h6 and how <hgroup> automagically transforms multiple headings into a single heading.

Problem is that its never been implemented, as a consequence developers taking the specification as the truth, have been and continue to be misled. The reality of this fantasy has been burned into many books on HTML and articles over the last decade. The disconnection between implementation reality and HTML specification has been raised many a time. This was in the past partially mitigated by the the HTML5 specification (2014), which initially warned of the disconnect and later modified the definitions of the various elements effected by the non existent outline algorithm and obsoleted the hgroup element (as it does nothing apart from provide a hook for developers to hang CSS styles off), so that they aligned with a (less) desirable but actual implementation of the semantics of headings and sectioning elements. This included updating the code examples to reflect that <h1> elements are semantically heading level 1 elements regardless of what they are nested in.

There has been ongoing discussions with the current keepers of the HTML specification, but as such discussions do, have dragged on for years. This is not uncommon or sometimes undesirable, but what is uncommon and undesirable is that important information used by developers and expected to have a passing relationship to reality, does not and has not aligned with implementations for 10 years or so.

10 years + 2, no change

Good news was that there appeared to be movement at the station and the HTML specification may sometime soonish reflect reality. The question is still 10 years + 2:

Why is it OK to have a substantial set of authoritative semantic HTML definitions misdirect developers for so long?

And then there is the question What do we do with <hgroup>?

New old PR – Obsolete <hgroup> #6462 by SideShowBarker

Further Reading

Further Listening

Jolly Fucker lyrics
Promote yourself, look like a cunt
Vodka parties, cushioned walls in a shit club
I 'ain't bothered where it goes, I've got a job
I'll rot away in the aisles of the Co-op mate, no prob
French Fancies, Mr Kipling, acid dances
Let's laugh at local record plants
Elitist hippies, arrogant cunts, Ian Beale, tight trunks
Tight pants, grammar wanker, walk the plank, pirate mankey
Sixty kids, where's mine? Wasting money on shit coffee all the time
Fish fingers, take the batter off, I can't believe you had kids, fuck off
Jolly fucker
Jolly fucker
Jolly fucker
Mr Jolly Fucker
Lamp Light Boogie, re-press, re-press
Bus cunt, move then, mate, move for fucks sake
The machine goes bleep, ticketless, sheep
Baa baa crack sheep, have you any rock?
EDL twat, Tommy used to work on the dock
Union went all white, he fuckin' loved it
Take it down, there, take it down, there
Camouflage, Humpty Dumpty, Crusades
Blood on the hands of working class rage
Jolly fucker
Jolly fucker
Jolly fucker
Mr Jolly Fucker
Why do I walk on City and Guilded splinters?
Digital time boards on the new public shitters
Soft dips in hard roads, curry night, I'd better watch my words
Two pint bull and loads of office turds
Push in, don't push me, I was here first, you cunt
Can't you fuckin' see?
Jolly fucker
Jolly fucker
Jolly fucker
Mr Jolly Fucker

Leave a Reply

Your email address will not be published. Required fields are marked *