Accessibility

HoverCraft uses practical accessibility patterns that fit its classic WordPress theme architecture, with an emphasis on native HTML markup, predictable keyboard behavior, visible focus states, and small amounts of JavaScript where interactive controls require it.

Interactive theme controls use appropriate native elements instead of relying on clickable containers or placeholder links. Buttons are used for actions such as opening menus, closing overlays, and toggling interface elements, while normal links remain focused on navigation. Decorative icons are hidden from assistive technologies when appropriate, with the accessible name provided by the surrounding control.

HoverCraft includes a Skip to content link near the beginning of the page that targets the main content area. The link remains unobtrusive during normal browsing but becomes visible when reached by keyboard focus, allowing keyboard and assistive-technology users to bypass repeated header navigation.

Keyboard focus is kept visible across links, buttons, form controls, menus, and other interactive elements. Desktop dropdown navigation responds to keyboard focus as well as pointer interaction, updates expanded-state information as submenus open and close, and allows open dropdowns to be dismissed with the Escape key.

HoverCraft's full-screen search interface and mobile overlay menus use dialog-style accessibility semantics. Their visible state is synchronized with attributes such as aria-hidden and aria-expanded, while hidden mobile panels are removed from normal interaction until opened. When these interfaces open, focus moves into the active panel; when they close, focus returns to the control that opened them.

Overlay and offcanvas mobile menus can also be dismissed with the Escape key, while the offcanvas layout supports closing from its backdrop. Body scrolling is temporarily disabled while these interfaces are open so the page behind them does not continue moving independently of the active menu.

HoverCraft deliberately keeps these behaviors small and auditable rather than adding a large accessibility framework. Accessibility improvements are implemented through the theme's normal PHP templates, semantic markup, focused JavaScript, and shared CSS, so accessibility behavior remains part of the theme itself rather than a separate frontend layer.

Related Documentation