See Storybook for React guidance of this component.
The following CSS variables can be overridden to customize Form components:
- Labels/Legends are built in to all design-system form fields but can be used on their own to create custom fields.
- Label/Legend text should be short and in sentence case.
- Avoid colons at the end of labels and legends.
- Don't place links or other interactive text in labels or legends. Those should go in the hint text.
- Don't use a field's placeholder attribute as the primary way to label the field.
- Each form field should have a clear, brief, and descriptive label.
- Labels should have a
forattribute, referencing the corresponding input's unique
idattribute. Only one label can be associated to each unique form element.
- Labels should be placed above their fields.
- Use a single legend for fieldset (this is required). One example of a common use of fieldset and legend is a question with radio button options for answers. The question text and radio buttons are wrapped in a fieldset, with the question itself being inside the legend tag.
- Describe what the user needs to do when the field is selected.
- Use a phrase or complete sentence.
- Start with an action verb and pair it with a noun to help it be clearer. Example:
Enter your age.
- Use the fewest words possible (i.e. don't use "please").
- Use sentence case.
For more information about how we tested and validated our work for each checklist item, read our component maturity documentation.
ColorMeets AA color contrast standards for accessibility and color blindness.Complete
Forced Colors Mode (FCM)While using FCM the components text is legible and improves readability.Complete
WCAG 2.1 Level AA ConformanceAll Axe checks for WCAG AA compliance have passed.Complete
Screen readersVoiceOver, NVDA, and JAWS screen readers provide concise communication and interaction.Complete
Keyboard navigationComponent is fully navigable with a keyboard.Not applicable
StorybookComponent has stories to cover all defined props.Complete
ResponsiveComponent designed to work in all responsive breakpoints.Complete
Spanish translationsIncludes Spanish translations for default text content.Complete
CodeTokens implemented in code.Complete
DesignTokens implemented in the Sketch.Complete