# ARIA: what it is and how it works · Zorraquino
> ARIA is a W3C specification that adds roles, states and properties to HTML so assistive technologies can interpret complex web interfaces.
URL: https://www.zorraquino.com/en/dictionary/internet/aria-accessible-rich-internet-applications.html

# ARIA

ARIA (Accessible Rich Internet Applications) is a W3C specification that defines attributes for adding information about roles, states and properties to HTML, so that assistive technologies can interpret complex web interfaces

What it means, how it is used and where it comes up, with its related concepts.

[The whole glossary](https://www.zorraquino.com/en/dictionary)

## What it is and how it works

It is part of the Web Accessibility Initiative (WAI), hence the name WAI-ARIA. It is particularly useful for components HTML does not cover on its own, such as tabs, drop-down menus, dialogs or content that updates without reloading the page, so that screen readers correctly announce what they are and what is happening. Version 1.2 became a W3C Recommendation in 2023.

ARIA adds semantics, not behaviour: keyboard interaction still has to be coded. The first rule of use is to prefer native HTML elements, such as button or nav, wherever they exist, because poorly applied ARIA can make accessibility worse rather than better.

Also known as

WAI-ARIA, Accessible Rich Internet Applications

Topics

[Technology and data](https://www.zorraquino.com/en/dictionary/category/technology-and-data)

Where we work on it

[Technology](https://www.zorraquino.com/en/approach/technology)

## Frequently asked questions about ARIA

### How do you check that ARIA really helps people use a component?

Test the component with the keyboard and assistive technologies, as well as reviewing its [attributes](https://www.zorraquino.com/en/dictionary/branding/attributes.html). The name, state and focus must match what happens: a control announced as expanded must show its content. ARIA does not add that behaviour on its own. Whenever a suitable HTML element exists, it is best to start from it and use additional attributes only when they describe a necessary function maintained by the application.

## Related concepts

- [Digital accessibility](https://www.zorraquino.com/en/dictionary/digital-accessibility)
- [HTML](https://www.zorraquino.com/en/dictionary/internet/html-language.html)
- [W3C](https://www.zorraquino.com/en/dictionary/internet/w3c.html)

## References

- [Accordion Pattern](https://www.w3.org/WAI/ARIA/apg/patterns/accordion/)
