Итак, я отредактировал свой код, добавив компилятор SASS, и обнаружил, что моя кнопка бургера и навигационное меню перестали работать, хотя все классы добавляются после того, как я проверю страницу. Консоль не выдает никаких ошибок, и я действительно не знаю, в чем причина проблемы
Это код scss с автоматизацией:
nav {
z-index: 3;
display: flex;
justify-content: space-around;
align-items: center;
height: 10vh;
width: 100%;
background-color: $primDark;
.nav-logo {
margin-left: auto;
color: $primLight;
letter-spacing: 5px;
font-size: 24px;
cursor: pointer;
}
.nav-links {
display: flex;
justify-content: space-around;
width: 50%;
margin-right: auto;
li {
filter: brightness(0.9);
list-style-type: none;
transition: 0.2s ease;
&:hover {
filter: brightness(1);
transform: scale(1.05);
color: $primLight;
}
a {
color: $primLight;
text-decoration: none;
letter-spacing: 3px;
font-weight: bold;
font-size: 20px;
}
}
}
.burger {
display: none;
cursor: pointer;
div {
width: 30px;
height: 3px;
background-color: $primLight;
margin: 5px;
transition: all 0.5s ease;
}
.toggle {
.line1 {
transform: rotate(-45deg) translate(-5px,6px);
}
.line2 {
opacity: 0;
}
.line3 {
transform: rotate(45deg) translate(-5px,-6px);
}
}
}
.nav-active {
transform: translateX(0%);
}
}`
@media screen and (max-width: 768px) {
body {
overflow-x: hidden;
}
nav {
justify-content: space-around;
.nav-logo {
margin-right: auto;
}
.nav-links {
position: absolute;
z-index: 2;
right: 0px;
height: 90vh;
top: 10vh;
background-color: rgba(10, 10, 10, 0.945);
display: flex;
flex-direction: column;
align-items: center;
width: 50%;
transform: translateX(100%);
transition: transform 0.5s ease-in;
li {
opacity: 0;
a {
font-size: 30px;
}
}
}
.burger {
display: block;
}
}
}
@keyframes navLinksFade {
from {
opacity: 0;
transform: translateX(50px);
} to {
opacity: 1;
transform: translateX(0px);
}
}
И это функция js:
const burger = document.querySelector(".burger");
const nav = document.querySelector(".nav-links");
const navLinks = document.querySelectorAll('.nav-links li');
burger.addEventListener('click', () => {
nav.classList.toggle('nav-active');
navLinks.forEach((link, index) => {
if(link.style.animation) {
link.style.animation = '';
} else {
link.style.animation = 'navLinksFade 0.5s ease forwards ' + index/(7+0.9) + 's';
}
});
// X
burger.classList.toggle('toggle');
});
};
Заранее благодарим за любую помощь!