Ir para o conteúdo principal
WBC - GovBR-DS
Copiar página como Markdown para IA

List

Componente estável e recomendada para novos projetos.
Anatomia, uso, comportamento visual e recomendações conceituais são mantidos pelo Padrão Digital de Governo. Esta página documenta a implementação Web Components e sua API executável.

Visão Geral​

O br-list organiza coleções verticais de itens homogêneos ou relacionados, como listas de contatos, tarefas ou configurações.

Adicione os itens (como br-item) no slot padrão. Se precisar de um título ou ações no topo da lista, use o slot header ou a propriedade title.

<br-list title="Configurações">
<br-item interactive>Notificações</br-item>
<br-item interactive>Segurança</br-item>
</br-list>

Quando usar​

  • Sequências verticais de itens com leitura linear.
  • Listas de opções simples ou links agrupados.

Quando evitar​

  • Dados em linhas e colunas com ordenação: use br-table.
  • Menu lateral de navegação da página: use br-menu.

Consulte as diretrizes de design do GovBR.

Desktop (100%)
Tablet - 768px
iPhone (iOS) - 390x844
Android - 360x800
Compartilhar URL
Ativar movimento reduzido
Mudar fundo
Abrir no StackBlitz
Mais opções
Tela cheia
Carregando preview…
HTML
Controles do componente
Console: logs, eventos e erros
Angular (Somente leitura)
React (Somente leitura)
Vue (Somente leitura)
Acessibilidade
Recolher controles e código
Desfazer alteração
Refazer alteração
Comparar alterações
Formatar código
Resetar código para o estado inicial
Escolher formato para copiar

Desempenho​

Para seções extensas que permanecem no DOM, consulte o guia de content-visibility. A propriedade reduz layout e pintura fora da viewport, mas não virtualiza os itens fornecidos por slot.

br-list organiza seus itens como um widget composto: Tab entra em um único item por vez e as setas movem o foco entre os demais. Use orientation="vertical" para listas verticais (padrão) ou orientation="horizontal" para listas horizontais.

TeclaComportamento
ArrowDown / ArrowUpNa orientação vertical, move para o próximo / item anterior.
ArrowRight / ArrowLeftNa orientação horizontal, move para o próximo / item anterior.
Enter / SpaceAtiva o item com foco.
Home / EndMove para o primeiro / último item navegável.
Tab / Shift+TabEntra ou sai da lista; não percorre cada item individualmente.

A navegação com setas dá a volta entre o primeiro e o último item. Itens desabilitados são ignorados. Em listas aninhadas, cada lista processa somente seus próprios itens. Controles de texto mantêm suas teclas de edição; componentes como br-dropdown e br-radio também podem consumir primeiro as teclas que lhes pertencem.

Cada br-item navegável gerenciado pela lista participa da sequência interna com roving tabindex: somente o item ativo é alcançado ao entrar com Tab. Use focusFirstItem() quando a lista for aberta por um componente que precise posicionar o foco no primeiro item.

Propriedades​

accordion​

Atributoaccordion
DescriçãoTítulo do grupo de accordion. br-list irmãs (mesmo elemento-pai) com o
mesmo valor formam um grupo e mantêm apenas uma aberta por vez — abrir uma
fecha as demais do grupo.

Sozinha já torna a lista recolhível (não precisa de collapse) e, como o
collapse, exige um cabeçalho (header ou slot header) como acionador.
Começa recolhida.
Tipostring
Valor padrãonull

collapse​

Atributocollapse
DescriçãoTorna a lista recolhível: o corpo é envolvido por um br-collapse interno
que abre e fecha ao acionar o cabeçalho. Começa recolhida.

Requer um cabeçalho (atributo header ou slot header) — ele é o acionador.
Sem cabeçalho não há como recolher.

Para "apenas uma aberta por vez" entre listas, use accordion.
Tipoboolean
Valor padrãofalse

customId​

Atributocustom-id
DescriçãoIdentificador único do componente.
Quando omitido, um valor é gerado automaticamente.

> Padrão: valor único gerado por generateUniqueId().
Tipostring
Valor padrãogenerateUniqueId()

density​

Atributodensity
DescriçãoModificador de densidade da lista. Aceita small, medium ou large.
Valores inválidos usam medium. Quando omitida ou null, nenhuma densidade é aplicada.
Tipo"large" | "medium" | "small"
Valor padrãonull

divider​

Atributodivider
DescriçãoIndica se a lista possui divisores (divider) entre os itens.
Tipoboolean
Valor padrãofalse
Atributoheader
DescriçãoDefine o texto do cabeçalho da lista.
Quando definido, também é usado como aria-label do elemento role="list",
fornecendo um nome acessível que leitores de tela anunciam ao entrar na lista.
Tipostring
Valor padrãonull

hideHeaderDivider​

Atributohide-header-divider
DescriçãoIndica que o divider para o título da lista estará oculto.
Tipoboolean
Valor padrãofalse

isHorizontal Componente mantido por compatibilidade; prefira a alternativa indicada na documentação.​

Atributois-horizontal
DepreciaçãoUse orientation.
DescriçãoIndica se a lista será horizontal. Por padrão, a lista é vertical.
Tipoboolean
Valor padrãofalse

listRole​

Atributolist-role
DescriçãoSemântica do host quando o conteúdo não representa itens de lista. Valores inválidos usam list.
Tipo"group" | "list"
Valor padrão'list'

orientation​

Atributoorientation
DescriçãoOrientação padrão. Quando informada, tem precedência sobre isHorizontal; valores inválidos usam vertical.
Tipo"horizontal" | "vertical"
Valor padrão---

Slots​

NomeDescrição
"default"Slot para os itens da lista.
"header"Slot para ações ou conteúdo do cabeçalho da lista.

Métodos​

focusFirstItem​

DescriçãoMove o foco para o primeiro item navegável da lista.
API pública para componentes que abrem a lista programaticamente
(ex.: br-dropdown), evitando acesso direto ao br-item.
AssinaturafocusFirstItem() => Promise<void>
Parâmetros---

CSS Shadow Parts​

NomeDescrição
"container"Wrapper principal da lista.

Dependências​

Usado por​

Depende de​

Gráfico​

Migração de <br-list> (1.x → 2.x)​

A lista da 2.x usa nomes que descrevem sua estrutura e delega comportamento de recolhimento aos recursos atuais de composição.

Propriedades​

API 1.xAPI 2.xAção na migração
dataToggle / dataUniquecollapse/accordion atuaisReestruture o comportamento usando os componentes atuais.
densitydensityMantenha.
hideTitleDividerhideHeaderDividerRenomeie a propriedade.
horizontalorientationUse orientation="horizontal" ou orientation="vertical".
spaceBetween—Remova; ajuste a distribuição na composição/layout.
titleheaderRenomeie a propriedade.

Exemplo​

1.x:

<br-list title="Serviços" horizontal hide-title-divider></br-list>

2.x:

<br-list header="Serviços" orientation="horizontal" hide-header-divider></br-list>
Comece aquiComponentesQuickstartsSobre o projetoRepositório GitLabVersõesDiscordGovBR-DSFAQWikiRedefinir cookies