Filter Questions

Displaying 190 Elements

What is Web Accessibility (A11y)?

Beginner

Web accessibility (often abbreviated as A11y) means that websites, tools, and technologies are designed and developed so that people with disabilities...

Accessibility Insight

Web accessibility (often abbreviated as A11y) means that websites, tools, and technologies are designed and developed so that people with disabilities can use them. Specifically, people can perceive, understand, navigate, and interact with the Web, and they can contribute to the Web.

Topic: WCAG

What is WCAG?

Beginner

WCAG stands for Web Content Accessibility Guidelines. It is a set of guidelines for making web content more accessible, primarily for people with disa...

Accessibility Insight

WCAG stands for Web Content Accessibility Guidelines. It is a set of guidelines for making web content more accessible, primarily for people with disabilities, but also for all user agents, including highly limited devices, such as mobile phones.

Topic: WCAG

What are the four principles of WCAG (POUR)?

Beginner

POUR stands for: 1. Perceivable (users must be able to perceive the info), 2. Operable (users must be able to operate the interface), 3. Understandabl...

Accessibility Insight

POUR stands for: 1. Perceivable (users must be able to perceive the info), 2. Operable (users must be able to operate the interface), 3. Understandable (info and operation must be understandable), 4. Robust (content must be robust enough to be interpreted by a wide variety of user agents).

Topic: WCAG

Explain WCAG Conformance Levels (A, AA, AAA).

Experience

Level A is the minimum level of accessibility (basic features). Level AA is the mid-range and the most commonly used standard for most websites (e.g.,...

Accessibility Insight

Level A is the minimum level of accessibility (basic features). Level AA is the mid-range and the most commonly used standard for most websites (e.g., for legal compliance). Level AAA is the highest and most stringent level of accessibility, often required for specialized sites catering specifically to people with disabilities.

Topic: WCAG

What is Section 508?

Experience

Section 508 is a US federal law that requires federal agencies to make their electronic and information technology accessible to people with disabilit...

Accessibility Insight

Section 508 is a US federal law that requires federal agencies to make their electronic and information technology accessible to people with disabilities. It is often aligned with WCAG 2.0/2.1 AA standards.

Topic: WCAG

What is the European Accessibility Act (EAA)?

Experience

The EAA is a European directive that sets common accessibility requirements for certain key products and services in the EU market, including websites...

Accessibility Insight

The EAA is a European directive that sets common accessibility requirements for certain key products and services in the EU market, including websites and mobile apps of private companies like banks and e-commerce.

Topic: WCAG

Difference between WCAG 2.1 and 2.2?

Advanced

WCAG 2.2 builds on 2.1 by adding new success criteria, primarily focused on users with cognitive or learning disabilities, users with low vision on mo...

Accessibility Insight

WCAG 2.2 builds on 2.1 by adding new success criteria, primarily focused on users with cognitive or learning disabilities, users with low vision on mobile devices, and users with disabilities on touch devices (e.g., focus appearance, dragging movements).

Topic: WCAG

What is the 'Alt text' requirement for images?

Beginner

Every non-decorative image must have a concise alt attribute that describes its content or function. Decorative images should have an empty alt attrib...

Accessibility Insight

Every non-decorative image must have a concise alt attribute that describes its content or function. Decorative images should have an empty alt attribute (alt="") so they are ignored by screen readers.

Topic: WCAG

What is an 'Accessibility Tree'?

Experience

The accessibility tree is a specialized version of the DOM tree that browsers create for assistive technologies. It filters out non-essential info and...

Accessibility Insight

The accessibility tree is a specialized version of the DOM tree that browsers create for assistive technologies. It filters out non-essential info and formats the rest in a way that screen readers can understand (Name, Role, State, Value).

Topic: WCAG

Explain 'Color Contrast' requirements.

Beginner

For WCAG AA, normal text should have a contrast ratio of at least 4.5:1 against its background. Large text (18pt or 14pt bold) should have at least 3:...

Accessibility Insight

For WCAG AA, normal text should have a contrast ratio of at least 4.5:1 against its background. Large text (18pt or 14pt bold) should have at least 3:1. AAA requires 7:1 for normal text.

Topic: WCAG

What is 'Meaningful Sequence'?

Experience

It ensures that the reading order (the order in which content is presented in the DOM) matches the logical meaning of the content, which is critical f...

Accessibility Insight

It ensures that the reading order (the order in which content is presented in the DOM) matches the logical meaning of the content, which is critical for screen reader users and users with cognitive disabilities.

Topic: WCAG

What is 'Focus Order'?

Beginner

If a webpage can be navigated sequentially, the focusable components must receive focus in an order that preserves meaning and operability. Usually, t...

Accessibility Insight

If a webpage can be navigated sequentially, the focusable components must receive focus in an order that preserves meaning and operability. Usually, this means following the DOM order.

Topic: WCAG

Explain 'Text Alternatives' success criterion.

Beginner

Requires that all non-text content (images, videos, audio) has a text alternative that serves the equivalent purpose.

Accessibility Insight

Requires that all non-text content (images, videos, audio) has a text alternative that serves the equivalent purpose.

Topic: WCAG

What is 'Skip to Content' link?

Experience

A link at the very beginning of the page (often hidden until focused) that allows keyboard users to bypass repetitive navigation and go straight to th...

Accessibility Insight

A link at the very beginning of the page (often hidden until focused) that allows keyboard users to bypass repetitive navigation and go straight to the main content area.

Topic: WCAG

What is 'Bypass Blocks'?

Experience

The WCAG requirement (2.4.1) that provides a mechanism to bypass blocks of content that are repeated on multiple Web pages (like navbars).

Accessibility Insight

The WCAG requirement (2.4.1) that provides a mechanism to bypass blocks of content that are repeated on multiple Web pages (like navbars).

Topic: WCAG

Explain 'Info and Relationships'.

Advanced

Criterion 1.3.1 requires that information, structure, and relationships conveyed through presentation can be programmatically determined or are availa...

Accessibility Insight

Criterion 1.3.1 requires that information, structure, and relationships conveyed through presentation can be programmatically determined or are available in text (e.g., using proper <h1>-<h6> tags, <caption> for tables, <label> for inputs).

Topic: WCAG

What is 'Sensory Characteristics'?

Experience

Content should not rely solely on sensory characteristics like shape, color, size, or sound to convey instructions (e.g., don't say 'Click the big red...

Accessibility Insight

Content should not rely solely on sensory characteristics like shape, color, size, or sound to convey instructions (e.g., don't say 'Click the big red button' to find the submit).

Topic: WCAG

What is 'Use of Color' (1.4.1)?

Beginner

Color should not be the *only* visual means of conveying information, indicating an action, prompting a response, or distinguishing a visual element (...

Accessibility Insight

Color should not be the *only* visual means of conveying information, indicating an action, prompting a response, or distinguishing a visual element (e.g., use an icon or text alongside red for error states).

Topic: WCAG

Explain 'Audio Control'.

Beginner

If any audio on a Web page plays automatically for more than 3 seconds, a mechanism must be available to pause or stop the audio, or to control the vo...

Accessibility Insight

If any audio on a Web page plays automatically for more than 3 seconds, a mechanism must be available to pause or stop the audio, or to control the volume independently from the system.

Topic: WCAG

What is 'Captions (Prerecorded)'?

Beginner

Captions are provided for all prerecorded audio content in synchronized media (like videos), except when the media is a media alternative for text.

Accessibility Insight

Captions are provided for all prerecorded audio content in synchronized media (like videos), except when the media is a media alternative for text.

Topic: WCAG

What is 'Audio Description (Prerecorded)'?

Experience

An additional narration track for people who are blind or low-vision, describing important visual details that aren't conveyed in the main dialogue (e...

Accessibility Insight

An additional narration track for people who are blind or low-vision, describing important visual details that aren't conveyed in the main dialogue (e.g., character movements, facial expressions).

Topic: WCAG

Explain 'Keyboard' (2.1.1).

Beginner

All functionality of the content must be operable through a keyboard interface without requiring specific timings for individual keystrokes.

Accessibility Insight

All functionality of the content must be operable through a keyboard interface without requiring specific timings for individual keystrokes.

Topic: WCAG

What is 'No Keyboard Trap'?

Beginner

If focus can be moved to a component of the page using a keyboard interface, then focus must also be able to be moved away from that component using o...

Accessibility Insight

If focus can be moved to a component of the page using a keyboard interface, then focus must also be able to be moved away from that component using only a keyboard interface.

Topic: WCAG

Explain 'Timing Adjustable'.

Experience

For any time limit set by the content (like session timeouts), the user must be able to turn off, adjust, or extend the limit before it expires.

Accessibility Insight

For any time limit set by the content (like session timeouts), the user must be able to turn off, adjust, or extend the limit before it expires.

Topic: WCAG

What is 'Pause, Stop, Hide'?

Beginner

For moving, blinking, scrolling, or auto-updating information (like carousels or stock tickers), the user must be given a mechanism to pause, stop, or...

Accessibility Insight

For moving, blinking, scrolling, or auto-updating information (like carousels or stock tickers), the user must be given a mechanism to pause, stop, or hide it.

Topic: WCAG

Explain 'Three Flashes or Below Threshold'.

Advanced

Web pages do not contain anything that flashes more than three times in any one-second period, as this can trigger seizures in people with photosensit...

Accessibility Insight

Web pages do not contain anything that flashes more than three times in any one-second period, as this can trigger seizures in people with photosensitive epilepsy.

Topic: WCAG

What is 'Page Titled'?

Beginner

Web pages must have titles that describe topic or purpose. This is the first thing a screen reader announces when a page loads.

Accessibility Insight

Web pages must have titles that describe topic or purpose. This is the first thing a screen reader announces when a page loads.

Topic: WCAG

What is 'Link Purpose (In Context)'?

Beginner

The purpose of each link can be determined from the link text alone or from the link text together with its programmatically determined link context (...

Accessibility Insight

The purpose of each link can be determined from the link text alone or from the link text together with its programmatically determined link context (avoid generic 'click here').

Topic: WCAG

Explain 'Multiple Ways'.

Experience

More than one way is available to locate a Web page within a set of Web pages, except where the Web Page is the result of, or a step in, a process (e....

Accessibility Insight

More than one way is available to locate a Web page within a set of Web pages, except where the Web Page is the result of, or a step in, a process (e.g., search + site map + nav menu).

Topic: WCAG

What is 'Headings and Labels' (2.4.6)?

Beginner

Headings (<h1>-<h6>) and labels properly describe their topic or purpose.

Accessibility Insight

Headings (<h1>-<h6>) and labels properly describe their topic or purpose.

Topic: WCAG

Explain 'Focus Visible'.

Beginner

Any keyboard-operable user interface must have a mode of operation where the keyboard focus indicator is visible. Never use 'outline: none' without pr...

Accessibility Insight

Any keyboard-operable user interface must have a mode of operation where the keyboard focus indicator is visible. Never use 'outline: none' without providing a custom focus style.

Topic: WCAG

What is 'Language of Page'?

Beginner

The default human language of each Web page can be programmatically determined (using the lang attribute on the <html> tag).

Accessibility Insight

The default human language of each Web page can be programmatically determined (using the lang attribute on the <html> tag).

Topic: WCAG

Explain 'Language of Parts'.

Experience

If a specific block of text is in a different language than the rest of the page, it should have its own lang attribute so screen readers use the corr...

Accessibility Insight

If a specific block of text is in a different language than the rest of the page, it should have its own lang attribute so screen readers use the correct pronunciation.

Topic: WCAG

What is 'On Focus' (3.2.1)?

Beginner

When any component receives focus, it does not result in a change of context (like automatically submitting a form or opening a new window).

Accessibility Insight

When any component receives focus, it does not result in a change of context (like automatically submitting a form or opening a new window).

Topic: WCAG

Explain 'On Input' (3.2.2).

Beginner

Changing the setting of any user interface component (like checking a box or selecting from a dropdown) does not automatically cause a change of conte...

Accessibility Insight

Changing the setting of any user interface component (like checking a box or selecting from a dropdown) does not automatically cause a change of context unless the user has been advised before use.

Topic: WCAG

What is 'Consistent Navigation'?

Experience

Navigational mechanisms that are repeated on multiple Web pages within a set of Web pages occur in the same relative order each time they are repeated...

Accessibility Insight

Navigational mechanisms that are repeated on multiple Web pages within a set of Web pages occur in the same relative order each time they are repeated.

Topic: WCAG

Explain 'Error Identification'.

Beginner

If an input error is automatically detected, the item that is in error is identified and the error is described to the user in text.

Accessibility Insight

If an input error is automatically detected, the item that is in error is identified and the error is described to the user in text.

Topic: WCAG

What is 'Error Suggestion'?

Experience

If an input error is detected and suggestions for correction are known, then the suggestions are provided to the user, unless it would jeopardize secu...

Accessibility Insight

If an input error is detected and suggestions for correction are known, then the suggestions are provided to the user, unless it would jeopardize security.

Topic: WCAG

Explain 'Parsing' (4.1.1).

Advanced

In content implemented using markup languages, elements have complete start and end tags, elements are nested according to their specifications, eleme...

Accessibility Insight

In content implemented using markup languages, elements have complete start and end tags, elements are nested according to their specifications, elements do not contain duplicate attributes, and any IDs are unique (this was deprecated in WCAG 2.2 as browsers handle this well now).

Topic: WCAG

What is 'Name, Role, Value'?

Advanced

The core requirement for custom UI components. For all UI components, the name and role can be programmatically determined; states, properties, and va...

Accessibility Insight

The core requirement for custom UI components. For all UI components, the name and role can be programmatically determined; states, properties, and values that can be set by the user can be programmatically determined.

Topic: WCAG

Why is Semantic HTML important for A11y?

Beginner

Semantic HTML provides built-in accessibility. It automatically gives elements the correct roles, states, and keyboard behaviors in the accessibility ...

Accessibility Insight

Semantic HTML provides built-in accessibility. It automatically gives elements the correct roles, states, and keyboard behaviors in the accessibility tree, which non-semantic <div> and <span> tags do not.

Topic: SEMANTICS

What is the '<main>' tag?

Beginner

Represents the dominant content of the <body>. There should only be one non-hidden <main> per document. It is a landmark region for screen readers.

Accessibility Insight

Represents the dominant content of the <body>. There should only be one non-hidden <main> per document. It is a landmark region for screen readers.

Topic: SEMANTICS

What is the '<nav>' tag?

Beginner

Represents a section of a page that links to other pages or to parts within the page; a section with navigation links.

Accessibility Insight

Represents a section of a page that links to other pages or to parts within the page; a section with navigation links.

Topic: SEMANTICS

What is the '<header>' tag?

Beginner

Represents introductory content, typically a group of introductory or navigational aids. It may contain some heading elements but also a logo, a searc...

Accessibility Insight

Represents introductory content, typically a group of introductory or navigational aids. It may contain some heading elements but also a logo, a search form, an author name, etc.

Topic: SEMANTICS

What is the '<footer>' tag?

Beginner

Represents a footer for its nearest sectioning content. A footer typically contains information about the author, copyright data or links to related d...

Accessibility Insight

Represents a footer for its nearest sectioning content. A footer typically contains information about the author, copyright data or links to related documents.

Topic: SEMANTICS

Difference between '<article>' and '<section>'?

Experience

<article> is for self-contained content that could be distributed independently (like a blog post). <section> is for a thematic grouping of content, t...

Accessibility Insight

<article> is for self-contained content that could be distributed independently (like a blog post). <section> is for a thematic grouping of content, typically with a heading.

Topic: SEMANTICS

What is the '<aside>' tag?

Beginner

Represents a portion of a document whose content is only indirectly related to the document's main content (like sidebars or pull quotes).

Accessibility Insight

Represents a portion of a document whose content is only indirectly related to the document's main content (like sidebars or pull quotes).

Topic: SEMANTICS

How to use Heading levels (H1-H6) correctly?

Beginner

Headings should reflect the structure of the document, not the visual size. Don't skip levels (e.g., from H1 to H3). There should typically be only on...

Accessibility Insight

Headings should reflect the structure of the document, not the visual size. Don't skip levels (e.g., from H1 to H3). There should typically be only one H1 per page.

Topic: SEMANTICS

What is the '<button>' vs '<a>' debate in A11y?

Beginner

Use <button> for actions that happen on the current page (e.g., opening a modal, submitting a form). Use <a> for navigation that changes the URL or lo...

Accessibility Insight

Use <button> for actions that happen on the current page (e.g., opening a modal, submitting a form). Use <a> for navigation that changes the URL or location on the page.

Topic: SEMANTICS

What is the '<label>' tag?

Beginner

Provides a label for a form control. It's bridged to the input via the 'for' attribute (matching the input's 'id'). Clicking the label also focuses th...

Accessibility Insight

Provides a label for a form control. It's bridged to the input via the 'for' attribute (matching the input's 'id'). Clicking the label also focuses the input.

Topic: SEMANTICS

What is '<fieldset>' and '<legend>'?

Experience

<fieldset> is used to group related elements in a form (like a group of radio buttons). <legend> provides a caption for the group, which is announced ...

Accessibility Insight

<fieldset> is used to group related elements in a form (like a group of radio buttons). <legend> provides a caption for the group, which is announced by screen readers for each item in the group.

Topic: SEMANTICS

What is the '<caption>' tag?

Beginner

Used with <table> to provide a title or description for the data. Recommended for accessibility to give context to the table's content.

Accessibility Insight

Used with <table> to provide a title or description for the data. Recommended for accessibility to give context to the table's content.

Topic: SEMANTICS

What is '<th>'?

Beginner

Table Header cell. Use 'scope="col"' or 'scope="row"' to explicitly define what the header applies to.

Accessibility Insight

Table Header cell. Use 'scope="col"' or 'scope="row"' to explicitly define what the header applies to.

Topic: SEMANTICS

What is '<address>' tag?

Experience

Used to provide contact information for the nearest <article> or the entire <body>. Not for random postal addresses.

Accessibility Insight

Used to provide contact information for the nearest <article> or the entire <body>. Not for random postal addresses.

Topic: SEMANTICS

What is '<figure>' and '<figcaption>'?

Beginner

<figure> is for self-contained content (image/code/diagram). <figcaption> is the description. In A11y, it's safer and more powerful than just alt text...

Accessibility Insight

<figure> is for self-contained content (image/code/diagram). <figcaption> is the description. In A11y, it's safer and more powerful than just alt text for complex diagrams.

Topic: SEMANTICS

What is '<cite>' and '<q>'?

Experience

<cite> is for the title of a work. <q> is for short inline quotations. They help provide semantic meaning to quoted content.

Accessibility Insight

<cite> is for the title of a work. <q> is for short inline quotations. They help provide semantic meaning to quoted content.

Topic: SEMANTICS

Explain the importance of 'id' and 'for' correlation.

Beginner

It programmatically links a label to an input. Without this, screen readers might not announce the label when the input is focused.

Accessibility Insight

It programmatically links a label to an input. Without this, screen readers might not announce the label when the input is focused.

Topic: SEMANTICS

What is the '<time>' tag?

Experience

Represents a specific period in time. Use the datetime attribute to provide a machine-readable format.

Accessibility Insight

Represents a specific period in time. Use the datetime attribute to provide a machine-readable format.

Code Sample
<time datetime="2026-03-13">March 13th</time>
Topic: SEMANTICS

What is the '<ul>', '<ol>', and '<li>' hierarchy?

Beginner

Screen readers announce the list type and the number of items. This helps users understand the scope of the list before navigating individual items.

Accessibility Insight

Screen readers announce the list type and the number of items. This helps users understand the scope of the list before navigating individual items.

Topic: SEMANTICS

What is '<mark>' tag?

Experience

Indicates text that is marked or highlighted for reference or notation purposes. Important for indicating search result matches semantically.

Accessibility Insight

Indicates text that is marked or highlighted for reference or notation purposes. Important for indicating search result matches semantically.

Topic: SEMANTICS

What is the '<dfn>' tag?

Experience

Indicates the defining instance of a term. Useful for making explanations more discoverable.

Accessibility Insight

Indicates the defining instance of a term. Useful for making explanations more discoverable.

Topic: SEMANTICS

What is the '<abbr>' tag?

Experience

Used for abbreviations or acronyms. Use the title attribute to provide the full expansion for assistive technology.

Accessibility Insight

Used for abbreviations or acronyms. Use the title attribute to provide the full expansion for assistive technology.

Topic: SEMANTICS

Explain the 'hidden' attribute vs 'display: none'.

Experience

Both hide the element from view and the accessibility tree. 'visibility: hidden' hides it but keeps the space. aria-hidden="true" only hides it from t...

Accessibility Insight

Both hide the element from view and the accessibility tree. 'visibility: hidden' hides it but keeps the space. aria-hidden="true" only hides it from the accessibility tree (screen readers).

Topic: SEMANTICS

What is the '<details>' and '<summary>' tag?

Beginner

Native HTML way to create collapsibles. Screen readers handle the expanded/collapsed state automatically without custom JS/ARIA.

Accessibility Insight

Native HTML way to create collapsibles. Screen readers handle the expanded/collapsed state automatically without custom JS/ARIA.

Topic: SEMANTICS

What is the '<dialog>' tag?

Experience

Native modal/dialogue box. It handles focus trapping and aria-modal behavior automatically when opened with showModal().

Accessibility Insight

Native modal/dialogue box. It handles focus trapping and aria-modal behavior automatically when opened with showModal().

Topic: SEMANTICS

Why should you avoid 'tabindex > 0'?

Advanced

It breaks the natural tab order of the page, leading to a confusing and frustrating experience for keyboard users. Use only 0 (focusable) or -1 (progr...

Accessibility Insight

It breaks the natural tab order of the page, leading to a confusing and frustrating experience for keyboard users. Use only 0 (focusable) or -1 (programmatically focusable).

Topic: SEMANTICS

What is 'aria-label' vs 'aria-labelledby'?

Experience

aria-label takes a string. aria-labelledby take an ID of another element that acts as the label. Labelledby is usually preferred as it's easier to tra...

Accessibility Insight

aria-label takes a string. aria-labelledby take an ID of another element that acts as the label. Labelledby is usually preferred as it's easier to translate/maintain.

Topic: SEMANTICS

What is 'aria-describedby'?

Experience

Links an element to another that provides more detailed information (like hint text or error messages) that isn't the primary label.

Accessibility Insight

Links an element to another that provides more detailed information (like hint text or error messages) that isn't the primary label.

Topic: SEMANTICS

How to hide text from screen readers but not visually?

Experience

Use aria-hidden="true". Useful for decorative icons or redundant text.

Accessibility Insight

Use aria-hidden="true". Useful for decorative icons or redundant text.

Topic: SEMANTICS

How to hide text visually but keep it for screen readers?

Experience

Use a specialized CSS utility (often called .sr-only or .visually-hidden) that positions it off-screen but keeps it accessible to AT.

Accessibility Insight

Use a specialized CSS utility (often called .sr-only or .visually-hidden) that positions it off-screen but keeps it accessible to AT.

Code Sample
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
Topic: SEMANTICS

What is the '<progress>' vs '<meter>' tag?

Experience

<progress> is for task completion (loading). <meter> is for a scalar measurement within a known range (like disk space or fuel).

Accessibility Insight

<progress> is for task completion (loading). <meter> is for a scalar measurement within a known range (like disk space or fuel).

Topic: SEMANTICS

What is '<dl>', '<dt>', and '<dd>'?

Experience

Description list, term, and description. Semantically superior to <div> for key-value pairs or glossary entries.

Accessibility Insight

Description list, term, and description. Semantically superior to <div> for key-value pairs or glossary entries.

Topic: SEMANTICS

How to use 'scope' in tables?

Advanced

Use <th scope="col"> for column headers and <th scope="row"> for row headers. Without this, complex tables become unintelligible to screen readers.

Accessibility Insight

Use <th scope="col"> for column headers and <th scope="row"> for row headers. Without this, complex tables become unintelligible to screen readers.

Topic: SEMANTICS

What is 'aria-hidden' utility?

Beginner

aria-hidden="true" on a parent hides all children from AT. Useful for modals to prevent users from 'leaving' the modal while it's open.

Accessibility Insight

aria-hidden="true" on a parent hides all children from AT. Useful for modals to prevent users from 'leaving' the modal while it's open.

Topic: SEMANTICS

Explain 'placeholder' vs 'label' for forms.

Beginner

Placeholders are NOT a replacement for labels. They disappear when the user types, and many screen readers don't announce them reliably. Always use a ...

Accessibility Insight

Placeholders are NOT a replacement for labels. They disappear when the user types, and many screen readers don't announce them reliably. Always use a <label>.

Topic: SEMANTICS

What is 'autocomplete' attribute importance?

Experience

Helps users with cognitive or motor disabilities to quickly fill out forms. It also allows browsers to provide specialized input methods (like address...

Accessibility Insight

Helps users with cognitive or motor disabilities to quickly fill out forms. It also allows browsers to provide specialized input methods (like address/credit card pickers).

Topic: SEMANTICS

What is 'inputmode' attribute?

Experience

Hints to the browser which keyboard to show (numeric, tel, email) on mobile devices, easing the interaction for those with motor impairments.

Accessibility Insight

Hints to the browser which keyboard to show (numeric, tel, email) on mobile devices, easing the interaction for those with motor impairments.

Topic: SEMANTICS

What is the '<hgroup>' tag?

Advanced

Used to group a main <h1>-<h6> and secondary introductory text, ensuring they are treated as a single heading unit.

Accessibility Insight

Used to group a main <h1>-<h6> and secondary introductory text, ensuring they are treated as a single heading unit.

Topic: SEMANTICS

How to handle icons in buttons semantically?

Experience

If the button has no text, you MUST use aria-label or a .sr-only span inside the button to give it a name.

Accessibility Insight

If the button has no text, you MUST use aria-label or a .sr-only span inside the button to give it a name.

Code Sample
<button aria-label="Close">
  <i class="bi bi-x" aria-hidden="true"></i>
</button>
Topic: SEMANTICS

What is the 'alt' attribute on 'area' tags?

Advanced

For image maps, each <area> must have an alt attribute describing where that specific link leads.

Accessibility Insight

For image maps, each <area> must have an alt attribute describing where that specific link leads.

Topic: SEMANTICS

What is WAI-ARIA?

Beginner

WAI-ARIA (Web Accessibility Initiative – Accessible Rich Internet Applications) is a specification from the W3C that provides attributes to help bridg...

Accessibility Insight

WAI-ARIA (Web Accessibility Initiative – Accessible Rich Internet Applications) is a specification from the W3C that provides attributes to help bridge gaps in semantic HTML, especially for dynamic content and complex UI components.

Topic: ARIA

What is the first rule of ARIA?

Beginner

If a native HTML element or attribute has the semantics and behavior you require already built-in, use that instead of adding an ARIA role, state or p...

Accessibility Insight

If a native HTML element or attribute has the semantics and behavior you require already built-in, use that instead of adding an ARIA role, state or property.

Topic: ARIA

What is an ARIA 'Role'?

Beginner

A role defines the type of element it is. Roles like 'button', 'alert', 'tabpanel', 'navigation' tell the screen reader how to interpret and interact ...

Accessibility Insight

A role defines the type of element it is. Roles like 'button', 'alert', 'tabpanel', 'navigation' tell the screen reader how to interpret and interact with the element.

Topic: ARIA

What are ARIA 'States' and 'Properties'?

Experience

States (like aria-expanded, aria-checked) change with user interaction. Properties (like aria-required, aria-labelledby) are usually static and define...

Accessibility Insight

States (like aria-expanded, aria-checked) change with user interaction. Properties (like aria-required, aria-labelledby) are usually static and define relationships or requirements.

Topic: ARIA

What is 'role="presentation"' or 'role="none"'?

Experience

These roles remove the semantic meaning of an element from the accessibility tree (though its children remain). Used to fix legacy code or for decorat...

Accessibility Insight

These roles remove the semantic meaning of an element from the accessibility tree (though its children remain). Used to fix legacy code or for decorative table layouts.

Topic: ARIA

Explain 'aria-live' regions.

Experience

Indicates that an element will be updated, and describes the types of updates the user agent, assistive technologies, and user can expect. Values: pol...

Accessibility Insight

Indicates that an element will be updated, and describes the types of updates the user agent, assistive technologies, and user can expect. Values: polite (waits for pause), assertive (interrupts), off (default).

Topic: ARIA

What is the 'status' vs 'alert' role?

Experience

Both are live regions. 'status' is polite and used for non-essential updates. 'alert' is assertive and should be used for critical info requiring imme...

Accessibility Insight

Both are live regions. 'status' is polite and used for non-essential updates. 'alert' is assertive and should be used for critical info requiring immediate attention.

Topic: ARIA

What is 'aria-modal="true"'?

Experience

Tells the screen reader that the content outside of this element should be ignored. It's a key part of making custom modals accessible.

Accessibility Insight

Tells the screen reader that the content outside of this element should be ignored. It's a key part of making custom modals accessible.

Topic: ARIA

Explain 'aria-expanded'.

Beginner

Indicates whether a collapsible element (like a menu or accordion) is currently open (true) or closed (false). You must update this via JS during inte...

Accessibility Insight

Indicates whether a collapsible element (like a menu or accordion) is currently open (true) or closed (false). You must update this via JS during interaction.

Topic: ARIA

What is 'aria-current'?

Experience

Indicates the current item within a set. Common values: 'page' (current link in nav), 'step' (current step in progress), 'date' (current day in calend...

Accessibility Insight

Indicates the current item within a set. Common values: 'page' (current link in nav), 'step' (current step in progress), 'date' (current day in calendar).

Topic: ARIA

What is 'aria-haspopup'?

Experience

Indicates that the element has a popup (menu, listbox, tree, grid, or dialog) associated with it.

Accessibility Insight

Indicates that the element has a popup (menu, listbox, tree, grid, or dialog) associated with it.

Topic: ARIA

Explain 'aria-controls'.

Advanced

Identifies the element (or elements) whose contents or appearance are controlled by the current element. Mostly used for tabs to link a tab button to ...

Accessibility Insight

Identifies the element (or elements) whose contents or appearance are controlled by the current element. Mostly used for tabs to link a tab button to its panel.

Topic: ARIA

What is 'aria-invalid'?

Beginner

Indicates that the entered value does not conform to the expected format. Usually used in tandem with aria-describedby pointing to an error message.

Accessibility Insight

Indicates that the entered value does not conform to the expected format. Usually used in tandem with aria-describedby pointing to an error message.

Topic: ARIA

What is 'aria-required'?

Beginner

Indicates that user input is required on the element before a form may be submitted. AT will announce 'Required' to the user.

Accessibility Insight

Indicates that user input is required on the element before a form may be submitted. AT will announce 'Required' to the user.

Topic: ARIA

What is 'aria-pressed'?

Experience

Used for 'toggle' buttons (like a Play/Pause button or a Like button) to indicate whether the button is currently in a pressed state.

Accessibility Insight

Used for 'toggle' buttons (like a Play/Pause button or a Like button) to indicate whether the button is currently in a pressed state.

Topic: ARIA

Explain 'aria-busy'.

Advanced

Indicates an element is being modified and that assistive technologies may want to wait until the modifications are complete before informing the user...

Accessibility Insight

Indicates an element is being modified and that assistive technologies may want to wait until the modifications are complete before informing the user about updates.

Topic: ARIA

What is the 'landmark' role?

Beginner

Landmarks (banner, navigation, main, complement, search, contentinfo) allow users to jump quickly to different sections of the page using skip keys.

Accessibility Insight

Landmarks (banner, navigation, main, complement, search, contentinfo) allow users to jump quickly to different sections of the page using skip keys.

Topic: ARIA

Explain 'aria-selected' vs 'aria-checked'.

Experience

Selected is usually for tabs or listbox items. Checked is specifically for checkboxes and radio buttons.

Accessibility Insight

Selected is usually for tabs or listbox items. Checked is specifically for checkboxes and radio buttons.

Topic: ARIA

What is 'aria-orientation'?

Experience

Indicates whether the element's orientation is horizontal, vertical, or unknown/ambiguous.

Accessibility Insight

Indicates whether the element's orientation is horizontal, vertical, or unknown/ambiguous.

Topic: ARIA

What is 'aria-relevant'?

Advanced

Used with aria-live to specify what types of changes should trigger an announcement (removals, additions, text changes).

Accessibility Insight

Used with aria-live to specify what types of changes should trigger an announcement (removals, additions, text changes).

Topic: ARIA

Explain 'aria-atomic'.

Advanced

Default is false. If true, the entire live region is announced when any part changes. If false, only the changed part is announced.

Accessibility Insight

Default is false. If true, the entire live region is announced when any part changes. If false, only the changed part is announced.

Topic: ARIA

What is the 'application' role?

Advanced

CAUTION: This role tells the screen reader to turn off its default shortcut keys and pass all input strictly to the web app. Use very sparingly for th...

Accessibility Insight

CAUTION: This role tells the screen reader to turn off its default shortcut keys and pass all input strictly to the web app. Use very sparingly for things like Google Docs or highly complex WebGL apps.

Topic: ARIA

What is 'aria-owns'?

Advanced

Defines a parent-child relationship between elements that are not children of each other in the DOM tree.

Accessibility Insight

Defines a parent-child relationship between elements that are not children of each other in the DOM tree.

Topic: ARIA

Explain 'aria-posinset' and 'aria-setsize'.

Advanced

Used when only a partial set of items is loaded in the DOM (like virtual scrolling). It tells the AT 'this is item 5 of 100'.

Accessibility Insight

Used when only a partial set of items is loaded in the DOM (like virtual scrolling). It tells the AT 'this is item 5 of 100'.

Topic: ARIA

What is 'aria-valuenow', 'min', 'max'?

Experience

Used for sliders (role="slider") or progress bars to communicate the current, minimum, and maximum numerical values.

Accessibility Insight

Used for sliders (role="slider") or progress bars to communicate the current, minimum, and maximum numerical values.

Topic: ARIA

What is 'aria-sort'?

Experience

Used on table headers to indicate if the column is sorted in ascending or descending order.

Accessibility Insight

Used on table headers to indicate if the column is sorted in ascending or descending order.

Topic: ARIA

Explain 'role="log"'.

Advanced

Type of live region for sequential info where new information is added to the end (e.g., a chat window history).

Accessibility Insight

Type of live region for sequential info where new information is added to the end (e.g., a chat window history).

Topic: ARIA

What is 'role="timer"'?

Advanced

Numerical counter that indicates the amount of elapsed time from a starting point, or the time remaining until an end point.

Accessibility Insight

Numerical counter that indicates the amount of elapsed time from a starting point, or the time remaining until an end point.

Topic: ARIA

What is 'role="tooltip"'?

Beginner

A contextual popup that contains a descriptive text which provides information about an element. It should be linked to the trigger via aria-described...

Accessibility Insight

A contextual popup that contains a descriptive text which provides information about an element. It should be linked to the trigger via aria-describedby.

Topic: ARIA

Explain 'aria-multiline' and 'aria-multiselectable'.

Experience

Self-explanatory properties for text inputs and list components to communicate their capability.

Accessibility Insight

Self-explanatory properties for text inputs and list components to communicate their capability.

Topic: ARIA

What is 'aria-autocomplete'?

Advanced

Indicates whether inputting text could trigger display of one or more predictions of the user's intended value for an input.

Accessibility Insight

Indicates whether inputting text could trigger display of one or more predictions of the user's intended value for an input.

Topic: ARIA

Explain 'role="toolbar"'.

Experience

A collection of commonly used functions represented as compact buttons; usually requires arrow key navigation between buttons for best UX.

Accessibility Insight

A collection of commonly used functions represented as compact buttons; usually requires arrow key navigation between buttons for best UX.

Topic: ARIA

What is 'role="searchbox"'?

Beginner

Specialized type of textbox used for entering search criteria. Allows AT to provide specialized search shortcuts.

Accessibility Insight

Specialized type of textbox used for entering search criteria. Allows AT to provide specialized search shortcuts.

Topic: ARIA

What is 'role="switch"'?

Beginner

A type of checkbox that represents an 'on' or 'off' state. Visually usually looks like a toggle switch.

Accessibility Insight

A type of checkbox that represents an 'on' or 'off' state. Visually usually looks like a toggle switch.

Topic: ARIA

Explain 'aria-activedescendant'.

Advanced

Used in listboxes/comboboxes to manage focus virtually. Instead of moving focus to each item, focus stays on the container, which points to the 'activ...

Accessibility Insight

Used in listboxes/comboboxes to manage focus virtually. Instead of moving focus to each item, focus stays on the container, which points to the 'active' child ID.

Topic: ARIA

What is 'role="grid"' vs 'role="table"'?

Advanced

Table is for static data. Grid is for interactive data where the user needs complex keyboard navigation between cells (Excel-like behavior).

Accessibility Insight

Table is for static data. Grid is for interactive data where the user needs complex keyboard navigation between cells (Excel-like behavior).

Topic: ARIA

What is 'role="tablist"', 'tab', 'tabpanel'?

Experience

The standard trio for tabbed interfaces. Tab is the button, tabpanel is the content, and tablist is the wrapper.

Accessibility Insight

The standard trio for tabbed interfaces. Tab is the button, tabpanel is the content, and tablist is the wrapper.

Topic: ARIA

Explain 'aria-errormessage'.

Advanced

Similar to aria-describedby but specifically for error messages. It's newer and often used in conjunction with aria-invalid.

Accessibility Insight

Similar to aria-describedby but specifically for error messages. It's newer and often used in conjunction with aria-invalid.

Topic: ARIA

What is 'aria-colindex' and 'aria-rowindex'?

Advanced

Used in complex grids with virtual scrolling to maintain the correct table coordinates in the AT.

Accessibility Insight

Used in complex grids with virtual scrolling to maintain the correct table coordinates in the AT.

Topic: ARIA

How to validate ARIA implementation?

Beginner

Use automated tools like Axe-core, Lighthouse, or browser extensions like WAVE. But ultimately, verify with a real screen reader like NVDA or VoiceOve...

Accessibility Insight

Use automated tools like Axe-core, Lighthouse, or browser extensions like WAVE. But ultimately, verify with a real screen reader like NVDA or VoiceOver.

Topic: ARIA

What is 'Keyboard Accessibility'?

Beginner

Keyboard accessibility means ensuring that all interactive elements can be accessed and operated entirely using a keyboard, without requiring a mouse ...

Accessibility Insight

Keyboard accessibility means ensuring that all interactive elements can be accessed and operated entirely using a keyboard, without requiring a mouse or other pointing device.

Topic: INTERACTION

What is the 'Tab' key's role?

Beginner

The primary way to move between focusable elements like links, buttons, and form inputs.

Accessibility Insight

The primary way to move between focusable elements like links, buttons, and form inputs.

Topic: INTERACTION

What is 'Shift + Tab'?

Beginner

Moves the focus backwards through the focusable elements.

Accessibility Insight

Moves the focus backwards through the focusable elements.

Topic: INTERACTION

Explain the 'Focus Trap'.

Experience

A technique used for components like modals and menus where the focus is constrained within the component until it is closed, preventing the user from...

Accessibility Insight

A technique used for components like modals and menus where the focus is constrained within the component until it is closed, preventing the user from tabbing to background content.

Topic: INTERACTION

How to manage focus when opening a Modal?

Experience

1. Save the reference to the last focused element. 2. Move focus into the modal (title or first button). 3. Trap focus inside. 4. Restore focus back t...

Accessibility Insight

1. Save the reference to the last focused element. 2. Move focus into the modal (title or first button). 3. Trap focus inside. 4. Restore focus back to the trigger button when the modal closes.

Topic: INTERACTION

What is 'Focus Management' in SPAs?

Experience

Since page loads don't refresh the browser in SPAs, you must manually move focus to the new content (usually the H1 or a skip link) to inform screen r...

Accessibility Insight

Since page loads don't refresh the browser in SPAs, you must manually move focus to the new content (usually the H1 or a skip link) to inform screen reader users that the view has changed.

Topic: INTERACTION

How to create a custom focus indicator?

Beginner

Remove the default outline with caution, and ALWAYS replace it with a high-contrast equivalent (using border, background-color, or box-shadow).

Accessibility Insight

Remove the default outline with caution, and ALWAYS replace it with a high-contrast equivalent (using border, background-color, or box-shadow).

Code Sample
button:focus {
  outline: 3px solid #ffcc00;
  outline-offset: 2px;
}
Topic: INTERACTION

What is 'Focus-visible' pseudo-class?

Experience

It only applies a focus style when the browser determines that the focus was initiated by a keyboard or other assistive device, preventing 'unnecessar...

Accessibility Insight

It only applies a focus style when the browser determines that the focus was initiated by a keyboard or other assistive device, preventing 'unnecessary' outlines when clicking with a mouse.

Topic: INTERACTION

What is 'Inert' attribute?

Advanced

A native HTML attribute that makes a section of the page completely non-interactive and hidden from AT. Very useful for hiding main content while a mo...

Accessibility Insight

A native HTML attribute that makes a section of the page completely non-interactive and hidden from AT. Very useful for hiding main content while a modal is open.

Topic: INTERACTION

Difference between Enter and Space bar behavior?

Beginner

Both usually activate buttons. For links, only Enter is expected. For checkboxes/radios, Space is the standard toggle key.

Accessibility Insight

Both usually activate buttons. For links, only Enter is expected. For checkboxes/radios, Space is the standard toggle key.

Topic: INTERACTION

How to handle Escape key?

Beginner

The Escape key should close any overlays, modals, or menus that are currently open.

Accessibility Insight

The Escape key should close any overlays, modals, or menus that are currently open.

Topic: INTERACTION

Explain 'Roving Tabindex'.

Advanced

A technique for complex widgets (like radio groups or toolbars) where only one item has tabindex="0" and the rest have "-1". Arrow keys are used to mo...

Accessibility Insight

A technique for complex widgets (like radio groups or toolbars) where only one item has tabindex="0" and the rest have "-1". Arrow keys are used to move the 0-index between items.

Topic: INTERACTION

How to create a custom dropdown keyboard support?

Experience

Handle Up/Down arrow to cycle items, Enter/Space to select, Escape to close, and maybe character keys for 'jump to letter' functionality.

Accessibility Insight

Handle Up/Down arrow to cycle items, Enter/Space to select, Escape to close, and maybe character keys for 'jump to letter' functionality.

Topic: INTERACTION

What is 'Focus Trajectory'?

Advanced

The path focus takes as a user moves through an interaction. It must be logical and predictable (e.g., if I delete an item, focus should go to the nex...

Accessibility Insight

The path focus takes as a user moves through an interaction. It must be logical and predictable (e.g., if I delete an item, focus should go to the next logical item, not the top of the page).

Topic: INTERACTION

How to handle 'infinite scroll' A11y?

Advanced

Provide a 'Load More' button instead of auto-scrolling, or use live regions to announce new content. Ensure users can still reach the footer.

Accessibility Insight

Provide a 'Load More' button instead of auto-scrolling, or use live regions to announce new content. Ensure users can still reach the footer.

Topic: INTERACTION

What is 'Target Size' requirement?

Experience

WCAG 2.1 requires a minimum of 44x44 CSS pixels for interactive targets. WCAG 2.2 reduced this to 24x24 in some contexts but with stricter spacing rul...

Accessibility Insight

WCAG 2.1 requires a minimum of 44x44 CSS pixels for interactive targets. WCAG 2.2 reduced this to 24x24 in some contexts but with stricter spacing rules.

Topic: INTERACTION

How to make drag-and-drop accessible?

Advanced

Provide keyboard-only alternatives (e.g., using 'Move Up' / 'Move Down' buttons) and use aria-live to announce status changes.

Accessibility Insight

Provide keyboard-only alternatives (e.g., using 'Move Up' / 'Move Down' buttons) and use aria-live to announce status changes.

Topic: INTERACTION

What is 'Motion Sensitivity'?

Experience

Ensuring that animations can be disabled or significantly reduced for users with vestibular disorders. Use the 'prefers-reduced-motion' media query.

Accessibility Insight

Ensuring that animations can be disabled or significantly reduced for users with vestibular disorders. Use the 'prefers-reduced-motion' media query.

Code Sample
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
}
Topic: INTERACTION

Explain 'Pointer Gestures' requirement.

Advanced

Functionality that can be operated by complex gestures (pinch-to-zoom, swipe) must also be operable by a single pointer without path-based movement (e...

Accessibility Insight

Functionality that can be operated by complex gestures (pinch-to-zoom, swipe) must also be operable by a single pointer without path-based movement (e.g., simple click buttons).

Topic: INTERACTION

What is 'Label in Name'?

Advanced

For components with a visible text label, the accessible name must contain the visible text label. This helps users of voice input software who 'say w...

Accessibility Insight

For components with a visible text label, the accessible name must contain the visible text label. This helps users of voice input software who 'say what they see'.

Topic: INTERACTION

How to handle 'Hover' content accessibility?

Experience

Content revealed on hover must be: 1. Dismissible (via Esc), 2. Hoverable (user can move mouse over the new content), 3. Persistent (doesn't disappear...

Accessibility Insight

Content revealed on hover must be: 1. Dismissible (via Esc), 2. Hoverable (user can move mouse over the new content), 3. Persistent (doesn't disappear until user wants).

Topic: INTERACTION

What is 'Device Independent' interaction?

Beginner

Designing interactions that don't assume the user has a specific input device (like a mouse, touch screen, or stylus).

Accessibility Insight

Designing interactions that don't assume the user has a specific input device (like a mouse, touch screen, or stylus).

Topic: INTERACTION

Explain 'Orientation' A11y.

Beginner

Don't lock the UI to only work in Portrait or Landscape mode. Users with devices mounted on wheelchairs may not be able to rotate them.

Accessibility Insight

Don't lock the UI to only work in Portrait or Landscape mode. Users with devices mounted on wheelchairs may not be able to rotate them.

Topic: INTERACTION

What is 'Input Identity'?

Advanced

Allowing users to use standard input methods (like biometric login or password managers) rather than forcing custom, inaccessible flows.

Accessibility Insight

Allowing users to use standard input methods (like biometric login or password managers) rather than forcing custom, inaccessible flows.

Topic: INTERACTION

How to handle 'Touch Target' spacing?

Experience

Ensure enough gap between buttons so users with motor impairments don't accidentally click the wrong one.

Accessibility Insight

Ensure enough gap between buttons so users with motor impairments don't accidentally click the wrong one.

Topic: INTERACTION

What is 'Visual Focus'?

Beginner

Complementary to 'Focus Visible', ensuring that the focus outline is not only present but has a high enough contrast to be seen by low-vision users.

Accessibility Insight

Complementary to 'Focus Visible', ensuring that the focus outline is not only present but has a high enough contrast to be seen by low-vision users.

Topic: INTERACTION

How to handle 'Dynamic content' focus?

Experience

When content is inserted dynamicall (like an alert or new list item), consider moving focus to it if it requires immediate action.

Accessibility Insight

When content is inserted dynamicall (like an alert or new list item), consider moving focus to it if it requires immediate action.

Topic: INTERACTION

What is 'Keyboard-only' testing?

Beginner

Unplugging your mouse and trying to complete all tasks on your site using only Tab, Shift+Tab, Enter, Space, and Arrows.

Accessibility Insight

Unplugging your mouse and trying to complete all tasks on your site using only Tab, Shift+Tab, Enter, Space, and Arrows.

Topic: INTERACTION

Explain 'Content on Hover or Focus'.

Advanced

Requirement 1.4.13 ensures that users won't accidentally trigger content that blocks other content and that they can easily dismiss it.

Accessibility Insight

Requirement 1.4.13 ensures that users won't accidentally trigger content that blocks other content and that they can easily dismiss it.

Topic: INTERACTION

What is 'Tab Index Cycle'?

Advanced

The order in which focus moves through the page; it should prioritize header -> nav -> main -> footer in a logical flow.

Accessibility Insight

The order in which focus moves through the page; it should prioritize header -> nav -> main -> footer in a logical flow.

Topic: INTERACTION

What is Axe-core?

Beginner

The engine that powers most accessibility testing tools. It's an automated library that catches about 30-50% of accessibility issues by running agains...

Accessibility Insight

The engine that powers most accessibility testing tools. It's an automated library that catches about 30-50% of accessibility issues by running against the DOM.

Topic: TESTING

What is Lighthouse Accessibility audit?

Beginner

A tool built into Chrome DevTools that provides a score (0-100) based on automated A11y checks.

Accessibility Insight

A tool built into Chrome DevTools that provides a score (0-100) based on automated A11y checks.

Topic: TESTING

How much can automated A11y tests catch?

Experience

Automated tests generally catch about 30% to 50% of accessibility errors. Manual testing with screen readers and keyboard remains essential for full c...

Accessibility Insight

Automated tests generally catch about 30% to 50% of accessibility errors. Manual testing with screen readers and keyboard remains essential for full compliance.

Topic: TESTING

What is NVDA?

Beginner

NonVisual Desktop Access. A free, open-source screen reader for Windows. Very popular and excellent for developer testing.

Accessibility Insight

NonVisual Desktop Access. A free, open-source screen reader for Windows. Very popular and excellent for developer testing.

Topic: TESTING

What is VoiceOver?

Beginner

The built-in screen reader for Apple devices (macOS, iOS). It's the industry standard for mobile A11y testing.

Accessibility Insight

The built-in screen reader for Apple devices (macOS, iOS). It's the industry standard for mobile A11y testing.

Topic: TESTING

What is JAWS?

Experience

Job Access With Speech. One of the oldest and most powerful commercial screen readers for Windows, primarily used in professional settings.

Accessibility Insight

Job Access With Speech. One of the oldest and most powerful commercial screen readers for Windows, primarily used in professional settings.

Topic: TESTING

Explain 'WAVE' Tool.

Beginner

A suite of evaluation tools that helps authors make their web content more accessible by providing visual overlays of errors and landmarks.

Accessibility Insight

A suite of evaluation tools that helps authors make their web content more accessible by providing visual overlays of errors and landmarks.

Topic: TESTING

How to use 'Inspected' Accessibility tab in Chrome?

Experience

Allows you to view the calculated Accessibility Tree for any element, its computed ARIA name, role, and source of its accessible name.

Accessibility Insight

Allows you to view the calculated Accessibility Tree for any element, its computed ARIA name, role, and source of its accessible name.

Topic: TESTING

What is 'Color Contrast' checker in DevTools?

Beginner

When you inspect an element's text color, DevTools shows you the contrast ratio and whether it passes WCAG AA or AAA.

Accessibility Insight

When you inspect an element's text color, DevTools shows you the contrast ratio and whether it passes WCAG AA or AAA.

Topic: TESTING

What is 'Vision Deficiency' simulation?

Beginner

A DevTools feature (Rendering tab) that allows you to see the page as someone with color blindness or blurred vision would see it.

Accessibility Insight

A DevTools feature (Rendering tab) that allows you to see the page as someone with color blindness or blurred vision would see it.

Topic: TESTING

How to test for 'High Contrast' mode?

Experience

Enable 'High Contrast' in Windows settings and verify that all content, especially icons and focus states, remain visible and clearly distinguished.

Accessibility Insight

Enable 'High Contrast' in Windows settings and verify that all content, especially icons and focus states, remain visible and clearly distinguished.

Topic: TESTING

What is 'cypress-axe'?

Advanced

An integration for the Cypress test runner that injects the Axe engine into your E2E tests to catch accessibility regressions in CI.

Accessibility Insight

An integration for the Cypress test runner that injects the Axe engine into your E2E tests to catch accessibility regressions in CI.

Topic: TESTING

What is 'Pa11y'?

Advanced

A command-line tool that lets you run semi-automated accessibility audits on your site. Great for quick checks or automated pipelines.

Accessibility Insight

A command-line tool that lets you run semi-automated accessibility audits on your site. Great for quick checks or automated pipelines.

Topic: TESTING

Explain 'VPAT' (Voluntary Product Accessibility Template).

Advanced

A document that explains how a product meets or doesn't meet specific accessibility criteria. Often required for government contracts.

Accessibility Insight

A document that explains how a product meets or doesn't meet specific accessibility criteria. Often required for government contracts.

Topic: TESTING

What is 'A11y linting'?

Beginner

Using tools like eslint-plugin-jsx-a11y to flag accessibility issues in your code (like missing alt tags) before you even run the app.

Accessibility Insight

Using tools like eslint-plugin-jsx-a11y to flag accessibility issues in your code (like missing alt tags) before you even run the app.

Topic: TESTING

How to perform a 'Screen Reader' audit?

Experience

Navigate the page without looking at the screen (or using a screen curtain) to ensure you can understand the layout, navigate sections, and complete a...

Accessibility Insight

Navigate the page without looking at the screen (or using a screen curtain) to ensure you can understand the layout, navigate sections, and complete all actions.

Topic: TESTING

What is the 'Heuristic' evaluation in A11y?

Advanced

A manual evaluation technique where an expert reviews the interface against a list of recognized principles (heuristics) like WCAG guidelines.

Accessibility Insight

A manual evaluation technique where an expert reviews the interface against a list of recognized principles (heuristics) like WCAG guidelines.

Topic: TESTING

How to use 'Voice Control' for testing?

Experience

Use Dragon NaturallySpeaking or Built-in Voice Control to see if you can trigger all actions by saying the labels.

Accessibility Insight

Use Dragon NaturallySpeaking or Built-in Voice Control to see if you can trigger all actions by saying the labels.

Topic: TESTING

What is 'Accessibility Regression Testing'?

Advanced

Ensuring that bug fixes or new features don't break existing accessibility compliance.

Accessibility Insight

Ensuring that bug fixes or new features don't break existing accessibility compliance.

Topic: TESTING

How to test 'Zoom' levels up to 400%?

Experience

WCAG requires that content should be operable and no functionality is lost when zoomed up to 400%. Ensure no horizontal scrolling appears and content ...

Accessibility Insight

WCAG requires that content should be operable and no functionality is lost when zoomed up to 400%. Ensure no horizontal scrolling appears and content doesn't overlap.

Topic: TESTING

What is 'Keyboard Accessibility Sidebar' in Firefox?

Experience

Firefox DevTools includes an excellent Accessibility panel that highlights issues and visualizes landmarks very clearly.

Accessibility Insight

Firefox DevTools includes an excellent Accessibility panel that highlights issues and visualizes landmarks very clearly.

Topic: TESTING

How to use 'ARC Toolkit'?

Advanced

A professional-grade Chrome extension that provides detailed audits, including aria-live tracking and complex component analysis.

Accessibility Insight

A professional-grade Chrome extension that provides detailed audits, including aria-live tracking and complex component analysis.

Topic: TESTING

What is 'User Testing' with people with disabilities?

Advanced

The gold standard of A11y testing. Recruit actual assistive technology users to find real-world usability barriers that automated tests miss.

Accessibility Insight

The gold standard of A11y testing. Recruit actual assistive technology users to find real-world usability barriers that automated tests miss.

Topic: TESTING

Explain 'Accessibility Conformance Report' (ACR).

Advanced

The formal report generated after a full audit, detailing how well a site adheres to standards like WCAG 2.1 AA.

Accessibility Insight

The formal report generated after a full audit, detailing how well a site adheres to standards like WCAG 2.1 AA.

Topic: TESTING

What is 'Microsoft Accessibility Insights'?

Experience

A set of free tools (web/android/windows) that guides you through a semi-automated and manual assessment of your site.

Accessibility Insight

A set of free tools (web/android/windows) that guides you through a semi-automated and manual assessment of your site.

Topic: TESTING

How to test 'Screen Reader Shortcuts' as a developer?

Experience

Learn the primary keys: 'H' for headings, 'L' for lists, 'T' for tables, and 'F' for form fields to quickly navigate sections during testing.

Accessibility Insight

Learn the primary keys: 'H' for headings, 'L' for lists, 'T' for tables, and 'F' for form fields to quickly navigate sections during testing.

Topic: TESTING

How to detect hidden ARIA errors?

Advanced

Look for 'aria-labelledby' or 'aria-describedby' pointing to IDs that don't exist, which AT will simply ignore.

Accessibility Insight

Look for 'aria-labelledby' or 'aria-describedby' pointing to IDs that don't exist, which AT will simply ignore.

Topic: TESTING

What is 'Fluid Typography' performance in A11y?

Experience

Using clamp() or rem units ensures that text scales correctly with the user's browser font size settings.

Accessibility Insight

Using clamp() or rem units ensures that text scales correctly with the user's browser font size settings.

Topic: TESTING

What is the 'No-CSS' test?

Beginner

Disable all CSS to see if the DOM order remains logical and understandable. This is the raw sequence a screen reader user experiences.

Accessibility Insight

Disable all CSS to see if the DOM order remains logical and understandable. This is the raw sequence a screen reader user experiences.

Topic: TESTING

How to check for 'Audio/Video' controls accessibility?

Experience

Verify that custom play/pause/volume buttons are keyboard focusable and provide proper ARIA labels for their current state.

Accessibility Insight

Verify that custom play/pause/volume buttons are keyboard focusable and provide proper ARIA labels for their current state.

Topic: TESTING

Explain 'Accessible Name Computation' logic.

Advanced

The complex algorithm AT uses to determine the text for an element (Inner text > aria-label > aria-labelledby > title > alt).

Accessibility Insight

The complex algorithm AT uses to determine the text for an element (Inner text > aria-label > aria-labelledby > title > alt).

Topic: TESTING

How to handle 'Captcha' accessibility?

Advanced

Captchas are inherently inaccessible (visual checks vs bots). Always provide an audio alternative or use modern 'no-captcha' solutions like Cloudflare...

Accessibility Insight

Captchas are inherently inaccessible (visual checks vs bots). Always provide an audio alternative or use modern 'no-captcha' solutions like Cloudflare Turnstile.

Topic: TESTING

How to audit 'SVG Icons' in a mass site?

Experience

Ensure they don't have titles that produce redundant tooltips, and they have proper aria-hidden or labels depending on purpose.

Accessibility Insight

Ensure they don't have titles that produce redundant tooltips, and they have proper aria-hidden or labels depending on purpose.

Topic: TESTING

What is 'Storybook A11y' addon?

Experience

An addon that runs Axe-core on every story, allowing developers to catch A11y errors at the component level during development.

Accessibility Insight

An addon that runs Axe-core on every story, allowing developers to catch A11y errors at the component level during development.

Topic: TESTING

What is 'Accessibility Score' vs 'Actual Compliance'?

Beginner

A 100 on Lighthouse doesn't mean your site is accessible; it just means it passed the automated checks. True compliance requires manual verification.

Accessibility Insight

A 100 on Lighthouse doesn't mean your site is accessible; it just means it passed the automated checks. True compliance requires manual verification.

Topic: TESTING

How to test 'Modal Focus restorations'?

Experience

Open the modal, close it via button and Esc key, and ensure the focus returns exactly where it started. Use 'document.activeElement' in console to ver...

Accessibility Insight

Open the modal, close it via button and Esc key, and ensure the focus returns exactly where it started. Use 'document.activeElement' in console to verify.

Topic: TESTING

What is 'Tab-order' visualizer?

Beginner

A tool or extension that draws arrows on the screen to show how focus moves from element to element.

Accessibility Insight

A tool or extension that draws arrows on the screen to show how focus moves from element to element.

Topic: TESTING

Explain 'ARIA Authoring Practices Guide' (APG).

Advanced

The definitive guide from W3C on how to build common UI patterns (tabs, accordions) with the correct ARIA/Keyboard behaviors.

Accessibility Insight

The definitive guide from W3C on how to build common UI patterns (tabs, accordions) with the correct ARIA/Keyboard behaviors.

Topic: TESTING

How to handle 'Dynamic content' live region testing?

Advanced

Verify that new content (like a search result count update) is announced automatically without the user having to move focus to it.

Accessibility Insight

Verify that new content (like a search result count update) is announced automatically without the user having to move focus to it.

Topic: TESTING

The ultimate A11y testing mantra.

Beginner

Test early, test often, and always think about the user behind the assistive technology.

Accessibility Insight

Test early, test often, and always think about the user behind the assistive technology.

Topic: TESTING

© 2026 Accessibility Interview Guide. Built Accessible.