Skip to content

Instantly share code, notes, and snippets.

@kianurivzzz
Last active September 17, 2024 15:50
Show Gist options
  • Save kianurivzzz/2c276d5adb81d78e632dfc131835f5e3 to your computer and use it in GitHub Desktop.
Save kianurivzzz/2c276d5adb81d78e632dfc131835f5e3 to your computer and use it in GitHub Desktop.
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="css/style.css">
<title>Шапка сайта</title>
</head>
<body>
<header class="header header-white">
<!-- Тут можно дописать код -->
<!-- Тут можно дописать код -->
<nav class="nav">
<ul>
<li><a href="#">О проекте</a></li>
<li><a href="#">Отзывы студентов</a></li>
<li><a href="#">Истории успеха</a></li>
<li><a href="#">База знаний</a></li>
<li><a href="#">Техподдержка</a></li>
</ul>
</nav>
</header>
</body>
</html>
body {
margin: 0;
padding: 0;
color: #333;
font-family: sans-serif;
line-height: 1.5;
background: #f9f9f9;
}
.header {
display: flex;
flex-wrap: wrap;
align-items: center;
box-sizing: border-box;
min-height: 90px;
padding: 20px 40px;
overflow: hidden;
}
.header-white {
background: #fff;
}
.nav ul {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0;
padding: 0;
list-style: none;
}
.nav li {
padding: 10px 20px;
cursor: pointer;
}
.nav a {
color: inherit;
font-weight: bold;
white-space: nowrap;
text-decoration: none;
}
.nav li:hover > a {
color: #717171;
}
/* Тут можно дописать код */
/* Тут можно дописать код */
@media screen and (max-width: 500px) {
/* Тут можно дописать код */
/* Тут можно дописать код */
.nav ul {
display: block;
}
.nav li {
padding-right: 0;
padding-left: 0;
}
/* Тут можно дописать код */
/* Тут можно дописать код */
}

Необходимо реализовать адаптивное меню «Гамбургер».

Суть такого меню очень простая: при заданной ширине экрана меню исчезает, а на его месте появляется иконка. Эта иконка обычно в виде трёх линий друг под другом. От внешнего сходства иконки со всеми известным блюдом такая реализация меню получила название «Гамбургер».

Сейчас меню адаптируется без скрытия пунктов меню. Ваша задача: при ширине меньше 500 пикселей скрывать меню, а на его месте выводить необходимую иконку. При клике на иконку под ней раскрывается меню.

Реализация меню при ширине viewport более 500 пикселей должна остаться той же самой.

Задание

Реализуйте меню-гамбургер, используя связку label + checkbox, с помощью которых вы можете отслеживать клик по иконке с последующим раскрытием меню.

Размер иконки: 50px

Подсказки

В решении задания вам поможет псевдокласс checked

Реализуйте иконку через фоновое изображение у псевдоэлемента

Иконка и внешний вид тут

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment