Free tools Windows power users keep installed
One-click scans. No signup required.
HTML sectioning is how you give a page a meaningful structure instead of treating it as one long stack of generic boxes. Elements such as header, nav, main, section, article, aside, and footer describe the role of each part of the page, making your markup easier for browsers, search engines, assistive technologies, and other developers to understand.
Good sectioning also makes pages easier to maintain. When content is grouped with the right semantic elements and supported by a clear heading hierarchy, layouts become more predictable, navigation becomes simpler, and screen reader users can move through the page with greater confidence.
As an Amazon Associate I earn from qualifying purchases.
Using these elements well is less about memorizing tags and more about choosing the element that best matches the purpose of the content. A strong HTML structure separates the primary content from navigation, supporting information, standalone articles, and repeated page areas, creating a document that is both readable and accessible.
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Fix the driver behind crashes, sound loss and screen glitches3Repair Windows errors before they cause bigger problemsWhy HTML Sectioning Matters
HTML sectioning matters because it turns a page from a loose collection of boxes into a document with understandable structure. Elements such as header, nav, main, section, article, aside, and footer describe the role of each area, not just how it looks. That distinction is useful for browsers, assistive technologies, search engines, developers, and anyone who has to update the page later.
#1 Best Overall
- No programming skills required
- With 1 licence you can install the software on 2 computers and create as many sites as you wish
- 250 professional and customizable templates
- Import images and videos (including YouTube), editor for creating buttons
- Automatic HTML5 code generation + FTP engine for publishing your website
When semantic sectioning is used well, the source code becomes easier to scan. A developer can quickly identify the main content, locate the primary navigation, find supporting content, or modify the footer without tracing through a long chain of generic div elements. This is especially valuable on larger sites where layouts are shared across templates and maintained by mulle people. Clear sections reduce guesswork and make future changes safer.
Semantic structure also improves accessibility. Screen reader users often navigate by landmarks and headings rather than reading every line from top to bottom. A page with a single main area, a meaningful nav, well-placed headings, and properly separated supporting content gives users faster ways to move around. For example, a visitor can jump directly to the main article, skip repeated navigation, or browse the heading list to understand what the page contains before reading in detail.
Good sectioning also supports consistent design and content organization. CSS can target meaningful regions, JavaScript can enhance specific areas more predictably, and content teams can follow repeatable patterns. A typical page might use a site-wide header for branding, a nav for primary links, main for the unique content of the page, section elements for grouped topics, an aside for related links, and a footer for copyright or secondary navigation.
- Readability: semantic elements make the document easier to understand at a glance.
- Maintainability: clearly named regions reduce fragile layout assumptions and unnecessary wrappers.
- Accessibility: landmarks and headings help users navigate with assistive technology.
- Consistency: repeated page patterns become easier to design, test, and reuse.
Core Semantic Elements and Their Roles
Semantic sectioning elements describe the purpose of each part of a page, not just how it looks. Instead of building every layout with generic <div> containers, use elements such as <header>, <nav>, <main>, <section>, <article>, <aside>, and <footer> when the content has a clear role. This makes the document easier for developers to scan, helps browsers and assistive technologies interpret the page, and gives search engines clearer signals about content structure.
<header>
The <header> element represents introductory content for a page or a section. At the page level, it usually contains the site logo, site name, primary navigation, search, or account links. Inside an <article> or <section>, it can contain a title, subtitle, author name, publication date, or other introductory details. A page can have more than one <header>, as long as each one introduces the content it belongs to.
<nav>
Use <nav> for a major group of navigation links. Common examples include a primary site menu, table of contents, pagination, breadcrumb trail, or sidebar menu for a documentation section. Not every group of links needs <nav>; a few inline links in a paragraph or a short list of related resources can remain ordinary links. Reserve <nav> for navigation blocks users are likely to rely on to move through the site or page.
<main>
The <main> element contains the central content unique to the current page. There should be only one visible <main> element in a document. It should not include repeated site-wide content such as the global header, primary navigation, cookie banners, or footer. On an article page, <main> might wrap the article and supporting content. On a product page, it might contain the product details, images, pricing, reviews, and purchase options.
<section>, <article>, and <aside>
Use <section> for a thematic grouping of content, usually with its own heading. Examples include “Features,” “Pricing,” “Reviews,” or “Installation Steps.” Use <article> for self-contained content that could stand on its own outside the page, such as a blog post, news story, forum post, product review, or documentation entry. Use <aside> for complementary content related to the surrounding material, such as a pull quote, author bio, related links, glossary box, advertisement, or sidebar.
Rank #2
- Create websites using over 240 templates
- Modular website builder with over 1,000 design elements
- Web design software with over 130 photo filters
- Animation & effects
- 2 GB web storage & domain*
<section>: groups related content under a theme, typically with a heading.<article>: represents independent, reusable, or syndicated content.<aside>: contains supporting material that is not part of the main flow.
<footer>
The <footer> element provides closing or reference information for a page or section. A site-level footer often includes copyright text, legal links, contact details, social links, and secondary navigation. A footer inside an <article> might include tags, sharing links, author information, or links to previous and next entries. Like <header>, <footer> can appear mulle times when each instance belongs to a specific sectioning context.
Choosing Between section, article, div, and aside
Once you know the main semantic elements, the hardest choice is often between section, article, div, and aside. These elements can all wrap content, but they communicate different meanings to browsers, assistive technologies, search tools, and future developers. A good rule is to choose the element that describes the content’s role, not the one that gives you the easiest styling hook.
Use section for a themed part of a page
Use section when a group of content forms a distinct topic within the document and would make sense in the page outline. A section should usually have a heading, even if that heading is visually hidden for design reasons. Examples include “Features,” “Pricing,” “Customer Reviews,” “Installation Steps,” or “Frequently Asked Questions.” If you cannot give the area a meaningful heading, it may not need to be a section.
Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchWindows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallUse article for self-contained content
Use article when the content could stand on its own outside the current page. Blog posts, news stories, forum posts, product reviews, release s, and documentation entries are common examples. An article can contain its own header, headings, sections, and footer because it represents an independent unit. On a blog index, each post preview might be an article; on the full post page, the entire post is also typically an article.
Use aside for related but secondary content
Use aside for content that supports the surrounding content but is not part of its main flow. This can include a sidebar, author bio, related links, pull quote, glossary box, advertisement, or “related articles” panel. The content should still be relevant to the page or nearby section. If removing it would not break the main message, but it adds context or options, aside is often the right fit.
Use div when there is no semantic meaning
Use div as a neutral container for layout, styling, scripting, or grouping elements that do not form a meaningful section. For example, a wrapper used for a CSS grid, a card container needed for spacing, or a JavaScript target can be a div. Do not use div as the default for everything; use it when no semantic element accurately describes the content.
| Element | Best use | Typical clue |
|---|---|---|
section |
A themed group within a page | It deserves a heading in the document outline |
article |
Independent, reusable, or syndicateable content | It could be copied elsewhere and still make sense |
aside |
Secondary content related to the page or nearby content | It supports the main content but is not essential to it |
div |
Generic grouping for layout or behavior | It has no useful meaning beyond structure or styling |
When choosing, ask a few practical questions: does this block need a heading, could it stand alone, is it secondary to the main content, or is it only a layout wrapper? Those answers usually lead to the right element. Semantic sectioning is not about using the most specific tag possible every time; it is about making the structure honest, readable, and useful.
Rank #3
- Create websites using over 240 templates
- Modular website builder with over 1,000 design elements
- Integrated search engine optimization (SEO) tools
- GB web storage & domain*
- Web design – no programming experience required
Creating a Clear Heading Hierarchy
A clear heading hierarchy gives your page a readable outline. Headings are not just visual labels; they describe the structure of the content for browsers, search engines, screen readers, and people scanning the page. In a well-sectioned HTML document, each heading introduces the content that follows it, and the heading level shows how that content relates to nearby sections.
Use one <h1> for the main topic of the page, usually matching or closely describing the page title. After that, use <h2> elements for the major sections of the page, such as product details, pricing, reviews, or frequently asked questions. Use <h3> elements for subsections inside an <h2>, and continue with <h4>, <h5>, and <h6> only when the content genuinely needs deeper nesting.
Follow document structure, not font size
Choose heading levels based on meaning, not appearance. If a heading should look smaller, style it with CSS instead of skipping from <h2> to <h5>. Skipped levels make the document outline harder to understand, especially for assistive technology users who navigate by headings. A screen reader user may open a list of headings to jump through the page, so the levels should form a predictable map.
- Good: <h1> Page title, then <h2> main sections, then <h3> subsections.
- Avoid: using <h4> just because it looks visually appropriate after an <h1>.
- Good: writing headings that describe the section clearly, such as “Shipping options” instead of “More information.”
- Avoid: placing headings only for decoration when there is no related section content.
Sectioning elements such as <section>, <article>, <nav>, and <aside> often begin with a heading, because that heading names the purpose of the region. For example, a sidebar might use an <aside> with an <h2> called “Related articles,” while a navigation block might include a visually hidden heading such as “Primary navigation” if it helps clarify the page structure for assistive technologies.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Example hierarchy for a simple article page
| Element | Purpose |
|---|---|
| <h1> | The article title, such as “How to Choose a Running Shoe.” |
| <h2> | Main article sections, such as “Fit,” “Cushioning,” and “Durability.” |
| <h3> | Subsections within a main section, such as “Toe box width” under “Fit.” |
Before publishing, scan the headings without the surrounding body text. They should read like a compact table of contents. If the order feels confusing, if a heading is too vague, or if a subsection appears to be at the wrong level, adjust the markup before changing the styling. Strong heading structure makes the page easier to maintain as new sections are added, because every new block has an obvious place in the document outline.
Structuring a Typical Web Page
A typical HTML page works best when its major regions match the way people use the page: identify the site, navigate to a destination, read the main content, find related material, and reach supporting information. Semantic elements give each of those regions a clear role. Instead of wrapping everything in generic containers, use <header>, <nav>, <main>, <section>, <article>, <aside>, and <footer> where their meaning fits the content.
Most pages begin with a site-level <header>. This often contains the logo or site name, a short tagline, search, account links, and the primary <nav>. The navigation should contain actual navigation links, not every button or interactive control on the page. After the header, place the unique content of the page inside one <main> element. There should be only one visible main region per page because it represents the central content a visitor came to read or use.
Rank #4
- Build beautiful sites for any browser or device - Quickly create and publish web pages almost anywhere with web design software that supports HTML, CSS, JavaScript, and more
- Fast, flexible coding - Create, code, and manage dynamic websites easily with a smart, simplified coding engine. Access code hints to quickly learn and edit HTML, CSS, and other web standards. And use visual aids to reduce errors and speed up site development
- Existing subscribers must first complete current membership term before linking new subscription term
- Setup to site up in fewer steps - Get your sites up and running faster with starter templates that you can customize to build HTML emails, About pages, blogs, e-commerce pages, newsletters, and portfolios. Code coloring and visual hints help you read code more easily for quick edits and updates
- Dynamic display on every device - Build responsive websites that adapt to fit any screen size. Preview your sites and edits in real time to make sure your pages look and work the way you want before you publish
Common page structure
- Site header: branding, primary navigation, search, and other site-wide controls.
- Main content: the unique page content, such as a product page, article, dashboard, documentation page, or checkout flow.
- Sections inside main: grouped content with headings, such as overview, features, pricing, reviews, or frequently asked questions.
- Articles when content stands alone: blog posts, news stories, comments, cards, or product reviews that could be reused or syndicated independently.
- Aside content: related links, author bio, table of contents, promotions, filters, or supporting context that is not part of the primary reading flow.
- Footer: copyright, legal links, contact information, secondary navigation, and other closing site or section details.
For an article page, the <main> element might contain a single <article>. That article can have its own <header> for the title, subtitle, author, and publication date, followed by mulle <section> elements for the body. A related posts panel or newsletter signup can sit in an <aside>, either inside the article if it directly supports that article, or beside the main content if it supports the whole page. The page can end with a site-wide <footer>, while the article itself may also have a smaller footer for tags, sharing links, or author details.
For a marketing page, <main> often contains several sibling <section> elements: hero, benefits, product screenshots, testimonials, pricing, and frequently asked questions. Each section should have a meaningful heading, even if that heading is visually styled to look small or hidden for assistive technology. For a dashboard or application screen, <main> may contain sections for status cards, charts, recent activity, and task lists, while <nav> can be used for sidebar navigation or tabs that move between views.
Keep the structure readable before adding classes and layout styles. If removing CSS still leaves a document that reads in a sensible order, the sectioning is probably strong. Use <div> for layout wrappers, grid containers, or styling hooks only after the semantic regions are in place. This keeps the document easier to maintain, improves landmark navigation for assistive technologies, and gives future developers a clear map of the page.
Common Sectioning Mistakes to Avoid
Semantic HTML works best when each element describes the purpose of the content it wraps. Many sectioning problems come from using semantic elements as styling hooks, skipping headings, or creating a page outline that looks tidy in markup but feels confusing to users and assistive technologies. Before adding a new <section>, <article>, <aside>, or <nav>, ask what role that content plays in the document.
Using <section> as a generic wrapper
A common mistake is replacing every <div> with <section>. A <section> should group related content under a meaningful theme, and that theme is usually expressed with a heading. If the element exists only for layout, spacing, background color, or JavaScript targeting, use a <div> instead. For example, a product details area with a heading like “Specifications” can be a section; a flexbox container around two columns does not need to be one.
The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Skipping or misordering headings
Headings create a navigable structure, so avoid jumping from <h2> to <h5> because a smaller heading “looks better.” Choose heading levels based on nesting, then style them with CSS. A page should normally have one visible <h1> for the main topic, followed by <h2> elements for major sections and <h3> elements for subsections. Empty headings, repeated vague headings like “More,” and headings used only to enlarge text all make the document harder to scan.
- Do not use headings for visual emphasis: use CSS classes,
<strong>, or other appropriate markup instead. - Do not hide essential headings without care: visually hidden headings can help accessibility, but they should still describe real page structure.
- Do not create orphan subsections: if a subsection has no clear parent topic, the surrounding structure may need revision.
Overusing <nav>, <article>, and <aside>
Not every list of links belongs in <nav>. Reserve it for major navigation areas such as the primary menu, table of contents, pagination, or account navigation. Similarly, use <article> only for self-contained content that could stand on its own, such as a blog post, news story, review, or forum comment. Use <aside> for complementary content, not for anything that merely appears in a sidebar. A sidebar containing the article’s author bio, related links, or an advertisement may be an aside; the site’s main navigation placed in a sidebar is still navigation.
Best Value
- Build beautiful sites for any browser or device - Quickly create and publish web pages almost anywhere with web design software that supports HTML, CSS, JavaScript, and more
- Fast, flexible coding - Create, code, and manage dynamic websites easily with a smart, simplified coding engine. Aess code hints to quickly learn and edit HTML, CSS, and other web standards. And use visual aids to reduce errors and speed up site development
- Existing subscribers must first complete current membership term before linking new subscription term
- Setup to site up in fewer steps - Get your sites up and running faster with starter templates that you can customize to build HTML emails, About pages, blogs, e-commerce pages, newsletters, and portfolios. Code coloring and visual hints help you read code more easily for quick edits and updates
- Dynamic display on every device - Build responsive websites that adapt to fit any screen size. Preview your sites and edits in real time to make sure your pages look and work the way you want before you publish
Putting page-level elements in the wrong place
The <main> element should contain the unique primary content of the page, and there should be only one active <main> per page. Do not place repeated site headers, global navigation, cookie banners, or footers inside it. A <header> can belong to the whole page or to an individual article or section, but it should introduce nearby content. A <footer> can also be page-level or section-level, but it should contain closing information such as copyright, metadata, related links, or author details.
| Mistake | Better choice |
|---|---|
Using <section> for a layout container |
Use <div> when there is no thematic grouping or heading. |
Wrapping every link list in <nav> |
Use <nav> only for significant navigation blocks. |
| Choosing headings by visual size | Choose headings by document structure and style them with CSS. |
Clean sectioning is usually simple: mark up the main content first, add headings that describe each meaningful part, and use semantic elements only when their names match the content’s purpose. When in doubt, prefer plain, understandable structure over excessive nesting.
Quick wins for a faster PC:
Scan for outdated or missing drivers - takes under a minuteDriver Scan →Repair Windows errors before they cause bigger problemsFix Now →Frequently Asked Questions
Should every part of my page be wrapped in a section element?
No. Use <section> only when that part of the page represents a distinct thematic group of content, usually with its own heading. If you only need a wrapper for styling, layout, or scripting, use <div> instead.
What is the difference between section and article in HTML?
Use <article> for content that can stand on its own, such as a blog post, news story, product review, or forum comment. Use <section> for a grouped part of a larger page, such as “Features,” “Pricing,” or “Installation Steps.” An article can contain sections, and a section can contain mulle articles when that matches the content structure.
Can I have more than one header or footer on a page?
Yes. A page can have a main <header> and <footer>, and individual <article> or <section> elements can also have their own headers and footers. For example, a blog post might have its own header with the title and author, while the overall site header contains the logo and navigation.
Do heading levels need to follow the visual size of the text?
No. Heading levels should describe the document structure, not the font size. Start with one main <h1> for the page topic, then use <h2> for major sections and <h3> for subsections. Use CSS to change how headings look instead of choosing heading levels for appearance.
Recommended Free Tools
Where should nav, main, and aside go in a typical page layout?
Place <nav> around major navigation links, such as the primary menu, table of contents, or pagination. Use one main <main> element for the central content of the page, excluding repeated site headers, sidebars, and footers. Use <aside> for related but secondary content, such as author bios, related links, ads, or callout boxes.
Bottom Line
Good HTML sectioning is about giving your content a clear, meaningful structure. Use elements like header, nav, main, section, article, aside, and footer to describe what each part of the page does, not just how it looks.
As a next step, review one of your existing pages and check whether each major area has the right semantic element, a sensible heading structure, and accessible navigation landmarks. Small improvements here can make your site easier for people, browsers, and assistive technologies to understand.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

