Use Tabs quando a interface precisar de abas com roving tabindex e painéis associados.
Tabs
Abas com roving tabindex e painéis associados. A documentação abaixo separa composição, comportamento e adaptação visual de cada variante.
Evite a família quando uma composição semântica mais simples comunicar a mesma ação com menos carga visual.
A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.
Indicator animado (padrão)
Indicator animado (padrão), preservado do laboratório original e isolado para uso e teste independente.
HTML e exemplo
<div class="sc-tabs sc-tabs--indicator">
<div class="sc-tablist">
<button class="sc-tab" type="button" aria-selected="true">Visão geral</button>
<button class="sc-tab" type="button" aria-selected="false">Config</button>
<button class="sc-tab" type="button" aria-selected="false">Logs</button>
</div>
<div class="sc-tabpanel">Conteúdo da visão geral.</div>
<div class="sc-tabpanel" hidden="">Conteúdo de configuração.</div>
<div class="sc-tabpanel" hidden="">Conteúdo de logs.</div>
</div>Classes, JavaScript e API
Inicialize tabs após o DOM. Os atributos data-* do exemplo são a API declarativa.
- Plugin
- tabs
- Dependências
- smart-ui.js
- Desde
- 0.1.0
Acessibilidade, teclado e movimento
- Foco visível e ordem de leitura preservados.
- Rótulos acessíveis devem acompanhar controles sem texto.
- A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
Não depende de movimento contínuo.
Temas e responsividade
Compatível com os temas Default, Clean e Tech nos modos claro, escuro e sistema.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.
SmartIcons (sem emojis)
SmartIcons (sem emojis), preservado do laboratório original e isolado para uso e teste independente.
HTML e exemplo
<div class="sc-tabs sc-tabs--indicator">
<div class="sc-tablist">
<button class="sc-tab" type="button" aria-selected="true"><i class="sc-icon" data-smart-icon="home"></i> Home</button>
<button class="sc-tab" type="button" aria-selected="false"><i class="sc-icon" data-smart-icon="box"></i> Assets</button>
<button class="sc-tab" type="button" aria-selected="false"><i class="sc-icon" data-smart-icon="settings"></i> Settings</button>
</div>
<div class="sc-tabpanel">Conteúdo Home.</div>
<div class="sc-tabpanel" hidden="">Conteúdo Assets.</div>
<div class="sc-tabpanel" hidden="">Conteúdo Settings.</div>
</div>Classes, JavaScript e API
Inicialize tabs após o DOM. Os atributos data-* do exemplo são a API declarativa.
- Plugin
- tabs
- Dependências
- smart-ui.js
- Desde
- 0.1.0
Acessibilidade, teclado e movimento
- Foco visível e ordem de leitura preservados.
- Rótulos acessíveis devem acompanhar controles sem texto.
- A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
Não depende de movimento contínuo.
Temas e responsividade
Compatível com os temas Default, Clean e Tech nos modos claro, escuro e sistema.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.
Pills + contadores
Pills + contadores, preservado do laboratório original e isolado para uso e teste independente.
HTML e exemplo
<div class="sc-tabs sc-tabs--pills sc-tabs--indicator">
<div class="sc-tablist">
<button class="sc-tab" type="button" aria-selected="true">Inbox <span class="sc-badge sc-badge-secondary">12</span></button>
<button class="sc-tab" type="button" aria-selected="false">Ativos <span class="sc-badge sc-badge-success">3</span></button>
<button class="sc-tab" type="button" aria-selected="false">Alertas <span class="sc-badge sc-badge-danger">1</span></button>
</div>
<div class="sc-tabpanel">Conteúdo Inbox.</div>
<div class="sc-tabpanel" hidden="">Conteúdo Ativos.</div>
<div class="sc-tabpanel" hidden="">Conteúdo Alertas.</div>
</div>Classes, JavaScript e API
Inicialize tabs após o DOM. Os atributos data-* do exemplo são a API declarativa.
- Plugin
- tabs
- Dependências
- smart-ui.js
- Desde
- 0.1.0
Acessibilidade, teclado e movimento
- Foco visível e ordem de leitura preservados.
- Rótulos acessíveis devem acompanhar controles sem texto.
- A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
Não depende de movimento contínuo.
Temas e responsividade
Compatível com os temas Default, Clean e Tech nos modos claro, escuro e sistema.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.
Underline + indicator (linha animada)
Underline + indicator (linha animada), preservado do laboratório original e isolado para uso e teste independente.
HTML e exemplo
<div class="sc-tabs sc-tabs--underline sc-tabs--indicator">
<div class="sc-tablist">
<button class="sc-tab" type="button" aria-selected="true">Visão</button>
<button class="sc-tab" type="button" aria-selected="false">Métricas</button>
<button class="sc-tab" type="button" aria-selected="false">Atividade</button>
</div>
<div class="sc-tabpanel">Conteúdo visão.</div>
<div class="sc-tabpanel" hidden="">Conteúdo métricas.</div>
<div class="sc-tabpanel" hidden="">Conteúdo atividade.</div>
</div>Classes, JavaScript e API
Inicialize tabs após o DOM. Os atributos data-* do exemplo são a API declarativa.
- Plugin
- tabs
- Dependências
- smart-ui.js
- Desde
- 0.1.0
Acessibilidade, teclado e movimento
- Foco visível e ordem de leitura preservados.
- Rótulos acessíveis devem acompanhar controles sem texto.
- A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
Não depende de movimento contínuo.
Temas e responsividade
Compatível com os temas Default, Clean e Tech nos modos claro, escuro e sistema.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.
Segmented (switcher)
Segmented (switcher), preservado do laboratório original e isolado para uso e teste independente.
HTML e exemplo
<div class="sc-tabs sc-tabs--segmented">
<div class="sc-tablist">
<button class="sc-tab" type="button" aria-selected="true">Hoje</button>
<button class="sc-tab" type="button" aria-selected="false">7 dias</button>
<button class="sc-tab" type="button" aria-selected="false">30 dias</button>
</div>
<div class="sc-tabpanel">Dados de hoje.</div>
<div class="sc-tabpanel" hidden="">Dados da semana.</div>
<div class="sc-tabpanel" hidden="">Dados do mês.</div>
</div>Classes, JavaScript e API
Inicialize tabs após o DOM. Os atributos data-* do exemplo são a API declarativa.
- Plugin
- tabs
- Dependências
- smart-ui.js
- Desde
- 0.1.0
Acessibilidade, teclado e movimento
- Foco visível e ordem de leitura preservados.
- Rótulos acessíveis devem acompanhar controles sem texto.
- A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
Não depende de movimento contínuo.
Temas e responsividade
Compatível com os temas Default, Clean e Tech nos modos claro, escuro e sistema.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.
Vertical + SmartIcons
Vertical + SmartIcons, preservado do laboratório original e isolado para uso e teste independente.
HTML e exemplo
<div class="sc-tabs sc-tabs--vertical">
<div class="sc-tablist">
<button class="sc-tab" type="button" aria-selected="true"><i class="sc-icon" data-smart-icon="settings"></i> Geral</button>
<button class="sc-tab" type="button" aria-selected="false"><i class="sc-icon" data-smart-icon="bell"></i> Notificações</button>
<button class="sc-tab" type="button" aria-selected="false"><i class="sc-icon" data-smart-icon="users"></i> Integrações</button>
</div>
<div class="sc-tabpanel">Configurações gerais.</div>
<div class="sc-tabpanel" hidden="">Preferências de notificação.</div>
<div class="sc-tabpanel" hidden="">Integrações e chaves.</div>
</div>Classes, JavaScript e API
Inicialize tabs após o DOM. Os atributos data-* do exemplo são a API declarativa.
- Plugin
- tabs
- Dependências
- smart-ui.js
- Desde
- 0.1.0
Acessibilidade, teclado e movimento
- Foco visível e ordem de leitura preservados.
- Rótulos acessíveis devem acompanhar controles sem texto.
- A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
Não depende de movimento contínuo.
Temas e responsividade
Compatível com os temas Default, Clean e Tech nos modos claro, escuro e sistema.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.
Scroll (muitos tabs)
Scroll (muitos tabs), preservado do laboratório original e isolado para uso e teste independente.
HTML e exemplo
<div class="sc-tabs sc-tabs--scroll sc-tabs--indicator">
<div class="sc-tablist">
<button class="sc-tab" type="button" aria-selected="true">Overview</button>
<button class="sc-tab" type="button" aria-selected="false">Performance</button>
<button class="sc-tab" type="button" aria-selected="false">Usuários</button>
<button class="sc-tab" type="button" aria-selected="false">A/B Tests</button>
<button class="sc-tab" type="button" aria-selected="false">Erros</button>
<button class="sc-tab" type="button" aria-selected="false">Logs</button>
<button class="sc-tab" type="button" aria-selected="false">Alertas</button>
<button class="sc-tab" type="button" aria-selected="false">Integrações</button>
<button class="sc-tab" type="button" aria-selected="false">Webhooks</button>
</div>
<div class="sc-tabpanel">Tablist com scroll horizontal automático.</div>
<div class="sc-tabpanel" hidden="">Performance.</div>
<div class="sc-tabpanel" hidden="">Usuários.</div>
<div class="sc-tabpanel" hidden="">A/B Tests.</div>
<div class="sc-tabpanel" hidden="">Erros.</div>
<div class="sc-tabpanel" hidden="">Logs.</div>
<div class="sc-tabpanel" hidden="">Alertas.</div>
<div class="sc-tabpanel" hidden="">Integrações.</div>
<div class="sc-tabpanel" hidden="">Webhooks.</div>
</div>Classes, JavaScript e API
Inicialize tabs após o DOM. Os atributos data-* do exemplo são a API declarativa.
- Plugin
- tabs
- Dependências
- smart-ui.js
- Desde
- 0.1.0
Acessibilidade, teclado e movimento
- Foco visível e ordem de leitura preservados.
- Rótulos acessíveis devem acompanhar controles sem texto.
- A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
Não depende de movimento contínuo.
Temas e responsividade
Compatível com os temas Default, Clean e Tech nos modos claro, escuro e sistema.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.
Tabs dentro de Card
Tabs dentro de Card, preservado do laboratório original e isolado para uso e teste independente.
HTML e exemplo
<div class="sc-card sc-card-outline sc-card-compact">
<div class="sc-tabs sc-tabs--underline sc-tabs--indicator sc-tabs--bare">
<div class="sc-tablist">
<button class="sc-tab" type="button" aria-selected="true">Resumo</button>
<button class="sc-tab" type="button" aria-selected="false">Detalhes</button>
<button class="sc-tab" type="button" aria-selected="false">Histórico</button>
</div>
<div class="sc-tabpanel">Conteúdo no card.</div>
<div class="sc-tabpanel" hidden="">Detalhes no card.</div>
<div class="sc-tabpanel" hidden="">Histórico no card.</div>
</div>
</div>Classes, JavaScript e API
Inicialize tabs após o DOM. Os atributos data-* do exemplo são a API declarativa.
- Plugin
- tabs
- Dependências
- smart-ui.js
- Desde
- 0.1.0
Acessibilidade, teclado e movimento
- Foco visível e ordem de leitura preservados.
- Rótulos acessíveis devem acompanhar controles sem texto.
- A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
Não depende de movimento contínuo.
Temas e responsividade
Compatível com os temas Default, Clean e Tech nos modos claro, escuro e sistema.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.
Tablist + ações (header)
Tablist + ações (header), preservado do laboratório original e isolado para uso e teste independente.
HTML e exemplo
<div class="sc-tabs sc-tabs--underline sc-tabs--indicator">
<div class="sc-tabs-head">
<div class="sc-tablist">
<button class="sc-tab" type="button" aria-selected="true">Visão</button>
<button class="sc-tab" type="button" aria-selected="false">Equipe</button>
<button class="sc-tab" type="button" aria-selected="false">Ajustes</button>
</div>
<div class="sc-tabs-actions">
<button class="sc-btn sc-btn-outline sc-btn-sm" type="button">Exportar</button>
<button class="sc-btn sc-btn-primary sc-btn-sm" type="button">Novo</button>
</div>
</div>
<div class="sc-tabpanel">Tabs com ações no header.</div>
<div class="sc-tabpanel" hidden="">Equipe.</div>
<div class="sc-tabpanel" hidden="">Ajustes.</div>
</div>Classes, JavaScript e API
Inicialize tabs após o DOM. Os atributos data-* do exemplo são a API declarativa.
- Plugin
- tabs
- Dependências
- smart-ui.js
- Desde
- 0.1.0
Acessibilidade, teclado e movimento
- Foco visível e ordem de leitura preservados.
- Rótulos acessíveis devem acompanhar controles sem texto.
- A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
Não depende de movimento contínuo.
Temas e responsividade
Compatível com os temas Default, Clean e Tech nos modos claro, escuro e sistema.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.
Header + menu (overflow)
Header + menu (overflow), preservado do laboratório original e isolado para uso e teste independente.
HTML e exemplo
<div class="sc-tabs sc-tabs--underline sc-tabs--indicator">
<div class="sc-tabs-head">
<div class="sc-tablist">
<button class="sc-tab" type="button" aria-selected="true">Geral</button>
<button class="sc-tab" type="button" aria-selected="false">Cobrança</button>
<button class="sc-tab" type="button" aria-selected="false">Segurança</button>
</div>
<div class="sc-tabs-actions">
<div class="sc-menu">
<button class="sc-btn sc-btn-glass sc-btn-sm" type="button" data-menu-trigger="">Mais</button>
<div class="sc-menu-popover">
<button class="sc-menu-item" type="button">Auditoria</button>
<button class="sc-menu-item" type="button">Webhooks</button>
<div class="sc-menu-sep"></div>
<button class="sc-menu-item" type="button">Suporte</button>
</div>
</div>
</div>
</div>
<div class="sc-tabpanel">Tabs com menu no header.</div>
<div class="sc-tabpanel" hidden="">Cobrança.</div>
<div class="sc-tabpanel" hidden="">Segurança.</div>
</div>Classes, JavaScript e API
Inicialize tabs após o DOM. Os atributos data-* do exemplo são a API declarativa.
- Plugin
- tabs
- Dependências
- smart-ui.js
- Desde
- 0.1.0
Acessibilidade, teclado e movimento
- Foco visível e ordem de leitura preservados.
- Rótulos acessíveis devem acompanhar controles sem texto.
- A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
Não depende de movimento contínuo.
Temas e responsividade
Compatível com os temas Default, Clean e Tech nos modos claro, escuro e sistema.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.
Workspace switcher
Workspace switcher, composição própria do Smart UI para produtos e experiências digitais.
HTML e exemplo
<div class="sc-tabs sc-showcase-tabs"><div role="tablist"><button class="sc-tab is-active" role="tab" aria-selected="true">Visão geral</button><button class="sc-tab" role="tab" aria-selected="false">Atividade</button><button class="sc-tab" role="tab" aria-selected="false">Configuração</button></div><section class="sc-card" role="tabpanel"><strong>Workspace switcher</strong><p>Conteúdo associado à aba selecionada.</p></section></div>Classes, JavaScript e API
Inicialize tabs após o DOM. Os atributos data-* do exemplo são a API declarativa.
- Plugin
- tabs
- Dependências
- smart-ui.js
- Desde
- 0.1.0
Acessibilidade, teclado e movimento
- Mantém contraste de texto e foco visível.
- Conteúdo e ações permanecem disponíveis sem animação.
- A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
Possui fallback para prefers-reduced-motion.
Temas e responsividade
Compatível com os temas Default, Clean e Tech nos modos claro, escuro e sistema.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.
Analytics views
Analytics views, composição própria do Smart UI para produtos e experiências digitais.
HTML e exemplo
<div class="sc-tabs sc-showcase-tabs"><div role="tablist"><button class="sc-tab is-active" role="tab" aria-selected="true">Visão geral</button><button class="sc-tab" role="tab" aria-selected="false">Atividade</button><button class="sc-tab" role="tab" aria-selected="false">Configuração</button></div><section class="sc-card" role="tabpanel"><strong>Analytics views</strong><p>Conteúdo associado à aba selecionada.</p></section></div>Classes, JavaScript e API
Inicialize tabs após o DOM. Os atributos data-* do exemplo são a API declarativa.
- Plugin
- tabs
- Dependências
- smart-ui.js
- Desde
- 0.1.0
Acessibilidade, teclado e movimento
- Mantém contraste de texto e foco visível.
- Conteúdo e ações permanecem disponíveis sem animação.
- A interação preserva foco visível, ordem lógica de Tab e acionamento por Enter ou Espaço quando aplicável.
Possui fallback para prefers-reduced-motion.
Temas e responsividade
Compatível com os temas Default, Clean e Tech nos modos claro, escuro e sistema.
As composições reduzem colunas, preservam alvos de toque e evitam rolagem horizontal a partir de 320 px.