@utrecht/checkbox-css
v1.3.0
Published
Checkbox component for the Municipality of Utrecht based on the NL Design System architecture
Downloads
80
Keywords
Readme
Checkbox
Terminologie
- checkbox:
type="checkbox"
in HTML,role="checkbox"
in WAI-ARIA 1.2, "checkbox" in WAI-ARIA Authoring Practices. - checked:
checked
attribuut in HTML,aria-checked="true"
in WAI-ARIA,:checked
pseudo-class in CSS.
Class names
utrecht-checkbox
Introduction
Checkboxes are usually used to provide a way for users to make a range of selections (zero, one or more). They can also be used to tell users that they agree to specific terms.
When to use
Checkboxes are used for multiple choices, not for mutually exclusive choices. Each checkbox works independently from other checkboxes in the list, therefore checking an additional box does not affect any other selections.
Forms
Can be used in forms on a full page or in modals.
Terms and conditions
Turning the checkbox input on or off can indicate whether you agree to the terms.
Alternatives and related components
Use radio buttons to display a list of options where users can only make one choice.
Anatomy
The checkbox consists of:
- Label (optional): indicates what should be selected below.
- Checkbox input: a checkbox input that indicates the correct status. By default it is not active.
- Checkbox label: describes the information you can select or deselect.
- Helper text (optional): displays more information about the checkboxes
(Interactive) states
The checkbox contains the states normal, hover, disabled, error and focus.
Accessibility
Screen readers automatically report the status of the check box.
Labeling
External links
Keyboard support
- Move focus to each checkbox using the tab key (or shift + tab when tabbing backwards)
- Activate or deactivate checkboxes with the space key
Content guidelines
Checkbox labels
Checkbox labels must:
- Start with a capital letter
- Not end in punctuation if it’s a single sentence, word, or a fragment
- In case the checkbox asks to agree to the terms and conditions, use the first person
Best practices
Do's
Checkboxes must:
- Work independently of each other: selecting a checkbox may not change the selection status of another checkbox in the list.
- Be positively boxed: for example “Enable notifications” instead of “Disable notifications”.
- Always have a label handy when you use it to turn a setting on or off.
- Use label tags as click targets.
- Be arranged in a logical order, whether alphabetical, numeric, time-based or some other clear system.
- Link to more information or have a subtitle for more explanation. Don't rely on tooltips to explain a checkbox.
- If they are too long, run over the second line. This is preferable than truncation.
- If they are too long, they will be aligned left
- If they are too long, let the text flow under the checkbox so that the control and label are aligned at the top.
Don'ts
Checkboxes must:
- Not cut with an omit task if the label is too long and run over 2 lines.
Relevante WCAG eisen
- WCAG eis 1.3.5:
- Gebruik
aria-controls
als de checkbox een regio zichtbaar of onzichtbaar maakt.
- Gebruik
- WCAG eis 2.4.7: focus moet zichtbaar zijn.
- WCAG eis 2.5.5: de checkbox moet groot genoeg zijn om aan te klikken, ten minste 44×44px.