The State of <H>
February 2017
It’s been 162 likes, 143 comments, 16 dislikes, 7 hoorays, and 1 month since I proposed that the W3C add an <h> element to HTML.
<h> is intended to be a new heading element and the successor to <h1> through <h6>. The concept remains simple; they all represent the heading for a section.
The <h1> through <h6> heading elements we all know come to HTML from 1969’s excellent Generalized_Markup_Language (GML), where flat structures were used to communicate simple rich text.
:h1.This is GML
:p.GML supported hierarchical containers, such as
:ol.
:li.Ordered lists (like this one),
:li.Unordered lists, and
:li.Definition lists
:eol.
as well as simple structures.
From 1989 to 1991, Tim Berners-Lee developed HTML from that GML predecessor, and by 1993, developers realized the flat h1-h6 concepts were problematic. The issue would continue to rise up from time to time, as it has now.
What makes this attempt unique is the attention we now have and whom we have attention from. I see interest coming from;
And, seriously, many other web heroes. Following this interest, it was the top story on FrontEnd Focus last week.
Now, we don’t all yet agree with how to move on from the “flat”-ness of <h1> through <h6>, but the consensus is that we need contextual headings, and that we’ll be much better off once we get them.
How can there be consensus and disagreement? Well, if you want to understand the consensus for contextual headings, I’d recommend reading Brian Kardell’s “Headings and the Seinfeld Pitch", and if you want to understand the disagreement, read any comment discussing the document outline from my original proposal. The main concern is how to implement the document outline.
Here’s one prompt; should we implement the outline to redefine existing <h1> through <h6> elements to be contextual headings regardless of when they use 1-6?
<body>
<h6>i am contextually h1</h6>
<section><h1>i am contextually h2</h1></section>
</body>
Do we (developers, browsers, search engines) want that? If we don’t, then do we want to leave the existing definitions as-is and recommend <h> instead?
Another example; should we ignore outline depth for sections without headings? (and it’s worth remembering that sectioning elements were supposed to have headings, but developers never really followed this rule)
<body>
<main>
<section>
<article>
<h>as the first heading, am i contextually like an h1?</h>
</article>
</section>
</main>
</body>
Do we (developers, browsers, search engines, screen readers) want that? If we don’t, do we leave the sections untitled and and recommend <h> usage once again? What even is the document outline? These are good, fair questions that help us solve the problem.
I hope the helps you understand where things are at. I couldn’t be happier with the interest and energy being put into moving contextual headings forward. My biggest concern is that we’ll lose interest in discussing these deeper issues, because we also have day-jobs, and web standards take time.
Please don’t forget <h>. Don’t forget that we can almost always solve problems, but we can’t always solve problems right away.
Cheers,
Jonathan
The State of <H>
It’s been 162 likes, 143 comments, 16 dislikes, 7 hoorays, and 1 month since I proposed that the W3C add an
<h>element to HTML.<h>is intended to be a new heading element and the successor to<h1>through<h6>. The concept remains simple; they all represent the heading for a section.The
<h1>through<h6>heading elements we all know come to HTML from 1969’s excellent Generalized_Markup_Language (GML), where flat structures were used to communicate simple rich text.From 1989 to 1991, Tim Berners-Lee developed HTML from that GML predecessor, and by 1993, developers realized the flat h1-h6 concepts were problematic. The issue would continue to rise up from time to time, as it has now.
What makes this attempt unique is the attention we now have and whom we have attention from. I see interest coming from;
And, seriously, many other web heroes. Following this interest, it was the top story on FrontEnd Focus last week.
Now, we don’t all yet agree with how to move on from the “flat”-ness of
<h1>through<h6>, but the consensus is that we need contextual headings, and that we’ll be much better off once we get them.How can there be consensus and disagreement? Well, if you want to understand the consensus for contextual headings, I’d recommend reading Brian Kardell’s “Headings and the Seinfeld Pitch", and if you want to understand the disagreement, read any comment discussing the document outline from my original proposal. The main concern is how to implement the document outline.
Here’s one prompt; should we implement the outline to redefine existing
<h1>through<h6>elements to be contextual headings regardless of when they use 1-6?Do we (developers, browsers, search engines) want that? If we don’t, then do we want to leave the existing definitions as-is and recommend
<h>instead?Another example; should we ignore outline depth for sections without headings? (and it’s worth remembering that sectioning elements were supposed to have headings, but developers never really followed this rule)
Do we (developers, browsers, search engines, screen readers) want that? If we don’t, do we leave the sections untitled and and recommend
<h>usage once again? What even is the document outline? These are good, fair questions that help us solve the problem.I hope the helps you understand where things are at. I couldn’t be happier with the interest and energy being put into moving contextual headings forward. My biggest concern is that we’ll lose interest in discussing these deeper issues, because we also have day-jobs, and web standards take time.
Please don’t forget
<h>. Don’t forget that we can almost always solve problems, but we can’t always solve problems right away.Cheers,
Jonathan