Navigazione laterale comprimibile
Fa parte della sezione JavaScript in azione del percorso HTML di Coddy. Lezione 14 di 27.
Una barra di navigazione laterale comprimibile è un menu nascosto sul lato dello schermo che scorre all’interno quando si fa clic su un pulsante. Aiuta a risparmiare spazio, offrendo comunque agli utenti un rapido accesso ai link di navigazione.
Crea una struttura HTML di base con una navigazione laterale e un pulsante di attivazione:
<button id="toggleNav">☰ Menu</button>
<nav id="sideNav" class="sidenav">
<a href="#">Home</a>
<a href="#">About</a>
<a href="#">Services</a>
<a href="#">Contact</a>
</nav>Aggiungi CSS per definire lo stile della navigazione laterale:
.sidenav {
height: 100%;
width: 0;
position: fixed;
top: 0;
left: 0;
background-color: #111;
overflow-x: hidden;
transition: 0.3s;
padding-top: 60px;
}
.sidenav.open {
width: 250px;
}Aggiungi JavaScript per attivare e disattivare la navigazione:
const toggleBtn = document.getElementById('toggleNav');
const sideNav = document.getElementById('sideNav');
toggleBtn.addEventListener('click', function() {
sideNav.classList.toggle('open');
});Quando si fa clic sul pulsante, la navigazione laterale scorrerà verso l'interno o verso l'esterno a seconda del suo stato attuale.
Sfida
FacileRendi funzionale il pulsante del menu:
HTML: Collega il pulsante del menu a una funzione JavaScript usando l'attributo onclick
JavaScript: Scrivi una funzione che apra la navigazione laterale impostandone la larghezza a 250px
Provalo tu
<!DOCTYPE html>
<html>
<head>
<title>Scandinavian Interior Design</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<div id="sideNav" class="sidenav">
<a href="javascript:void(0)" class="close-btn" onclick="closeNav()">X</a>
<a href="#">Home</a>
<a href="#">Philosophy</a>
<a href="#">Materials</a>
<a href="#">Inspiration</a>
<a href="#">Contact</a>
</div>
<header>
<span class="open-btn">☰ Menu</span>
<h1>Scandinavian Interior Design</h1>
</header>
<main>
<section>
<h2>Calm, Functional, Beautiful</h2>
<p>
Scandinavian design is about more than looks — it’s about balance,
comfort, and harmony. Spaces are uncluttered, airy, and filled with
light, making homes feel both inviting and practical.
</p>
</section>
<section>
<h2>Natural Materials</h2>
<p>
Wood, stone, wool, and linen are at the heart of Scandinavian interiors.
These natural elements bring warmth and a sense of connection to nature,
while ensuring that every item is purposeful and timeless.
</p>
</section>
</main>
<script src="script.js"></script>
</body>
</html>
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di JavaScript in azione
1Interattività/Componenti UI
SchedeFisarmonica (espandi/comprimi)Finestra modale (apri/chiudi)Menu a discesa5Navigazione
Attivare e disattivare il menu hamburger su mobileNavigazione laterale comprimibileMenu a discesaEsercitati da solo: Playground Web