<!-- Navigation -->
<nav class="navbar" role="navigation">
</nav>
<!-- /Navigation -->
In questo modo abbiamo inizializzato lo spazio per nostra barra di navigazione, semplice no? Però non ci è ancora possibile visualizzarla (o meglio ...provate l'esercizio!), abbiamo ancora del lavoro da fare. Abbiamo due diversi stili per la barra:
*-static-*
.
Per applicare queste classi alla nostra barra sarà sufficiente inserirle all'interno della formula class del tag <nav>.
<!-- Navigation -->
<nav class="navbar navbar-inverse navbar-fixed-top" role="navigation">
</nav>
<!-- /Navigation -->
Prova a cambiare il colore della barra tra default ed inverse e la sua posizione all'interno della pagina tra top e bottom.
puoi cambiare il colore di fondo della pagina aggiungendo questo codice CSS:
body { background: #3caf52 !important;}
come visto nella precedente lezione.
<!-- Navigation -->
<nav class="navbar navbar-inverse navbar-fixed-top" role="navigation">
<div class="container">
</div>
<!-- /.container -->
</nav>
<!-- /Navigation -->
Questo sarà la "scatola" che conterrà le due strutture della navbar, sia quella per dispositivi desktop che mobile. Anche in questo caso, dovremo pensare allo sviluppo in un ottica di inscatolamento. Quindi, definiamo l'header della nostra barra che conterrà il pulsante d'attivazione del menu ed il logo (o nome) del nostro sito:
<!-- Navigation -->
<nav class="navbar navbar-inverse navbar-fixed-top" role="navigation">
<div class="container">
<!-- Brand e toggle per mobile -->
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-collapse">
<span class="sr-only">Toggle navigazione</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<!-- Brand -->
<a class="navbar-brand">WD</a>
</div>
</div>
<!-- /.container -->
</nav>
<!-- /Navigation -->
È importante notare l'oggetto con classe sr-only, questo non verrà visualizzato a video, ma risulta di vitale importanza per gli screen readers e dunque l'accessibilità della pagina. Le altre icone, sono le "linee" che vediamo all'interno del pulsante che si verrà a creare sulla barra.
<!-- Navigation -->
<nav class="navbar navbar-inverse navbar-fixed-top" role="navigation">
<div class="container">
<!-- Brand e toggle per mobile -->
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-collapse">
<span class="sr-only">Toggle navigazione</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<!-- Brand -->
<a class="navbar-brand">WD</a>
</div>
<!-- Insieme di links, forms, and altri componenti per la navbar -->
<div class="collapse navbar-collapse" id="navbar-collapse">
<ul class="nav navbar-nav">
<li>
<a href="#">Nome</a>
</li>
</ul>
</div>
<!-- /.navbar-collapse -->
</div>
<!-- /.container -->
</nav>
<!-- /Navigation -->
A questo punto sarà sufficiente inserire tutti i link come elementi della lista e popolare gli indirizzi per vedere realizzata la nostra barra.
active
.
A questo punto abbiamo tutti gli elementi per poter creare una barra di navigazione complessa. Prendiamo per esempio la demo Carousel proposta dagli sviluppatori di Bootstrap. In questo esercizio dovrai repplicare all'interno della nostra pagina web la stessa navbar.
Come avrai notato però, questa oltre ad essere staticamente ancorata alla parte alta della finestra, risulta essere della stessa dimensione degli altri elementi e non estesa per tutta la lunghezza della finestra, sapresti dire il perché?
La grandezza degli elementi è strettamente legata alla loro inclusione all'interno dei container. Partendo dal nostro scheletro, inverti il container con il tag <nav> per limitare la dimensione della barra.
Ricorda anche di invertire l'ordine di chiusa dei tag!! Quindi, ricapitolando, inverti le prime due e le ultime due righe!
Inserisci molti <br>
all'interno dei tag <body>. In questo modo allungerai la lunghezza complessiva della pagina e potrai verificare più facilmente il comportamento della barra.
Per il nostro esempio, vi è sufficiente utilizzare la seguente porzione di codice per creare un dropdown menu:
<div id="navbar" class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li><a href="#">Nome</a></li>
<!-- Dichiarazione del munu -->
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="#">Action</a></li>
<!-- separatore -->
<li role="separator" class="divider"></li>
<!-- voce non selezionabile -->
<li class="dropdown-header">Nav header</li>
</ul>
</li>
</ul>
</div>
Completa il menu precedente includendo anche l'ultimo elemento dropdown.
Ripristina la barra di navigazione a pieno schermo e prova a spostare il menu dropdown a destra della barra mantenendo gli altri elementi sulla sinistra. Il risultato finale desidato è questo.
Per ottenere questo risultato, ti sarà necessario utilizzare le impostazioni di allineameneto dei componenti. Leggi attentamente il paragrafo dedicato all'allinemanto disponibile nella documentazione e presta particolare attenzione al concetto di gruppi di elementi separati!