Radio Group
StableUma resposta dentre um conjunto conhecido. Composto sobre Base UI RadioGroup. É um controle só feito de vários elementos: o grupo custa um Tab stop, e dentro dele as setas movem e escolhem ao mesmo tempo. Não há caminho de volta para "nada" — uma pergunta genuinamente opcional precisa de uma opção explícita, não de um grupo vazio. Passando de seis ou sete opções, o Select passa a economizar mais do que custa.
Instalação
npx up-web-ds add radio-groupPreview
Basic
Distribuição do item
Default
Distribuição do item
With Descriptions
Maturidade
With Disabled Option
Publicação
Cards
Notificações
Horizontal
Tema do preview
All states
Basic
Distribuição do item
Default
Distribuição do item
With Descriptions
Maturidade
With Disabled Option
Publicação
Cards
Notificações
Horizontal
Tema do preview
Usage
Props
RadioGroup
Estende RadioGroupPrimitive.Props. Aceita também os atributos padrão de um elemento React (275 não listados).
RadioGroupItem
Estende RadioPrimitive.Root.Props. Aceita também os atributos padrão de um elemento React (275 não listados).
prop obrigatória.
Composition
O RadioGroup é quem carrega o valor e o rótulo do conjunto; cada RadioGroupItem é uma opção dentro dele.
Metadata
Notas de acessibilidade
Teclado verificado por teste: o grupo inteiro custa um Tab stop — o segundo Tab sai dele —, as setas movem e escolhem ao mesmo tempo, a navegação dá a volta da última opção para a primeira, e uma opção desabilitada continua no grupo recusando a escolha. Leitor de tela verificado por teste: o grupo tem papel radiogroup nomeado pela pergunta via aria-labelledby, cada opção tem papel radio com aria-checked, a escolha é reportada pelo valor, o rótulo associado também escolhe, e aria-invalid é exposto no grupo sem trocar o papel dos controles. Touch verificado em navegador com emulação de toque em viewport de 375px: o círculo visível mede 16x16, mas o alvo desenhado pelo pseudo-elemento mede acima do mínimo de 24x24 da WCAG 2.2 SC 2.5.8, e a escolha por toque funciona pelo círculo e pelo rótulo. Reduced motion verificado com prefers-reduced-motion: reduce — a única transição, a do anel de foco, não é movimento e permanece: remover uma transição de cor não acomoda ninguém e custa a única pista que o estado tem. Nenhum deslocamento existe aqui para ser desligado.
Classificação
- Layer
- Primitive
- Domínio
- Domain-free (compartilhado)
- Categoria
- selection
- Status
- Stable
Origem e distribuição
- Fonte
- shadcn registry / radio-group
- Licença
- MIT
- Distribuição
- Interna
Acessibilidade
- Teclado: revisado
- Leitor de tela: revisado
- Touch: revisado
- Reduced motion: revisado
Dependências
- Pacotes
- @base-ui/react
- Ícones
- Nenhum
- Construído sobre
- Nenhum
- Usado por
- Questionnaire