fix(web): drop nested <main> on manifesto (WCAG 1.3.1)
LocalizedPageShell at app/_components/localized-page-shell.tsx:34
already renders <main className='flex-1'>{children}</main> as the
page landmark. The manifesto/page.tsx shell was wrapping that with
its own <main>, producing nested main landmarks (axe-core:
landmark-no-duplicate-main + landmark-main-is-top-level).
Switch outer wrapper to <div>; keep styling (bg-background,
text-foreground, min-h-screen, overflow-x-hidden) intact. The
inner <main> from the shell remains the canonical landmark.
Pre-existing on origin/dev (the pre-decomposition manifesto/page.tsx
also had a top-level <main>), surfaced by PR #4202 hands-on QA
via axe-core run on /ko/manifesto.
This commit is contained in:
@@ -12,7 +12,7 @@ import { Separator } from "@/components/ui/separator"
|
|||||||
|
|
||||||
export default async function ManifestoPage(): Promise<JSX.Element> {
|
export default async function ManifestoPage(): Promise<JSX.Element> {
|
||||||
return (
|
return (
|
||||||
<main className="bg-background text-foreground min-h-screen overflow-x-hidden">
|
<div className="bg-background text-foreground min-h-screen overflow-x-hidden">
|
||||||
<HeroSection />
|
<HeroSection />
|
||||||
<PainPointsSection />
|
<PainPointsSection />
|
||||||
<Separator className="mx-auto max-w-4xl opacity-20" />
|
<Separator className="mx-auto max-w-4xl opacity-20" />
|
||||||
@@ -24,6 +24,6 @@ export default async function ManifestoPage(): Promise<JSX.Element> {
|
|||||||
<CoreLoopSection />
|
<CoreLoopSection />
|
||||||
<FutureSection />
|
<FutureSection />
|
||||||
<FinalCtaSection />
|
<FinalCtaSection />
|
||||||
</main>
|
</div>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user