我构建了一个具有平滑过渡效果的汉堡菜单,使其在视觉上更具吸引力。一切工作正常,我能够使用javascript做到这一点。但是,一旦浏览器到达显示汉堡包菜单的某些断点,滑块导航就会突然出现然后关闭。
CSS代码:
body {
overflow-x: hidden;
}
.nav-links {
position: absolute;
right: 0;
height: 92vh;
top: 8vh;
background-color: #54976B;
flex-direction: column;
justify-content: space-evenly;
align-items: center;
width: 30%;
transform: translateX(100%);
transition: transform 0.5s ease-in;
li {
opacity: 0;
}
}
.burger {
display: block;
}
} ```
### Then this is my active class so the transform occurs when the hamburger menu is being clicked
``` .nav-active {
transform: translateX(0);
}
这是我的JavaScript代码:
const burger = document.querySelector('.burger')
const nav = document.querySelector('.nav-links')
burger.addEventListener('click', () => {
nav.classList.toggle('nav-active')
})
}
最佳答案
您的代码似乎可以正常工作,只是burger
在移动设备上也不真正可见。尝试添加此内容以对其进行跟踪:
@media (max-width: 800px) {
.burger {
display: block;
width:20px;
height:20px;
border:1px solid red;
}
}