Visão Geral
O br-collapse mostra e esconde um bloco de conteúdo ao clicar no título. Funciona como um <details>.
< br-collapse >
< span slot = " trigger " > Quem pode solicitar? </ span >
< p > Qualquer pessoa com CPF regular. </ p >
</ br-collapse >
Use open para começar aberto. Para que só um item fique aberto por vez (sanfona), dê o mesmo accordion-group a todos:
< br-collapse accordion-group = " faq " > … </ br-collapse >
< br-collapse accordion-group = " faq " > … </ br-collapse >
Os ícones de abrir e fechar podem ser trocados por icon-to-show e icon-to-hide, como propriedade ou como slot.
Quando usar
Perguntas frequentes e conteúdos longos divididos em tópicos.
Seções opcionais de um formulário longo.
Quando evitar
Informação essencial, que precisa ficar sempre visível.
Alternar entre visões diferentes da mesma tela: use br-tab.
Consulte as diretrizes de design do GovBR .
index.html index.css index.js
Desfazer alteração Desfazer alteração
Refazer alteração Refazer alteração
Comparar alterações Comparar alterações
Formatar Formatar código
Reiniciar Resetar código para o estado inicial
Propriedades
accordionGroup
Atributo accordion-groupDescrição Identifica o grupo de accordion; quando informado, mantém apenas um item aberto por vez entre os irmãos do mesmo pai imediato. Tipo stringValor padrão null
colorMode
Atributo color-modeDescrição Tema visual do Collapse/Accordion. Tipo "dark" | "light"Valor padrão 'light'
customId
Atributo custom-idDescrição Identificador único do componente. Quando omitido, um valor é gerado automaticamente. > Padrão: valor único gerado por generateUniqueId(). Tipo stringValor padrão generateUniqueId()
divider
Atributo dividerDescrição Indica se o componente possui um divisor (divider) inferior. Tipo booleanValor padrão false
expansionDirection
Atributo expansion-directionDescrição Direção em que o conteúdo é expandido e para a qual o ícone aponta. Tipo "down" | "left" | "right" | "up"Valor padrão 'down'
iconPosition
Atributo icon-positionDescrição Define a posição do ícone no acionador: 'left' ou 'right'. Tipo "left" | "right"Valor padrão 'right'
iconToHide
Atributo icon-to-hideDescrição Identificador de ícone Font Awesome 5 Free presente no cache local, exibido quando o conteúdo está visível. Para ícones por classe CSS, use o slot icon-to-hide. Tipo stringValor padrão 'fa-solid:chevron-up'
iconToShow
Atributo icon-to-showDescrição Identificador de ícone Font Awesome 5 Free presente no cache local, exibido quando o conteúdo está oculto. Para ícones por classe CSS, use o slot icon-to-show. Tipo stringValor padrão 'fa-solid:chevron-down'
open
Atributo openDescrição Controla se o collapse está aberto. Tipo booleanValor padrão false
triggerVariant
Atributo trigger-variantDescrição Forma visual do acionador sem alterar sua semântica nativa. Tipo "button" | "surface" | "text"Valor padrão 'surface'
useIcons
Atributo use-iconsDescrição Controla se o identificador visual de expansão/retração será renderizado. Tipo booleanValor padrão true
Slots
Nome Descrição "default"Slot para o conteúdo expansível exibido ao abrir o collapse. "icon-to-hide"Ícone exibido quando o conteúdo está visível. Forma preferida para ícones por classe CSS; tem precedência sobre a prop iconToHide. "icon-to-show"Ícone exibido quando o conteúdo está oculto (ex.: <i slot="icon-to-show" class="fas fa-plus"></i>). Forma preferida para ícones por classe CSS; tem precedência sobre a prop iconToShow. "trigger"Slot para personalizar o acionador (texto, ícones, imagens, etc.).
Eventos
Evento Descrição Depreciação Propagação brCollapseCloseEvento emitido ao recolher. --- true brCollapseOpenEvento emitido ao expandir. --- true brDidClose Componente mantido por compatibilidade; prefira a alternativa indicada na documentação. Use brCollapseClose. true brDidOpen Componente mantido por compatibilidade; prefira a alternativa indicada na documentação. Use brCollapseOpen. true
Métodos
closeCollapse Componente mantido por compatibilidade; prefira a alternativa indicada na documentação.
Descrição Fecha o collapse programaticamente. Assinatura closeCollapse() => Promise<void>Depreciação Atualize a propriedade open. Parâmetros ---
openCollapse Componente mantido por compatibilidade; prefira a alternativa indicada na documentação.
Descrição Abre o collapse programaticamente. Assinatura openCollapse() => Promise<void>Depreciação Atualize a propriedade open. Parâmetros ---
toggle
Descrição Alterna o estado aberto. O elemento também redispara o evento nativo toggle no host; essa ocorrência é sintética (isTrusted === false). Assinatura toggle() => Promise<void>Parâmetros ---
CSS Shadow Parts
Nome Descrição "content"Área de conteúdo expansível. "details"Elemento details nativo do collapse. "trigger"Acionador (summary) do collapse.
Eventos nativos
Ouça toggle no br-collapse, como em um <details>. Ele ocorre sempre que o conteúdo abre ou fecha.
const collapse = document . querySelector ( 'br-collapse' ) ;
collapse . addEventListener ( 'toggle' , ( ) => console . log ( collapse . open ) ) ;
toggle não se propaga para os elementos pais. Para tratar vários collapses em um só listener, use brCollapseOpen e brCollapseClose, que se propagam. brDidOpen e brDidClose são os nomes antigos desses eventos.
Atributos nativos
open funciona como no <details>. Para agrupar itens em sanfona, use accordion-group, não o atributo name do <details>.
Dependências
Usado por
Depende de
Gráfico
Migração de <br-collapse> (1.x → 2.x)
collapsed indicava o estado fechado. Na 2.x, use open para o estado aberto, com o valor invertido.
1.x 2.x O que fazer — accordion-groupMantém só um item aberto por grupo. collapsedopenInverta o valor. nameIconCollapsedicon-to-hideÍcone mostrado quando o conteúdo está aberto. nameIconNotCollapsedicon-to-showÍcone mostrado quando o conteúdo está fechado. showIconuse-iconsUse use-icons="false" para esconder os ícones. titleslot="trigger"Coloque o título no slot.
Para acompanhar a abertura e o fechamento, ouça brCollapseOpen e brCollapseClose.
1.x:
< br-collapse title = " Detalhes " > Conteúdo </ br-collapse >
2.x:
< br-collapse >
< span slot = " trigger " > Detalhes </ span >
Conteúdo
</ br-collapse >