COMPONENTS
Form groups
One form-group class keeps a native label, control and help text together. Theme and control settings inherit from the parent; use fieldset and legend for related choices.
Usage
Markup: .form-group; optional .field-error
Behaviour: Error display and announcements are application-owned.
- Every control needs an accessible label. Match label for to a unique control id. Associate help and error text using aria-describedby; placeholders do not replace labels.
- Use native required, disabled and readonly where appropriate. aria-invalid="true" marks a known validation error; your server or application owns the error text and when it is shown. CSS does not generate validation messages.
- The optional field-error class styles explicit error text. State the error in words and explain how to fix it; do not rely only on a red border.
- Use existing grid and stack classes for arrangement. This component adds no grid system. Optional glass affects existing fieldsets, while text controls retain their normal readable backing.
Component API and styling module · Inherited appearance settings
Label, control and help
Only the group needs a class. IDs connect the label and explanation to the native control.
A known validation error
This static server-validation example includes an explicit error and aria-invalid. No automatic validation script is added.
Responsive grouped fields
Existing grid layout arranges groups. A textarea and select retain native behavior and shared control styling.
Related choices in a fieldset
The legend names the group. Each radio has its own native label. This fieldset inherits optional glass material.