WCAGdesk
axe-core: region · WCAG 1.3.1 Info and Relationships · Level A

How to fix the “region” accessibility issue

The axe-core region rule flags page content that is not contained inside a landmark (such as <main>, <nav>, <header>, <footer>). Landmarks let screen-reader users jump between page regions. Relates to WCAG 2.2 1.3.1 (Level A).

What axe-core checks

axe-core fails when significant content (not just whitespace) lives outside any landmark region. Wrapping everything in <div>s triggers it.

Which standard this maps to

WCAG 2.21.3.1 Info and Relationships (Level A)
EN 301 5499.1.3.1
BFSG / EAABFSG § 12 via EN 301 549 · EAA Annex I
CategoryStructure & Landmarks

Why it matters

Landmarks are how screen-reader users navigate a page at a glance — “go to main”, “go to navigation”. A shop built entirely from <div>s gives them no map, forcing a slow linear read of every header on every page.

Common causes

  • The whole page built from <div> with no semantic landmarks
  • Main content not wrapped in <main>
  • Navigation in a <div> instead of <nav>
  • Content placed between, but outside, landmark elements

How to fix it

Use HTML landmark elements: <header>, <nav>, <main>, <footer>. Every meaningful block should sit inside one.

<!-- Fails -->
<div class="content">Products…</div>

<!-- Passes -->
<main><h1>Products</h1>…</main>

FAQ

How many <main> per page?

Exactly one visible <main>. Use <nav>, <aside> and sections for the rest.

Do I need ARIA roles?

No — native <header>, <nav>, <main>, <footer> already expose the right landmark roles. Prefer them over role attributes.

Find every issue like this on your site

Run a free WCAG 2.2 AA scan — real axe-core engine, no signup. Or get a timestamped evidence report for €29.