We all know the importance and significance of Headings for Professional Webmasters. These were known for professional developers as: <h1>Heading 1</h1>, and H2 through H6.

As a daring web developer, lately I needed more short headings for complex structured document and I thought about this and used these in my CSS:

h1,h2,h3,h4,h5,h6{ }

h7{ }
h8{ }
h9{ }

My experiment turned out to pay off, but only in Firefox, Safari, Chrome, etc..., not in Internet Explorer 8.

Question 1. Who (and when) decided that headings should go up to H6, and not H4 or H7?

Question 2. Why do H7 though H9 work perfectly in all major browsers, except IE8?

Question 3. What is the significance for Bing, Yahoo, and Google in terms of recognition for headings H1 through H9? Obviously H1 is more important than H2, but do they differentiate between H5 and H6? Or not more than H3?


1) The w3c decided this as they are the ones who wrote the HTML 4 specs.

2) Because they don't exist. Since browsers are supposed to ignore incorrect HTML tags they simply display the content and ignore the tag. (I don't know what IE 8 does but it's probably incorrect if it is not displaying the content).

3) Most likely as the <hx> goes down in number its weight diminishes with <h6> being probably no/marginally better then using <strong>. Their exact weight is unknown.

  • Great John. That is what i tought too on 2)! 1)=HTML4... boy is that a long time ago! probably a decade ago, and HTML5 is not even fully supported everywhere. Isn't that a bit slow in the internet age? Oh well. I geuesse im the only one in need of h7 ~ h9 to broaden the entire spectrum of importances of headings, breadcrums, sections, and above all, i miss matured tags to highlight stuff. sometimes i use <strong> sometimes <em> but i haven't known a better highlighter than just h7 ~ h9 as its semantics comes closest to a heading. – Sam Dec 22 '10 at 16:55
  • 3
    What kind of documents are you writing that need more than 6 levels of headings? I hope you're not using headings for outlines. – Lèse majesté Dec 22 '10 at 17:34
  • I even see important QUOTES from famous artists, scientists etc as heading7. imagine a page opens my h1 would be the factual page title more or less, then subtitle h2 (longer text) h3 (even longer introduction into the page) then the sections h4 etc. Now, the QUOTES on the top of the page are huge but less important than say h3, and no search engine would ever understand their meaning anyway, so to give them h3 doesnt make sense. They are big and bold and italic, but earn a h7 to my viewpoint. Also for highlighting text that is isolated and captures the eyes i use h8 and h9. Your opinion? – Sam Dec 23 '10 at 8:23
  • 3
    An introduction is not a heading, and neither is a quote. Quotes have their own tags: blockquote or q for inline quotes. – Lèse majesté Dec 23 '10 at 12:54

John Conde provided a good answer, BAU.

However, I saw your comments on John Conde's reply. I'm member of WHATWG (the current HTML5 development process is: whatwg discuss, create, change, and W3C just keep a consolidated copy. Kristen from Opera is the copy keeper).

That said, there was exactly the same question a time before, asking for headings beyond H6. But only a really few websites have this need.

Your example, asking about breadcrumbs... you should not use headings at all for an auxiliar navigation widget.

The idea was refused by majority with the above explanation.

  • Thanks Dave, +1, Very clarifying and i guesse i have to drop the idea becaouse of lack of support:) Just hope its not limiting to have SIX when I prefer NINE, albeit its as you said used needed on few websites. – Sam Dec 23 '10 at 16:42
  • 1
    @Sam yeah, the real need is just for a few websites. The unique real examples I see the need is for really long numbered lists as detailed index. Actually, h6 is almost unused. You commomly find until h3. Beyond this, the needs drop a lot. But let me give you an workaround this limitation if you want to (however SEO value will be none). You can just add headings as you wish. Then create the proper CSS styles (so far most browsers will render and display bcoz they use a XML parser as basis). For IE, you need a quick script similar to whatwg.org/demos/company-home/js/html5.js – Dave Dec 23 '10 at 18:08

I'm not sure exactly what kind of content you're working with, but you called it a "complex structured document". I would imagine that with this being the case it's not possible to split the content into different sections/pages.

With the level of headers you're wanting to drill down to, I wonder if you're being too liberal with what content you want tagged as a header. Like Lèse majesté, blockquotes and other tags would be more appropriate for certain chunks of content.

I work with several government websites, and run into problems like this, where the document is very long with a ton of "sections", that can't be split up and have to appear on the site exactly as it's delivered to me. Generally I build the pages as an outline, using nested lists to structure the document properly so that the order can be properly interpreted by browsers, screen readers, etc.

  • 1
    That's what I'd recommend as well. And even though HTML5 isn't well-supported yet (and breaks backwards compatibility with IE6 and 7), you can use structural labels (maxdesign.com.au/2006/01/17/about-structural-labels ) along with an outline structure to both style and define the semantic significance of elements that there aren't specific tags for. – Lèse majesté Dec 23 '10 at 16:07

In a mail from 1991, Tim Berners-Lee explained:

I would in fact prefer, instead of <H1>, <H2> etc for
headings [those come from the AAP DTD] to have a nestable
<SECTION>..</SECTION> element, and a generic <H>..</H> which at any
level within the sections would produce the required level of

So the reason that we have h1-h6 in HTML is that these elements were part of AAP DTD, a SGML document type for scientific documents.

So in an early HTML draft from 1992, it says:

Several levels (at least six) of heading are supported. Note that a hypertext document tends to need less levels of heading than a normal document whose only structure is given by the nesting of headings. […]

<H1>, <H2>, <H3>, <H4>, <H5>, <H6>

These tags are kept as defined in the CERN SGML guide. Their definition is completely historical, deriving from the AAP tag set. […]

In the first W3C Working Draft of HTML5 from 2008, we got the outline algorithm:

The first element of heading content in an element of sectioning content gives the header for that section.

Which means that now we can use any desired number of heading levels, not by using a generic h element, but by reusing (→ backward compatibility) h1(-h6) elements in sectioning content elements (currently: section, article, aside, nav):

<h1>Level 1</h1>
  <h1>Level 2</h1>
    <h1>Level 3</h1>
      <h1>Level 4</h1>
        <h1>Level 5</h1>
          <h1>Level 6</h1>
            <h1>Level 7</h1> <!-- wohoo! -->

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.