DocsEvidence

DropdownMenu

Generated 2026-08-24T04:33:37.619Z from revision f7b9fe417e26d20639252ef4b6b6ad3ed83e463b. Result: 375/375 passed; 0 recorded failures.

Shared contract: packages/ui-headless/browser-contract/dropdown-menu.contract.ts

Test matrix

Adapter
Engine
Tests
Passed
Failed
react
chromium
25
25
0
react
firefox
25
25
0
react
webkit
25
25
0
vue
chromium
25
25
0
vue
firefox
25
25
0
vue
webkit
25
25
0
solid
chromium
25
25
0
solid
firefox
25
25
0
solid
webkit
25
25
0
svelte
chromium
25
25
0
svelte
firefox
25
25
0
svelte
webkit
25
25
0
angular
chromium
25
25
0
angular
firefox
25
25
0
Adapter
react
Engine
chromium
Tests
25
Passed
25
Failed
0
Adapter
react
Engine
firefox
Tests
25
Passed
25
Failed
0
Adapter
react
Engine
webkit
Tests
25
Passed
25
Failed
0
Adapter
vue
Engine
chromium
Tests
25
Passed
25
Failed
0
Adapter
vue
Engine
firefox
Tests
25
Passed
25
Failed
0
Adapter
vue
Engine
webkit
Tests
25
Passed
25
Failed
0
Adapter
solid
Engine
chromium
Tests
25
Passed
25
Failed
0
Adapter
solid
Engine
firefox
Tests
25
Passed
25
Failed
0
Adapter
solid
Engine
webkit
Tests
25
Passed
25
Failed
0
Adapter
svelte
Engine
chromium
Tests
25
Passed
25
Failed
0
Adapter
svelte
Engine
firefox
Tests
25
Passed
25
Failed
0
Adapter
svelte
Engine
webkit
Tests
25
Passed
25
Failed
0
Adapter
angular
Engine
chromium
Tests
25
Passed
25
Failed
0
Adapter
angular
Engine
firefox
Tests
25
Passed
25
Failed
0
Adapter
angular
Engine
webkit
Tests
25
Passed
25
Failed
0

Axe accessibility scans

Adapter
Engine
Test
Status
react
chromium
no violations while closed
passed
react
chromium
no violations while open
passed
react
firefox
no violations while closed
passed
react
firefox
no violations while open
passed
react
webkit
no violations while closed
passed
react
webkit
no violations while open
passed
vue
chromium
no violations while closed
passed
vue
chromium
no violations while open
passed
vue
firefox
no violations while closed
passed
vue
firefox
no violations while open
passed
vue
webkit
no violations while closed
passed
vue
webkit
no violations while open
passed
solid
chromium
no violations while closed
passed
solid
chromium
no violations while open
passed
Adapter
react
Engine
chromium
Test
no violations while closed
Status
passed
Adapter
react
Engine
chromium
Test
no violations while open
Status
passed
Adapter
react
Engine
firefox
Test
no violations while closed
Status
passed
Adapter
react
Engine
firefox
Test
no violations while open
Status
passed
Adapter
react
Engine
webkit
Test
no violations while closed
Status
passed
Adapter
react
Engine
webkit
Test
no violations while open
Status
passed
Adapter
vue
Engine
chromium
Test
no violations while closed
Status
passed
Adapter
vue
Engine
chromium
Test
no violations while open
Status
passed
Adapter
vue
Engine
firefox
Test
no violations while closed
Status
passed
Adapter
vue
Engine
firefox
Test
no violations while open
Status
passed
Adapter
vue
Engine
webkit
Test
no violations while closed
Status
passed
Adapter
vue
Engine
webkit
Test
no violations while open
Status
passed
Adapter
solid
Engine
chromium
Test
no violations while closed
Status
passed
Adapter
solid
Engine
chromium
Test
no violations while open
Status
passed
Adapter
solid
Engine
firefox
Test
no violations while closed
Status
passed
Adapter
solid
Engine
firefox
Test
no violations while open
Status
passed
Adapter
solid
Engine
webkit
Test
no violations while closed
Status
passed
Adapter
solid
Engine
webkit
Test
no violations while open
Status
passed
Adapter
svelte
Engine
chromium
Test
no violations while closed
Status
passed
Adapter
svelte
Engine
chromium
Test
no violations while open
Status
passed
Adapter
svelte
Engine
firefox
Test
no violations while closed
Status
passed
Adapter
svelte
Engine
firefox
Test
no violations while open
Status
passed
Adapter
svelte
Engine
webkit
Test
no violations while closed
Status
passed
Adapter
svelte
Engine
webkit
Test
no violations while open
Status
passed
Adapter
angular
Engine
chromium
Test
no violations while closed
Status
passed
Adapter
angular
Engine
chromium
Test
no violations while open
Status
passed
Adapter
angular
Engine
firefox
Test
no violations while closed
Status
passed
Adapter
angular
Engine
firefox
Test
no violations while open
Status
passed
Adapter
angular
Engine
webkit
Test
no violations while closed
Status
passed
Adapter
angular
Engine
webkit
Test
no violations while open
Status
passed

Screen readers

  • voiceOverSafari: pending-manual — VoiceOver + Safari manual pass has not yet been run; automated axe coverage under WebKit is not a substitute for a manual screen-reader pass.
  • nvda: parked-by-decision — NVDA evidence is parked by explicit decision and remains a declared accessibility gap.

Known gaps

  • Svelte adapter element replacement deferred (same stance as Select)
  • NVDA untested (parked)
  • VoiceOver manual pass pending
  • Submenu parts (SubTrigger/SubContent) deferred until ContextMenu/Menubar need them — recorded as a known gap in the spec's anatomy note
  • Touch remains unaddressed (legacy stance, recorded as a known gap, same posture as Tooltip)