HTML代码如下
<!DOCTYPEhtml>
<html>
<head>
<metacharset="UTF-8">
<metaname="viewport"content="width=device-width,user-scalable=no,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0">
<metahttp-equiv="X-UA-Compatible"content="ie=edge">
<title>移动端隐藏滚动条解决方案</title>
<styletype="text/css">
*{
padding:0;
margin:0;
}
.par-type{
height:50px;
-webkit-box-sizing:border-box;
box-sizing:border-box;
overflow:hidden;
}
.type{
height:100%;
overflow-x:scroll;
overflow-y:hidden;
background-color:#999;
}
.con{
width:640px;
height:100%;
display:flex;
align-items:center;
}
.con>li{
text-align:center;
font-size:16px;
width:80px;
color:#fff;
list-style:none;
}
.par-type::-webkit-scrollbar{
display:none;
}
</style>
</head>
<body>
<div>
<nav>
<ul>
<li>推荐</li>
<li>娃娃</li>
<li>日用品</li>
<li>美妆护肤</li>
<li>娃娃</li>
<li>日用品</li>
<li>美妆护肤</li>
<li>娃娃</li>
</ul>
</nav>
</div>
</body>
</html>
设置滚动条隐藏
.par-type::-webkit-scrollbar{display:none;}
此时内容可以正常滚动,滚动条也已隐藏,但是ios手机上出现滚动不流畅,影响用户的体验,安卓手机上是正常的。此时,加上css代码:-webkit-overflow-scrolling:touch;即可解决,如下:
.type{
height:100%;
overflow-x:scroll;
overflow-y:hidden;
background-color:#999;
/*解决ios上滑动不流畅*/
-webkit-overflow-scrolling:touch;
}
但是此时又会出现新的问题,滚动条又出现了!!!
为了用户的体验,最好是能流畅滚动并且滚动条是隐藏的,接下来开始放大招了。。。
滚动条是出现在type标签上的,所以对type进行如下设置:
.type{
/*width:100%;*/
height:100%;
overflow-x:scroll;
overflow-y:hidden;
background-color:#999;
/*解决ios上滑动不流畅*/
-webkit-overflow-scrolling:touch;
/*纵向超出部分将会隐藏,即滚动条部分被挤出可视区域*/
padding-bottom:20px;
}
ps:
1.type的外层容器设置了固定高度,并且设置了内容溢出隐藏,所有type的纵向的超出内容是不可见的,即:overflow:hidden;
2.padding-bottom等于20px并非固定值,只要你的设置的值大小足够将滚动条挤出可视区域即可。
完整代码如下:
<!DOCTYPEhtml>
<html>
<head>
<metacharset="UTF-8">
<metaname="viewport"content="width=device-width,user-scalable=no,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0">
<metahttp-equiv="X-UA-Compatible"content="ie=edge">
<title>移动端隐藏滚动条解决方案</title>
<styletype="text/css">
*{
padding:0;
margin:0;
}
.par-type{
height:50px;
-webkit-box-sizing:border-box;
box-sizing:border-box;
overflow:hidden;
}
.type{
height:100%;
overflow-x:scroll;
overflow-y:hidden;
background-color:#999;
/*解决ios上滑动不流畅*/
-webkit-overflow-scrolling:touch;
padding-bottom:20px;
}
.con{
width:640px;
height:100%;
display:flex;
align-items:center;
}
.con>li{
text-align:center;
font-size:16px;
width:80px;
color:#fff;
list-style:none;
}
.par-type::-webkit-scrollbar{
display:none;
}
</style>
</head>
<body>
<div>
<nav>
<ul>
<li>推荐</li>
<li>娃娃</li>
<li>日用品</li>
<li>美妆护肤</li>
<li>娃娃</li>
<li>日用品</li>
<li>美妆护肤</li>
<li>娃娃</li>
</ul>
</nav>
</div>
</body>
</html>
Tag:
移动端