Sheet component uses the native dialog element to provide a modal dialog which comes with browser-specific
behavior. As a result, accessibility features may vary across different browsers.Tab, Shift-TabESCfocus on trigger elementaria property:aria-labelroledialog or alertdialog).aria-label="STRING"aria property is provided, uses the contents of the header slot and falls back to a fixed name.aria-haspopup on the trigger so users know a dialog will open. Ensure the sheet has a meaningful title via the
header slot or aria property.aria-haspopup through the trigger component aria prop when opening the sheet.aria property.<p-button aria-haspopup="dialog">
Filter results
</p-button><p-button aria="{'aria-haspopup': 'dialog'}">
Filter results
</p-button><p-sheet aria-label="Filters">
...
</p-sheet><p-sheet>
<p-heading slot="header" tag="h2" size="lg">
Filter results
</p-heading>
...
</p-sheet>
<!-- or with aria prop when no visible header is shown -->
<p-sheet aria="{'aria-label': 'Filter results'}">
...
</p-sheet><p-button>
Open
</p-button>
<p-sheet>
<p-heading slot="header" tag="h2" size="lg">
Filters
</p-heading>
...
</p-sheet><p-button aria="{'aria-haspopup': 'dialog'}">
Filter results
</p-button>
<p-sheet>
<p-heading slot="header" tag="h2" size="lg">
Filter results
</p-heading>
...
</p-sheet>