Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8406613
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 9, 20262026-06-09T23:09:25+00:00 2026-06-09T23:09:25+00:00

According to HTML5Doctor.com and other HTML5 introductory sites, the header element should contain a

  • 0

According to HTML5Doctor.com and other HTML5 introductory sites, the header element should contain a h1-h6 tag plus other navigational or introductory content. However, the traditional ‘header’ on most websites consists of just a logo and some navigational elements.

A lot of major sites including Facebook and Twitter use a h1 tag for their logo, which seems illogical to me, since the logo is not the most important or most informative element on the page.

A h1 tag appears in the content section of 95% of websites, not the header section. So why are we instructed to include a h tag in the header? If we must, why don’t Facebook and Twitter use a h6 tag instead?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-09T23:09:27+00:00Added an answer on June 9, 2026 at 11:09 pm

    You should take a look at the outline algorithm for HTML5.

    You probably want your site title/logo to be a h1.

    Imagine a small webpage, consisting of a page header (logo, site name, …), a site navigation and a blog entry (main content of this page):

    <body>
     <!-- not using sectioning elements, for the sake of the example -->
    
     <header>ACME Inc.</header>
    
     <div class="navigation">
      <ul>…</ul>
     </div>
    
     <div class="content">
      <h1>Lorem Ipsum</h1>
      <p>…</p>
     </div>
    
    </body>
    

    Here the only heading is the h1 inside the div. Semantically this would mean, that all content of this page is in the scope of this heading. See the outline of this page:

    1. Lorem Ipsum

    But this would not be true (in the semantic way): hierarchically, the page header “ACME Inc.” is not “part” of the blog entry. Same goes for the navigation; it’s a site navigation, not navigation for “Lorem Ipsum”.

    So the site header and the site navigation need a heading. Let’s try to give them a h1, too:

    <body>
     <!-- not using sectioning elements, for the sake of the example -->
    
     <header>
      <h1>ACME Inc.</h1>
     </header>
    
     <div class="navigation">
      <h1>Site navigation</h1>
      <ul>…</ul>
     </div>
    
     <div class="content">
      <h1>Lorem Ipsum</h1>
      <p>…</p>
     </div>
    
    </body>
    

    Way better! The page outline now looks like:

    1. ACME Inc.
    2. Site navigation
    3. Lorem Ipsum

    But it’s still not perfect: they are all on the same level, but “ACME Inc.” is what makes all the webpages to form a website, it’s the whole point why there are webpages at all. The navigation and the blog entry are parts of “ACME Inc.”, which represents the company and the website itself.

    So we should go and change the navigation and blog entry headings from h1 to h2:

    <body>
     <!-- not using sectioning elements, for the sake of the example -->
    
     <header>
      <h1>ACME Inc.</h1>
     </header>
    
     <div class="navigation">
      <h2>Site navigation</h2>
      <ul>…</ul>
     </div>
    
     <div class="content">
      <h2>Lorem Ipsum</h2
      <p>…</p>
     </div>
    
    </body>
    

    Now we have this outline:

    1. ACME Inc.
      1. Site navigation
      2. Lorem Ipsum

    And this is exactly what the content of the example webpage means.
    (By the way, this would work in HTML 4.01, too.)

    As explained in the link, HTML5 gives us sectioning elements, which play an important role for the outline (instead of div, which doesn’t influence the outline) We should use them:

    <body>
    
     <header>
      <h1>ACME Inc.</h1>
     </header>
    
     <nav>
      <h2>Site navigation</h2>
      <ul>…</ul>
     </nav>
    
     <article>
      <h2>Lorem Ipsum</h2
      <p>…</p>
     </article>
    
    </body>
    

    The outline stays the same. We could even change the h2 (inside of the nav and the article) back to h1, the outline would stay the same, too.

    If you don’t want an “explicit” heading for the navigation, you are free to remove it: the outline stays the same (now with an implicit/”unnamed” heading for the nav). Each section has a heading, whether you add it or not.

    You could even change the h1 inside the header to h6 and it wouldn’t change the outline. You can think of this heading as the “heading of the body“.

    Additional notes

    • The header element is not needed in these examples. I only added it because you mentioned it in your question.
    • If you want to use a logo instead of a textual name (“ACME Inc.”), you should still use a h1 and add the img as a child. The value of the alt attribute should give the name then.
    • The top level heading doesn’t have to be “the most important or most informative element on the page”. This is not what headings are used for. They give the structure/outline and “label” their scoped content. In this example, you could assume that the article (with its heading inside) is the most important content.
    • If you use the sectioning elements everytime whend needed, you don’t need h2…h6 anymore (but you are free to use them, for clarity or backwards compatibility).
    • You can play around and test some markup constructs with the HTML Outliner: http://gsnedders.html5.org/outliner/ (it had some unfixed bugs) the HTML5 Outliner.
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

According to HTML5Doctor's article on the dl element : <dl> can be used to
According to http://msdn.microsoft.com/en-us/library/ms535934(v=VS.85).aspx and http://msdn.microsoft.com/en-us/library/ms535262(v=VS.85).aspx , I should be able to do the following
According to http://developer.android.com/guide/practices/ui_guidelines/icon_design_status_bar.html - Status bar icons should be white without any color. Many
According to JavaScript Patterns book (p. 79), this should work: var ob = {
According to the dataset specification , how is element.dataset meant to delete data attributes?
According to connects documentation the session should expire when the browser is closed: By
According to the docs: You should not override init. You are discouraged from overriding
According to the MSDN article found at http://msdn.microsoft.com/en-us/library/wyk4d9cy.aspx the floating-point value .1 has no
According to this article and a number of other documents, JDBC resources are deployed
According to the site, http://www.dba-oracle.com/t_nls_lang.htm Problem might occur even if both the database and

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.