汉堡菜单可点击区域太小
Burger menu clickable area too small
https://codepen.io/everybodysfeelingwonderland/full/OjyRpM/
对于我网站的移动尺寸,我的菜单汉堡图标的可点击区域太小了,只有那些细线。
我也遇到了其他锚点的问题,我希望它们具有更大的可点击区域,但不希望元素本身在我的页面上变大。
<div id="burger-container">
<div id="burger">
<span> </span>
<span> </span>
<span> </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
。
https://codepen.io/everybodysfeelingwonderland/full/OjyRpM/
对于我网站的移动尺寸,我的菜单汉堡图标的可点击区域太小了,只有那些细线。
我也遇到了其他锚点的问题,我希望它们具有更大的可点击区域,但不希望元素本身在我的页面上变大。
<div id="burger-container">
<div id="burger">
<span> </span>
<span> </span>
<span> </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
。