<!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;便可解決,以下:css
.type { height: 100%; overflow-x: scroll; overflow-y: hidden; background-color: #999; /*解決ios上滑動不流暢*/ -webkit-overflow-scrolling: touch; }
可是此時又會出現新的問題,滾動條又出現了!!!
爲了用戶的體驗,最好是能流暢滾動而且滾動條是隱藏的,接下來開始放大招了。。。
滾動條是出如今type標籤上的,因此對type進行以下設置:html
.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並不是固定值,只要你的設置的值大小足夠將滾動條擠出可視區域便可。ios
完整代碼以下:web
<!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; /*解決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 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>