Robust
Accessibility Tree
The parallel DOM that assistive technology reads. If an element isn't in the accessibility tree, it doesn't exist for screen reader users. Inspect via DevTools → Accessibility tab.
In plain terms
The behind-the-scenes version of your page that screen readers actually read. If something isn't in it, blind users can't reach it.
DOM vs. Accessibility Tree
<nav>
<a
href="/">Home</a>
<div
class="btn"
onclick="toggle()">Menu</div>
</nav>
Semantic elements get proper roles. Divs with handlers don't.
Why this matters
The accessibility tree is precisely what a screen reader conveys to the user. Anything missing from it — a control hidden by display tricks, an unlabeled element — simply doesn't exist for them.
How to detect
Quick check
Open DevTools → Accessibility and inspect key controls. Do they appear with the right role, name, and state? Elements with no accessible name, or the wrong role, are the red flags.