【发布时间】:2016-10-02 16:48:42
【问题描述】:
如何将汉堡菜单移动到覆盖菜单前面,同时保持其位置从移动设备到桌面?这是codepen上的示例
下面是我的代码
HTML
<nav>
<button class="hamburger hamburger--squeeze" type="button">
<span class="hamburger-box">
<span class="hamburger-inner"></span>
</span>
</button>
<div class="overlay">
some list elements go here
</div>
</nav>
CSS
.overlay{
display: none;
position: fixed;
top: 0;
left: 0;
height: 100%;
width: 100%;
background-color: transparentize($darkest-grey,0.01);
overflow: auto;
z-index: 99;
text-align: center;
padding-top: 100px;
li{
list-style: none;
}
}
.is-active{
display: block;
}
JavaScript
<script>
var hamburger = document.querySelector(".hamburger");
var overlayMenu = document.querySelector(".overlay");
hamburger.addEventListener("click", function() {
hamburger.classList.toggle("is-active");
overlayMenu.classList.toggle("is-active");
});
</script>
我也在使用Bourbon neat 和Hamburgers。如果有更优雅的方法,请告诉我:) 谢谢!
【问题讨论】:
-
.is-active上更高的z-index必须解决您的问题,但如果没有 CSS 的其余部分,我无法为您提供确切的值或属性 -
@daniP 我添加了更多的 CSS。我尝试在 z-index 上添加 9999 的 z-index 但这不起作用:(
标签: javascript jquery html css sass