Как сделать - Меню занавес
Узнать, как создать меню навигации занавеса.
Нажмите на кнопки ниже, чтобы увидеть, как это работает:
Редактор кода »Создание меню занавеса
Шаг 1) Добавить HTML:
Пример
<!-- Верхний слой -->
<div id="myNav" class="overlay">
<!-- Кнопка для закрытия навигации наложения -->
<a href="javascript:void(0)" class="closebtn" onclick="closeNav()">×</a>
<!-- Верхний слой содержимого -->
<div class="overlay-content">
<a href="#">О Нас</a>
<a href="#">Услуги</a>
<a href="#">Клинты</a>
<a href="#">Контакт</a>
</div>
</div>
<!-- Используйте любой элемент для открытия / отображения меню навигации наложения -->
<span onclick="openNav()">open</span>
Шаг 2) Добавить CSS:
Пример
/* Наложение (фон) */
.overlay {
/* Высота и ширина зависят от того, как вы хотите показать наложение (см. JS ниже) */
height: 100%;
width: 0;
position: fixed; /* Оставаться на месте */
z-index: 1; /* Сидеть на вершине */
left: 0;
top: 0;
background-color: rgb(0,0,0); /* Черный резервный цвет */
background-color: rgba(0,0,0, 0.9); /*Черный с непрозрачностью */
overflow-x: hidden; /* Отключить горизонтальную прокрутку */
transition: 0.5s; /* 0.5 секунды эффект перехода, чтобы скользить в или скользить вниз по наложению (высота или ширина, в зависимости от показа) */
}
/* Расположите содержимое внутри наложения */
.overlay-content {
position: relative;
top: 25%; /* 25% сверху */
width: 100%; /* 100% ширина */
text-align: center; /* Центрированный текст/ссылки */
margin-top: 30px; /* 30px верхнее поле, чтобы избежать конфликта с кнопкой закрытия на небольших экранах */
}
/* Навигационные ссылки внутри наложения */
.overlay a {
padding: 8px;
text-decoration: none;
font-size: 36px;
color: #818181;
display: block; /* Блок дисплея вместо встроенного */
transition: 0.3s; /* Эффекты перехода при наведении (цвет) */
}
/* При наведении курсора мыши на навигационные ссылки измените их цвет */
.overlay a:hover, .overlay a:focus {
color: #f1f1f1;
}
/* Расположите кнопку закрыть (верхний правый угол) */
.overlay .closebtn {
position: absolute;
top: 20px;
right: 45px;
font-size: 60px;
}
/* Если высота экрана меньше 450 пикселей, измените размер шрифта ссылок и снова установите кнопку закрыть, чтобы они не перекрывались */
@media screen and (max-height: 450px) {
.overlay a {font-size: 20px}
.overlay .closebtn {
font-size: 40px;
top: 15px;
right: 35px;
}
}
Шаг 3) Добавить JavaScript:
Пример ниже скользит в меню навигации наложения слева направо (от 0 до 100% ширины), когда он запускается:
Скольжение в стороны
/* Открыть, когда кто-то нажимает на элемент span */
function openNav() {
document.getElementById("myNav").style.width = "100%";
}
/* Закрыть, когда кто-то нажимает на символ "x" внутри наложения */
function closeNav() {
document.getElementById("myNav").style.width = "0%";
}
Редактор кода »
Пример ниже скользит в меню навигации наложения вниз от вершины (от 0 до 100% высоты).
Примечание: В этом примере обратите внимание, что CSS немного отличается от приведенного выше (высота по умолчанию теперь равна 0, ширина 100% , а overflow-y скрыт (отключить вертикальную прокрутку, за исключением небольших экранов)):
Сползите вниз от верхней части
/* Открыть */
function openNav() {
document.getElementById("myNav").style.height = "100%";
}
/* Закрыть */
function closeNav() {
document.getElementById("myNav").style.height = "0%";
}
Редактор кода »
В этом примере открывается меню навигации без анимации:
Откройте меню Без анимации
/* Открыть */
function openNav() {
document.getElementById("myNav").style.display = "block";
}
/* Закрыть */
function closeNav() {
document.getElementById("myNav").style.display = "none";
}
Редактор кода »
Совет: Зайдите на наш учебник CSS Навигация чтобы узнать больше о навигационных панелях.