*,*::after,*::before {
margin: 0;
padding: 0;
box-sizing: border-box;
}
.container {
width: 100%;
}
.navbar {
width: 100%;
display: flex;
justify-content: space-between;
background-color: lavenderblush;
padding: 1%;
}
.navbar__block {
display: flex;
}
.navbar__link {
font-family: Arial, Helvetica, sans-serif;
text-decoration: none;
color: black;
padding: 5px;
}
.navbar__link:hover {
background-color: rgb(216, 216, 216);
border-radius: 10%;
}
.navbar__button {
width: 100px;
height: 30px;
background-color: greenyellow;
border: none;
border-radius: 20px;
outline: none;
}
.navbar__button:hover {
cursor: pointer;
}
.burger {
display: none;
opacity: 0; // определяем начальное состояние как прозрачное
transform: translateY(-10px); // смещённое вверх на 10 пикселей.
}
.burger-img {
max-width: 40px;
padding: 2px;
}
.burger__links {
display: none;
}
.burger-img__cancel {
max-width: 35px;
}
.burger__ul {
width: 100%;
height: 100%;
display: flex;
flex-wrap: wrap;
flex-direction: column;
justify-content: center;
align-items: center;
position: absolute;
background-color: grey;
top: 40px;
left: 0;
z-index: 1;
transition: all 2s ease 0s;
}
@media (max-width: 587px) {
.navbar__block > a {
display: none;
}
.burger {
display: block;
animation-name: showBurger; // навешиваем анимацию
animation-duration: 0.2s; // определяем её длительность
animation-fill-mode: forwards; // и говорим что в конце анимации элемент должен остаться в конечном состоянии анимации
}
.burger__ul li {
font-size: 1.5em;
list-style: none;
background: rgb(179, 179, 179);
padding: 5px;
margin: 5px 0;
width: 90%;
text-align: center;
}
}
// Сама анимация.
@keyframes showBurger {
// Сразу описываем конечное состояние, так как начальное мы уже определили выше.
100% {
opacity: 1; // Делаем снова непрозрачным.
transform: translateY(0) // И возвращаем на место
}
}