: SEO and browser compatibility differences for headings though We all know the importance and significance of Headings for Professional Webmasters. These were known for professional developers
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?
More posts by @Bryan171
4 Comments
Sorted by latest first Latest Oldest Best
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
heading.
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>
<section>
<h1>Level 2</h1>
<section>
<h1>Level 3</h1>
<section>
<h1>Level 4</h1>
<section>
<h1>Level 5</h1>
<section>
<h1>Level 6</h1>
<section>
<h1>Level 7</h1> <!-- wohoo! -->
</section>
</section>
</section>
</section>
</section>
</section>
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.
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.
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.
Terms of Use Create Support ticket Your support tickets Stock Market News! © vmapp.org2024 All Rights reserved.