Attiva o disattiva overlay contestuali per visualizzare liste di link ed altro ancora con questi menù a tendina.
Il plugin JavaScript per costruire dropdown è basato su una libreria di terze parti, Popper.js, che si occupa del posizionamento dinamico del dropdown stesso in congiunzione con la sua posizione all’interno del viewport.
Per il corretto funzionamento dei dropdown è necessario assicurarsi che sia incluso il file bootstrap-italia.bundle.min.js che contiene già ogni dipendenza, oppure che il file popper.min.js sia incluso prima del file bootstrap-italia.min.js. Maggiori informazioni si possono trovare alla pagina introduttiva sull’utilizzo del JavaScript di Bootstrap Italia.
Per l’attivazione di un dropdown è sufficiente racchiudere il link per l’apertura e il menu a discesa all’interno di un elemento con classe .dropdown, o un altro elemento che dichiari la position: relative;. I dropdown possono essere attivati da elementi <a> o <button> per soddisfare al meglio le tue esigenze.
Accessibilità
Lo standard WAI ARIA definisce un widget role="menu", che però è specifico per i menu applicativi che attivano azioni o funzioni. I menu ARIA possono contenere solo voci di menu, voci di menu di caselle di controllo, voci di menu dei pulsanti di opzione, gruppi di pulsanti di opzione e sottomenu.
I dropdown di Bootstrap, al contrario, sono progettati per essere generici e applicabili a una varietà di situazioni e strutture di markup. Ad esempio, è possibile creare elenchi a discesa contenenti input e controlli di moduli aggiuntivi, ad esempio campi di ricerca o moduli di accesso. Per questo motivo, Bootstrap non si aspetta (né aggiunge automaticamente) alcuno degli attributi di aria e di ruolo richiesti per i veri menu ARIA. Gli autori dovranno includere questi attributi più specifici.
Tuttavia, Bootstrap aggiunge il supporto integrato per la maggior parte delle interazioni standard del menu della tastiera, come la possibilità di spostarsi tra i singoli elementi .list-item usando i tasti cursore e chiude il menu con il tasto ESC.
Dropdown button
Ogni singolo .btn può essere trasformato in un pulsante per l’apertura di dropdown con del semplice markdown HTML.
Il design di default dei dropdown richiede l’applicazione della classe .btn-dropdown. I link o le voci all’interno del dropdown devono essere contenute in un elemento .link-list.
Ovviamente sono disponibili tutte le varianti già disponibili per i pulsanti. Di seguito, un esempio di utilizzo con classi .btn-primary, .btn-secondary e .btn-danger:
Le voci del menu che viene aperto al click sul pulsante possono essere personalizzate, così come il menù stesso.
Menu voci attive
Aggiungere la classe .active ai link del dropdown che si vogliono mostrare come attivi. Per questioni di accessibilità è consigliabile aggiungere <span class="visually-hidden"> attivo</span> in coda al testo degli elementi attivi.
Aggiungere la classe .disabled ai link del dropdown che si vogliono mostrare come disabilitati. Includere anche la proprietà aria-disabled="true" per comunicare lo stato disabilitato agli utenti dotati di screen reader.
Per ottenere un dropdown menu largo quanto l’elemento che contiene il dropdown button è sufficiente aggiungere la classe.full-width al menù stesso. I link e testi contenuti al suo interno saranno disposti in orizzontale.
Ai link contenuti nel menù può essere aggiunta un’icona illustrativa allineata a destra utilizzando le classi .right-icon sul link <a> e .right sul tag contenitore dell’icona.
Ai link contenuti nel menù può essere aggiunta un’icona illustrativa allineata a sinistra utilizzando le classi .left-icon sul link <a> e .left sul tag contenitore dell’icona.
Per consultare altri esempi, vedere l’utilizzo di un dropdown con interi form al suo interno, capire meglio come utilizzare attributi data- per l’attivazione o come estendere il funzionamento del plugin JavaScript del dropdown di Bootstrap 5.2.3 , si rimanda alla documentazione sul sito di Bootstrap.