Menu
Coddy logo textTech

Сворачиваемая боковая навигация

Часть раздела JavaScript in Action путешествия по HTML на Coddy — урок 14 из 27.

Сворачиваемая боковая навигация — это скрытое меню сбоку экрана, которое выдвигается при нажатии кнопки. Она помогает экономить место, обеспечивая при этом пользователям быстрый доступ к навигационным ссылкам.

Создайте базовую структуру HTML с боковой навигацией и кнопкой переключения:

<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>

Добавьте CSS для стилизации боковой навигации:

.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;
}

Добавьте JavaScript для переключения навигации:

const toggleBtn = document.getElementById('toggleNav');
const sideNav = document.getElementById('sideNav');

toggleBtn.addEventListener('click', function() {
  sideNav.classList.toggle('open');
});

При нажатии на кнопку боковая навигация будет выдвигаться или скрываться в зависимости от её текущего состояния.

challenge icon

Задание

Легко

Сделайте кнопку меню функциональной:

HTML: Подключите кнопку меню к функции JavaScript, используя атрибут onclick

JavaScript: Напишите функцию, которая открывает боковую навигацию, устанавливая её ширину в "250px"

Попробуйте сами

<!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>
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела JavaScript in Action