How to fix landmark one main on Squarespace
Add a single `<main>` landmark element (or `role="main"`) to every page so that screen-reader users and assistive technologies can skip directly to the primary content.
Steps for Squarespace
- Squarespace 7.1 templates already wrap page content in a `<main>` element in most themes — verify by running axe DevTools on your live site first.
- If the landmark is missing, go to Pages → select the page → click the gear icon → Advanced → and in the 'Page Header Code Injection' or 'Code Injection' (Settings → Advanced → Code Injection) add a `<style>` note that Squarespace does not allow direct HTML template editing.
- As a workaround, use a Code Block (Insert Point → +) at the very top of page content and insert `<a href="#main-content" class="skip-link" style="position:absolute;left:-9999px;">Skip to main content</a>` plus `<span id="main-content"></span>`.
- For deeper template changes, switch to Developer Mode (Settings → Advanced → Developer Mode) and edit `base.region` or the relevant `.region` file to wrap content in `<main id="main-content">`.
- Re-publish and re-test with axe DevTools.
<main id="main-content" role="main">
<!-- All unique page content goes here -->
</main>
<!-- Skip link (add just after <body> opens): -->
<a href="#main-content" class="skip-link">Skip to main content</a>
<style>
.skip-link {
position: absolute;
left: -9999px;
top: auto;
width: 1px;
height: 1px;
overflow: hidden;
}
.skip-link:focus {
position: static;
width: auto;
height: auto;
}
</style>What is landmark one main?
Every web page should have one clearly marked "main content" region — the part of the page that is unique to that page, as opposed to the header, navigation, and footer that repeat everywhere. In HTML this is done with the `<main>` element (or by adding `role="main"` to a wrapper `<div>`). This marker is called a **landmark**. Screen readers and keyboard-only users rely on landmarks to jump around the page without having to tab through every single link and menu item first. The `landmark-one-main` rule fails when a page has zero `<main>` elements, or when it has more than one.
Without a main landmark, visually impaired shoppers using a screen reader (NVDA, JAWS, VoiceOver) cannot use the "skip to main content" shortcut — they are forced to listen to every navigation link on every page before reaching your products or checkout. This is a WCAG 2.1 Level A failure (Success Criterion 1.3.6 / ARIA Landmark Regions), meaning it carries legal accessibility risk in jurisdictions with web-accessibility laws (ADA, EN 301 549, EAA). Beyond compliance, a poor experience for assistive-technology users directly hurts conversions and brand trust. Fixing it is typically a one-line HTML change.
See the complete Landmark one main guide for every platform and the full background.
Not sure if your Squarespace store has this?
Run a free SEOLZ audit — we’ll find landmark one main and every other issue across your whole site.
Scan my site free