14. Barra di Navigazione

Andiamo nella sezione Components di Bootstrap e prendiamo il codice d'esempio della Navigation Bar, e quindi modifichiamo il nostro template base.html in questo modo:

{% load static %}

<!DOCTYPE html>
<html lang="it">

<head>
  <title>{% block head_title %}MyDjangoBlog{% endblock head_title %}</title>
  <!-- Latest compiled and minified CSS -->
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-aFq/bzH65dt+w6FI2ooMVUpc+21e0SRygnTpmBvdBgSdnuTN7QbdgL+OapgHtvPp" crossorigin="anonymous">
  <link rel="stylesheet" href="{% static 'css/blog.css' %}" type="text/css" />
</head>

<body>
  <nav class="navbar navbar-expand-lg navbar-light bg-light">
    <div class="container"> <a class="navbar-brand" href="/">My Django Blog</a> <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button>
      <div class="collapse navbar-collapse" id="navbarNav">
        <ul class="navbar-nav">
          <li class="nav-item"> <a class="nav-link active" aria-current="page" href="/">Home</a> </li>
          <li class="nav-item"> <a class="nav-link" href="/contatti">Contatti</a> </li>
        </ul>
        <div class="navbar-brand mx-auto">
          <center><img alt="Brand" src="{% static 'img/logo.png' %}" /></center>
        </div>

      </div>
    </div>
  </nav>
  <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.6/dist/umd/popper.min.js" integrity="sha384-oBqDVmMz9ATKxIep9tiCxS/Z9fNfEXiDAYTujMAeBAsjFuCZSmKbSSUnQlmh/jp3" crossorigin="anonymous"></script>
  <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha2/dist/js/bootstrap.min.js" integrity="sha384-heAjqF+bCxXpCWLa6Zhcp4fu20XoNIA98ecBC1YkdXhszjoejr5y9Q77hIrv8R9i" crossorigin="anonymous"></script>
  </body>

</html>

Adesso nella homepage vedremo la barra di navigazione con il logo:

Django Navbar Bootstrap

Dobbiamo anche fare alcune modifiche al CSS in modo da far si che la Navigation Bar possa alloggiare comodamente nella pagina:

body {
    padding-top: 70px;
    height: 100%;
}

h1, h1 a {
  color: green;
  font-family: Verdana, sans-serif;
}

h2 { 
    color: red; 
}

Nella prossima lezione aggiungeremo un footer al nostro sito web e regoleremo il comportamento delle immagini statiche tramite CSS.