Progress Indicators

Indica in maniera visuale lo stato attivo e di avanzamento di un’operazione

E' possibilile visualizzare un cerchio, un semicerchio e testo per indicare il progresso o l’avanzamento di un’operazione in corso.

Va inizializzato con il comando javascript:

progressDonut.generate('#ID_ELEMENTO', 0)

Dove il primo parametro corrisponde con l’id univoco dell’elemento .progress-donut e il secondo con la percentuale di completamento.

Per aggiornare lo stato del testo, del testo per screen reader e del progresso circolare utilizzare lo stesso comando con il nuovo valore di progresso:

progressDonut.generate('#ID_ELEMENTO', 25)

Esempio

Caricamento in avvio

Caricamento in avvio

Caricamento in corso

Caricamento in corso

  <div class="row">
    <div class="col-12 col-sm-6">
      <p><strong>Caricamento in avvio</strong></p>
      <div class="progress-donut-wrapper">
        <div id="donut-uno" class="progress-donut"></div>
        <span class="sr-only">Caricamento in avvio</span>
      </div>
    </div>
    <div class="col-12 col-sm-6">
      <p><strong>Caricamento in corso</strong></p>
      <div class="progress-donut-wrapper">
        <div id="donut-due" class="progress-donut"></div>
        <span class="sr-only">Caricamento in corso</span>
      </div>
    </div>
  </div>

Progress Bar

Le Progress Bar sono costruite con due elementi HTML, CSS in linea per impostare la larghezza e alcuni attributi.

  • Utilizziamo .progress come contenitore che indica il valore massimo della barra di avanzamento.
  • Utilizziamo .progress-bar come barra interna per indicare fin dove si è arrivati con l’avanzamento.
  • La classe .progress-bar richiede uno stile inline, una classe di utility di dimensionamento o un CSS personalizzato per impostare la larghezza.

Per aggiungere etichette con testo che indica il progresso racchiudere la Progress Bar in un <div> con classe .progress-bar-wrapper e aggiungere un <div> interno con classe .progress-bar-label.

Quando non è possibile stabilire una percentuale di progressione utilizzare una Progress Bar di tipo indeterminato, aggiungendo una classe .progress-indeterminate al contenitore .progress ed eliminando gli attributi aria- dalla Progress Bar.

Progresso 75%
In elaborazione...
<!-- senza indicatore -->
<div class="progress">
  <div class="progress-bar" role="progressbar" style="width: 30%" aria-valuenow="30" aria-valuemin="0" aria-valuemax="100"></div>
</div>
<!-- con indicatore -->
<div class="progress-bar-wrapper mt-5 mb-5">
  <div class="progress-bar-label"><span class="sr-only">Progresso </span>75%</div>
  <div class="progress">
    <div class="progress-bar" role="progressbar" style="width: 75%" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100"></div>
  </div>
</div>
<!-- indeterminato -->
<div class="progress progress-indeterminate">
  <span class="sr-only">In elaborazione...</span>
  <div class="progress-bar" role="progressbar"></div>
</div>

Spinner

L’elemento Spinner comunica lo stato attivo di un’operazione ma non il progresso percentuale della stessa. È utile quindi quando non è possibile determinare il tempo necessario a completare una procedura.

Per ottenere una versione ridotta dello Spinner aggiungere allo stesso la classe .size-sm. Notare l’inclusione di uno <span> riservato agli screen reader.

Spinner standard

Caricamento...

Spinner Attivo

Caricamento...

Small

Caricamento...

Small attivo

Caricamento...
<div class="container">
  <div class="row">
    <div class="col-6 col-lg-3">
      <p class="mb-3"><strong>Spinner standard</strong></p>
      <div class="progress-spinner">
        <span class="sr-only">Caricamento...</span>
      </div>
    </div>
    <div class="col-6 col-lg-3">
      <p class="mb-3"><strong>Spinner Attivo</strong></p>
      <div class="progress-spinner progress-spinner-active">
        <span class="sr-only">Caricamento...</span>
      </div>
    </div>
    <div class="col-6 col-lg-3 mt-3 mt-lg-0">
      <p class="mb-3"><strong>Small</strong></p>
      <div class="progress-spinner size-sm">
        <span class="sr-only">Caricamento...</span>
      </div>
    </div>
    <div class="col-6 col-lg-3 mt-3 mt-lg-0">
      <p class="mb-3"><strong>Small attivo</strong></p>
      <div class="progress-spinner progress-spinner-active size-sm">
        <span class="sr-only">Caricamento...</span>
      </div>
    </div>
  </div>
</div>
Torna su