overview

01

variantes

02

Spinner

Operação rápida sem tempo conhecido.

Skeleton

Placeholder enquanto conteúdo carrega.

Progress determinado

Quando o tempo é conhecido.

Progress indeterminado

tamanhos

03

modifiers · api

04
proptipodefaultdescrição
.spinnerclass—círculo girando 32px
.spinner--smclass—16px
.spinner--lgclass—64px
.skeletonclass—placeholder shimmer
.progressclass—barra de progresso
.progress--indeterminateclass—sem porcentagem

quando usar

05

use

  • Spinner pra <2s sem tempo conhecido
  • Skeleton pra carregamento de página/lista
  • Progress pra upload/download com tempo
  • Skeleton mantém layout estável (sem CLS)

não use

  • Spinner pra >5s sem feedback adicional
  • Progress fake (porcentagem aleatória)
  • Skeleton com forma muito diferente do conteúdo real

acessibilidade

06 · wcag aa

código

07 · html
<!-- spinner --> <span class="spinner" role="status" aria-label="carregando"></span> <!-- skeleton --> <div class="skeleton" style="height: 20px"></div> <!-- progress --> <div class="progress"> <div class="progress-bar" style="width: 60%"></div> </div>