解决移动端ios下overflow-x scroll无法隐藏滚动条的问题
这次有个需求是在web首页添加分类菜单,一共是8个分类,在移动端水平展示,可以左右滚动。
最后在手机上微信浏览器看到是有个滚动条,非常影响美观。
主要通过以下代码实现水平滚动
white-space: nowrap;
overflow-x: auto;
overflow-y: hidden;
/* 解决ios手机页面滑动卡顿问题 */
-webkit-overflow-scrolling: touch;
那如何隐藏滚动条呢 ,有三种方式:
1、设置伪元素::-webkit-scrollbar
.header::-webkit-scrollbar {
display: none;
}
但是这个只适用于Chrome,兼容性不太好
2、使用外层div进行包裹 通过设置height高度(遮盖滚动条)和overflow:
hidden,对scroll的container设置padding-bottom: 50px;将滚动条下移
<div class="category-nav">
<ul class="nav-list">
<li class="nav-item">item1</li>
<li class="nav-item">item2</li>
<li class="nav-item">item3</li>
<li class="nav-item">item4</li>
<li class="nav-item">item5</li>
<li class="nav-item">item6</li>
<li class="nav-item">item7</li>
<li class="nav-item">item8</li>
<li class="nav-item">item9</li>
<li class="nav-item">item10</li>
</ul>
</div>
<style>
.category-nav {
height: 92px;
overflow: hidden;
}
.nav-list {
list-style: none;
white-space: nowrap;
overflow-x: auto;
overflow-y: hidden;
margin: 0;
padding-left: 34px;
padding-right: 34px;
padding-bottom: 50px;
/* 解决ios手机页面滑动卡顿问题 */
-webkit-overflow-scrolling: touch;
}
.nav-item {
width: 56px;
height: 56px;
background: #eee;
margin: 10px;
display: inline-block;
}
</style>
3、借助使用swiper插件,设置模式freeMode: true
<div class="swiper-container">
<div class="swiper-wrapper">
<div class="swiper-slide">slider1</div>
<div class="swiper-slide">slider2</div>
<div class="swiper-slide">slider3</div>
<div class="swiper-slide">slider4</div>
<div class="swiper-slide">slider5</div>
<div class="swiper-slide">slider6</div>
<div class="swiper-slide">slider7</div>
<div class="swiper-slide">slider8</div>
<div class="swiper-slide">slider9</div>
<div class="swiper-slide">slider10</div>
<div class="swiper-slide">slider11</div>
</div>
</div>
<style>
.swiper-container {
width: 100%;
height: 80px;
}
.swiper-slide {
width: 56px;
height: 56px;
background: #eee;
margin: 10px;
}
</style>
<link
href="https://cdn.bootcss.com/Swiper/4.5.0/css/swiper.min.css"
rel="stylesheet"
/>
<script src="https://cdn.bootcss.com/Swiper/4.5.0/js/swiper.min.js"></script>
<script>
var mySwiper = new Swiper(".swiper-container", {
slidesPerView: "auto",
freeMode: true,
spaceBetween: 0
});
</script>
个人使用的是上面的第二种方式,完美解决问题
效果图

解决移动端ios下overflow-x scroll无法隐藏滚动条的问题的更多相关文章
- [移动端] IOS下border-image不起作用的解决办法
上周五突然接到现场的一个需求,做一个移动端的劳模展示页面.现场美工把原型图发了过来.这个样子的: 说实在的很想吐槽一下我们美工的审美哈,不过这不是重点. 因为边框是需要特殊花纹的所以打算用border ...
- 移动端ios下H5的:active样式失效的解决方法
在body上绑定一个touchstart事件,空函数就行: document.body.addEventListener('touchstart', function(){}, false) 或者在b ...
- 小技巧css解决移动端ios不兼容position:fixed属性,无需插件
移动端开发仿app头部底部固定设置position:fixed,android2.2以上已经实现.但是在ios8以下系统,当小键盘激活时,都会出现位置浮动问题.如图: 如何解决: 查阅资料之后想到一下 ...
- 解决只读时ios下input光标问题
应用场景:在ios手机下对只读的input设置readonly=readonly属性还是会出现光标 解决方法: //解决ios日期光标问题 $("#Stime ,#provinceCity& ...
- iOS 对overflow:scroll使用
让子标签的高度在初始化的时候就比父标签大,可以设置height: 101%:这样就出发了内置的scrollview的滚动. -webkit-overflow-scrolling:touch;可以让滚动 ...
- 解决ifarme在ios下无法使用
在第一层的config 添加 <access origin="*" /><allow-navigation href="*" />< ...
- 解决移动端ios网页端收起键盘导致的页面空白问题
一句代码就搞定了,只要失焦的时候把窗口滚动位置设置到(0,0)就行了 <input type="text" onblur="window.scrollTo(0, 0 ...
- ios 下 select和option 无法隐藏指定元素
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- ios下元素溢出设置 overflow:auto; 不能滑动解决办法
ios下元素溢出设置 overflow:auto; 不能滑动解决办法: overflow:auto; overflow-y:scroll; -webkit-overflow-scrolling:tou ...
随机推荐
- 遍历json数据的几种方式
json(JavaScript Object Notation),json是一种多用于存储和交换文本信息的语法.他能够进行数据的传输,通常和ajax一起使用.它具有体积小.速度快,易解析等诸多优点. ...
- wpf datagrid field to image converter 字段 图片转化器
<DataGridTemplateColumn Header="Binding"> <DataGridTemplateColumn.CellTemplate> ...
- java基础(23):字节流、字符流
1. 字节流 在前面的学习过程中,我们一直都是在操作文件或者文件夹,并没有给文件中写任何数据.现在我们就要开始给文件中写数据,或者读取文件中的数据. 1.1 字节输出流OutputStream Out ...
- hibernate关联关系(多对多)
数据库的多对多数据库中不能直接映射多对多 处理:创建一个桥接表(中间表),将一个多对多关系转换成两个一对多 注:数据库多表联接查询 永远就是二个表的联接查询 注2:交叉连接 注3:外连接:left(左 ...
- 敏捷软件开发_设计原则<三>
敏捷软件开发_设计原则 单一职责原则(single responsibilities principle,SRP) 原理:一个类应该只有一个变化 分离职责:如果不耦合的职责那么很简单,如果两个职责耦合 ...
- SpringBoot(一):构建第一个SpringBoot工程
1.项目格式如下: 1.启动类: package com.monkey01.springbootstart; import org.springframework.boot.SpringApplica ...
- PL/SQL编写的SQL语句插入SqlPlus时,报错 PLS-00302
最近刚开始用PL/SQL,然后发现写SQL语句时,运行的时候,会对表中的字段报错. 好像是对字段的使用有问题 原来写的错误代码大概像这样 DECLARE xuehao XSB.id% TYPE; BE ...
- 学习:SpringCloud(一)
微服务: 微服务是一种架构模式或者一种架构风格,提倡将单一应用程序划分成一组小的服务==独立部署==,服务之间相互配合.相互协调,每个服务运行于自己的==进程==中. 服务与服务间采用轻量级通讯,如H ...
- Windows远程桌面多用户登录的问题
RDP WRAPPER 同时登录 多用户补丁 https://cloud.tencent.com/developer/article/1460728 解决系统更新导致无法多用户登录的问题 问题 ...
- Linux 设置MySQL开启自动启动
1. 将服务文件拷贝到init.d下,并重命名为mysql cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld 2. 赋 ...