components
RadioButton
v.1.0.0 | SaturnAccessibility is a crucial consideration when designing and developing components, as it ensures that all users, regardless of their abilities or limitations, can interact effectively with your project. In this section, we will explore how our radioButton has been developed with accessibility in mind, ensuring that all users have a smooth and meaningful experience.
The following mencioned props and recommendations are optional, althougt at Kubit strongly recommend their use to meet accessibility standars.
Text
Radio buttons are followed by a label that clearly indicates their purpose. Helper texts and error messages must clearly indicate the relevant information. In error messages, when possible, include information about how to correct them.
Screenreader and Keyboard interactions
To support screen reader users, this component should include WAI ARIA attributes (the alt and aria specific props) to have a correct semantic markup. Screen reader and keyboard users should be able to operate with all the interactive elements.
If a radio group doesn’t have a default selected, the focus moves to the first radio button in the group.
Selectable area
Radiobutton text labels are also selectable. The area for clicking and selecting radiobuttons needs to be large enough. This is especially important for mobile and app display views.
Change in context
If possible don't cause a change in context when selecting a radiobutton. Although it is not recommended, if there is no choice but to cause a change in context by selecting a radio button component, screen reader users should be warned.
Visual design
Color contrast
- For text labels in links needs a color contrast of at least 4'5:1 for regular text and 3:1 for large scale (18pt) or bold text (14pt).
- For the rest of elements and the focus indicator at least of 3:1 color contrast ratio is needed.
Target Size
The area for clicking and tapping buttons must be large enough. The recommended size of the target for pointer inputs is at least 24x24px and 44x44px for best readability.
Related components
Check other components specific accesibility recommendations: