汉堡菜单可点击区域太小

Burger menu clickable area too small

https://codepen.io/everybodysfeelingwonderland/full/OjyRpM/

对于我网站的移动尺寸,我的菜单汉堡图标的可点击区域太小了,只有那些细线。

我也遇到了其他锚点的问题,我希望它们具有更大的可点击区域,但不希望元素本身在我的页面上变大。

<div id="burger-container">
        <div id="burger">
          <span>&nbsp;</span>
          <span>&nbsp;</span>
          <span>&nbsp;</span>
        </div>
    </div>

CSS

#burger-container{
margin: 25px 0 0 0;
width: 50px;
float: right;
padding-right: 70px;
}

#burger{
cursor: pointer;
display: block;
}

#burger span{
background: black;
display: block;
width: 50px;
height: 3px;
margin-bottom: 10px;
position: relative;
top: 0;
transition: all ease-in-out 0.4s;
}

#burger-container.open span:nth-child(2){
width: 0;
opacity: 0;
}

#burger-container.open span:nth-child(3){
transform: rotate(45deg);
top: -13px;
}

#burger-container.open span:nth-child(1){
transform: rotate(-45deg);
top: 13px;
}

}

尝试添加固定宽度和高度

#burger {
    cursor: pointer;
    display: block;
    height: 30px;
    width: 50px;
}

您可以像这样更改 CSS:

#burger{
    display: none;
    padding: 23px 15px 10px;
}

@media all and (max-width: 580px){

    #burger-container{
        float: right;
    }

    #burger{
        cursor: pointer;
        display: block;
    }
}

这样,您仅在屏幕宽度为 580 像素或更小时才显示汉堡菜单,并且内边距为您提供了更大的点击区域。

例如,请参阅此 codepen

我认为这是一种更好的做法,因为您不必费心设置特定的宽度和高度,只需使用 padding