diff --git a/packages/documentation-site/patternfly-docs/content/accessibility/page/page.md b/packages/documentation-site/patternfly-docs/content/accessibility/page/page.md index 1577423bfe..74d2efa5c9 100644 --- a/packages/documentation-site/patternfly-docs/content/accessibility/page/page.md +++ b/packages/documentation-site/patternfly-docs/content/accessibility/page/page.md @@ -3,30 +3,76 @@ id: Page section: components --- -The **page** component is used to define the basic layout of a page with either vertical or horizontal navigation. Page layouts are defined using page sections, such as the header, body, and footer of a page. The basic layout of a page depends on whether your page uses vertical or horizontal navigation. +import { Checkbox, List, ListItem } from '@patternfly/react-core'; -A page can be combined with many other components, so to create an accessible page, refer to the accessibility recommendations for each component. +## Accessibility -**Keyboard users** should be able to navigate through the masthead of the page and into other interactive elements of the page using **Tab** and **Shift + Tab** to move forward and backward through interactive elements. +To implement an accessible PatternFly **page**: -**Screen reader users** should be able to navigate through and interact with the masthead of the page using the same interactions as keyboard users. Elements of a page that do not have visible descriptive text, such as toggle icons, should have alternative text for screen readers. +- Provide a [skip to content](/components/skip-to-content) if more than one page shares the same heading or sidebar content. +- Give each `nav` element a unique `aria-label` if there is more than one `nav` element on the page. +- Ensure there is only 1 `main` element on the page. +- Follow any accessibility documentation for other components used within a page, such as a [breadcrumb](/components/breadcrumb), [notification drawer](/components/notification-drawer), or [navigation](/components/navigation). -Consider using a **skip to content** component on your page so that assistive technology users don’t need to make their way through the entire navigation menu each time they go to another page. +## Testing -## To make a page accessible: -- Use semantic elements when possible, as these will have default roles. If this is not possible, manually add roles to identify different regions of the page as needed. -- If there are multiple instances of one type of semantic element (for instance, two `