css隐藏移动端滚动条并且ios上平滑滚动的方法

时间:2021-05-08

css隐藏移动端滚动条并且ios上平滑滚动的方法

HTML代码如下

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>移动端隐藏滚动条解决方案</title> <style type="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 class="par-type"> <nav class="type"> <ul class="con"> <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; -webkit-overflow-scrolling: touch; }

但是此时又会出现新的问题,滚动条又出现了!!!

为了用户的体验,最好是能流畅滚动并且滚动条是隐藏的,接下来开始放大招了。。。

滚动条是出现在type标签上的,所以对type进行如下设置:

.type { height: 100%; overflow-x: scroll; overflow-y: hidden; background-color: #999; -webkit-overflow-scrolling: touch; padding-bottom: 20px; }

ps:

1.type的外层容器设置了固定高度,并且设置了内容溢出隐藏,所有type的纵向的超出内容是不可见的,即:overflow:hidden;

2.padding-bottom等于20px并非固定值,只要你的设置的值大小足够将滚动条挤出可视区域即可。

完整代码如下:

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>移动端隐藏滚动条解决方案</title> <style type="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; -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 class="par-type"> <nav class="type"> <ul class="con"> <li>推荐</li> <li>娃娃</li> <li>日用品</li> <li>美妆护肤</li> <li>娃娃</li> <li>日用品</li> <li>美妆护肤</li> <li>娃娃</li> </ul> </nav> </div></body></html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章