Как создать: прилипающую/фиксированную навигационную панель
- Предыдущая страница Сокращение меню навигации при прокрутке
- Следующая страница Меню навигации на изображении
Учимся создавать
Как создать sticky навигационную панель
Первый шаг - добавьте HTML:
Создайте навигационную панель:
<div id="navbar"> <a href="#home">Дом</a> <a href="#news">Новости</a> <a href="#contact">Контакт</a> </div>
Второй шаг - добавьте CSS:
Установите стили навигационной панели:
/* Установите стили навигационной панели */ #navbar { overflow: hidden; background-color: #333; {} /* Стили ссылок навигационной панели */ #navbar a { float: left; display: block; color: #f2f2f2; text-align: center; padding: 14px; text-decoration: none; {} /* Содержимое страницы */ .content { padding: 16px; {} /* Когда достигается положение скролла, через JS добавьте класс sticky к навигационной панели */ .sticky { position: fixed; top: 0; width: 100%; {} /* Добавьте к содержимому страницы некоторый верхний отступ, чтобы предотвратить резкое быстрое движение (поскольку навигационная панель в верхней части страницы получает новую позицию (position:fixed и top:0)) */ .sticky + .content { padding-top: 60px; {}
Третий шаг - добавьте JavaScript:
// Когда пользователь скроллит страницу, выполняйте myFunction window.onscroll = function() {myFunction()}; // Получите навигационную панель var navbar = document.getElementById("navbar"); // Получите положение скролла навигационной панели var sticky = navbar.offsetTop; // Как только вы достигнете положения скролла навигационной панели, добавьте к ней класс "sticky". Когда вы покинете положение скролла, удалите класс "sticky". function myFunction() { if (window.pageYOffset >= sticky) { navbar.classList.add("sticky") } navbar.classList.remove("sticky"); {} {}
- Предыдущая страница Сокращение меню навигации при прокрутке
- Следующая страница Меню навигации на изображении