Button Group
Required Choice
A required choice that shows its own error: while nothing is checked the root matches :not(:has(input:checked)) and the whole group turns red.
What you can change
- the set of options through options
- the question text through question
- the error text through error and its id through errorId
A link for your AI agent: preview, code and instructions.
Preview
Use it with AI
- 1. Copy the link.
- 2. Write to your agent in your own words and drop the link into the sentence.
- 3. The agent opens the link and installs the component from the registry.
put this on the home page as the hero:
https://vibeui.ru/c/buttongroup-033?lang=en&theme=dark
Not sure where to paste it? Step-by-step guide
Show the full instructions
What the link says, spelled out. Use it when your agent cannot open links — paste this text instead.
Loading…
For developers
The install command lives in the “Component source” block below — a signed link that stays valid for 24 hours.
Technical notes
The component is self-contained: one file, no dependencies, its own palette in the --vibeui-buttongroup-033-* variables. It is a server component: no radio is checked in advance — otherwise the form would submit a value the user never chose. The error state is described by a single [data-vibeui-block]:not(:has(input:checked)) selector: it reddens the segment borders and reveals the error line, all without handlers. The error is tied to the fieldset through aria-describedby and duplicated by an icon: colour alone does not communicate it. The legend is visible, with float:left;width:100%;clear:both — without the clear the following flex children would wrap around it; the asterisk is marked aria-hidden, and the requirement is carried by the required attributes on the inputs.
Tags
- buttongroup
- validation
- required
- css-only
Component source
The same file your agent installs. Here in case you would rather copy it by hand.
Loading…