Examples
Guidance
When to use
Use this date field when:
- User flow requires inputs be separated
- Functionality/back-end systems can't support a single date field entry
Generally used for more memorable dates like date of birth, marriage date, or income start date.
When to consider alternatives
- Don't use this date field if either single-input or date picker are feasible. This pattern is least effective with users.
Usage
- Allow users to enter one-digit numbers with or without the "0" prior to the number. Example: "1" as well as "01" for a month or day.
Accessibility
The multi-input date field component has been tested against, and meets, WCAG 2.0 standards for text size, color contrast, and screen reader usage.
- These text fields should follow the accessibility guidelines for all text inputs.
- Our component does not auto-advance the focus from one field to another. This is by design to make sure that keyboard users are able to correct mistakes.
- Utilize the required
label
prop to provide a meaningful description of the multi-input date field. Optionally, you can use thehint
prop to provide additional contextual information or clearer directions for use. Using the label and hint props provide a number of benefits to users such as lowering the cognitive burden and increasing the interaction area when using the multi-input date field.
Accessibility testing
Screen reader testing
- Screen readers should announce that each individual field is editable.
- If the field already has content within it, the screen reader should announce the existing contents.
- Whether the field is required or not should be announced by the screen reader.
- The text content supplied to the label prop should be read first, then any text supplied to the hint prop should be read, then finally the content within the date field.
Keyboard testing
- Using only a keyboard, you can navigate to each text field, type in it, and navigate away from it.
- Each field should have a visible focus indicator, and highlight any existing contents, when navigated to.
Zoom magnification
- When zoomed to 200%, text fields must remain legible, functional, and properly sized.
Code
React
Review Storybook for React guidance of this component.
Style customization
The following CSS variables can be overridden to customize Input/Form components:
Related patterns
Component maturity
For more information about how we tested and validated our work for each checklist item, read our component maturity documentation.