2.3 Progressive Enhancement
Our goal is for a site’s markup to work without CSS or JavaScript enabled. In today’s world of most devices and browsers working with JavaScript being present, this seems to be less a reality, but nevertheless a goal. The more a site works with just markup, the better. This baseline experience should provide access to all content and core functionality, even if the presentation is basic. CSS and JavaScript should enhance this foundation rather than being required for basic operation.
Skip links should be included on every page to allow keyboard users to bypass navigation and jump directly to main content. These links can be visually hidden but must be accessible to screen readers and become visible when focused.
1
2
3
4
5
6
7
8
9
10
11
<a class="skip-link screen-reader-text" href="#main">Skip to main content</a>
<header role="banner">
<nav role="navigation" aria-label="Primary Navigation">
<!-- Navigation markup -->
</nav>
</header>
<main role="main" id="main">
<!-- Main content area -->
</main>