back to top

Perfezionare la barra di navigazione in Bootstrap

Continuiamo quanto introdotto nella precedente lezione proseguendo nel parlare di barre di navigazione o navbar. Innanzi tutto diciamo che tutti gli elementi della barra, che per impostazione predefinita vengono allineati a sinistra, possono essere allineati a destra usando la classe .navbar-right. Naturalmente, esiste anche la corrispondente classe .navbar-left, ma è meno usata dato che riproduce il comportamento predefinito.

Nell’esempio che segue allineeremo a destra i collegamenti della barra, ma non il logo, e aggiungeremo anche un testo alla barra che non rappresenta un collegamento o un elemento di navigazione. Il testo viene creato con la classe navbar-text. Se si volesse aggiungere alla barra un collegamento non di navigazione, lo si potrebbe fare, usando la classe .navbar-link.

Sia il testo che l’eventuale link vengono nascosti quando la barra viene compressa per i dispositivi con display di piccole dimensioni e vengono mostrati insieme agli elementi di navigazione quando la barra viene espansa mediante l’apposito pulsante.

<nav class="navbar navbar-default" role="navigation">

  <!—Logo e pulsante per barra ridimensionata -->
  <div class="navbar-header">
    <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-ex1-collapse">
      <span class="sr-only">Espandi barra di navigazione</span>
      <span class="icon-bar"></span>
      <span class="icon-bar"></span>
      <span class="icon-bar"></span>
    </button>
    <a class="navbar-brand" href="index.html">Logo</a>
  </div>
  
  <!—Elementi della barra -->
  <div class="collapse navbar-collapse navbar-ex1-collapse">
    <ul class="nav navbar-nav navbar-right">
      <li class="active"><a href="#">Link 1</a></li>
      <li><a href="#">Link 2</a></li>
      <li><a href="#">Link 3</a></li>
    </ul>
    <p class="navbar-text navbar-right">creato da Alessandra</p>
  </div>
  
</nav>
elementi della barra allineati a destra

La barra di navigazione in una posizione fissa

La barra di navigazione, grazie ad apposite classi da applicare al tag nav, può essere posizionata in punti precisi della pagina:

  • navbar-fixed-top = la barra rimane fissa nella parte superiore della pagina. Anche se si effettua lo scrolling la barra è sempre visibile;
  • navbar-fixed-bottom = la barra rimane fissa nella parte inferiore della pagina. Anche se si effettua lo scrolling la barra è sempre visibile;
  • navbar-static-top = la barra è posizionata nella parte superiore della pagina, ma scompare se si effettua lo scroll della pagina verso il basso.
<nav class="navbar navbar-default navbar-static-top" role="navigation">
...
</nav>

Se si decide di optare per una barra fixed (top o bottom), per evitare che la barra copra il contenuto è necessario aggiungere del padding all’elemento body, padding top, nel caso della barra fissata in alto e padding-bottom nel caso della barra fissata in basso.

body { padding-top: 70px; }
body { padding-bottom: 70px; }

Le regole di stile vanno aggiunte nel file HTML che contiene la barra o in un file di stile caricato dopo quello di Bootstrap, in modo che le sue regole prevalgano su quelle di quest’ultimo.

La barra con colori invertiti

Grazie alla classe navbar-inverse è possibile invertire i colori della barra in modo che questa presenti sfondo scuro e testi chiari.

<nav class="navbar navbar-inverse" role="navigation">
  ...
</nav>
la barra invertita
Pubblicitร