详解微信小程序之scroll-view的flex布局问题


Posted in Javascript onJanuary 16, 2019

关于微信小程序的scroll-view组件,第一次写的时候是直接在scroll-view中用了一层容器包裹子元素,然后用了flex布局,并且是用了组件来实现的横向滚动,后面有提出改进,但是不记录下,就发现过了几天,就有点懵了

1.效果图

详解微信小程序之scroll-view的flex布局问题

2.在scroll-view里加一层容器,使用flex布局实现

这里用flex布局实现的话,就要用组件的形式

wxss文件

.scrollView{
 padding: 0 20rpx;
 white-space: nowrap;
 box-sizing: border-box;
}
.item{
 display: inline-block;
 margin-right: 20rpx;
 width: calc(100% / 3);
 height: 100rpx;
 background: #ff00ff;
}

.scrollView1{
 display: flex;
 margin-top: 40rpx;
 padding: 0 20rpx;
 width: 100%;
 flex-wrap: nowrap;
 box-sizing: border-box;
}
.item1{
 margin-right: 20rpx;
 width: calc(100% / 3);
 height: 100rpx;
 background: #ff00ff;
}
.scrollView2{
 margin-top: 40rpx;
 padding: 0 20rpx;
 width: 100%;
 box-sizing: border-box;
}
.itemContainer{
 display: flex;
 width: 100%;
 flex-wrap: nowrap;
}
.scrollItem{
 margin-right: 20rpx;
}

.scrollView3{
 margin-top: 40rpx;
 padding: 0 20rpx;
 width: 100%;
 box-sizing: border-box;
}
.item3{
 margin-right: 20rpx;
 /* width: calc(100% / 3); */
 width: 240rpx;
 height: 100rpx;
 background: #aa22dd;
}

wxml文件

<!-- 要想使用flex布局实现横向滚动,就要在scroll-view里加一层容器包裹,并且使用子组件才会出现滚动效果 -->
<scroll-view scroll-x class="scrollView2">
 <view class="itemContainer">
  <block wx:for="{{4}}" wx:key="{{index}}">
   <view-item class="scrollItem" />
  </block>
 </view>
</scroll-view>

子组件里就一个view标签,可以自己直接写

详解微信小程序之scroll-view的flex布局问题

3.直接使用display:inline-blockwxml文件

<scroll-view scroll-x class="scrollView">
 <block wx:for="{{4}}" wx:key="{{index}}">
  <view class="item"></view>
 </block>
</scroll-view>

4.自己的理解

  • scroll-view不可以直接使用flex布局,使用flex布局会使得他不会按照预想的那样横向排列、滚动
  • 要使用flex布局则要麻烦一点
  • 如果直接使用flex布局,不用子组件的话,则会被挤成一排

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

Javascript 相关文章推荐
JavaScript的面向对象(一)
Nov 09 Javascript
WordPress JQuery处理沙发头像
Jun 22 Javascript
js RuntimeObject() 获取ie里面自定义函数或者属性的集合
Nov 23 Javascript
浅谈js中调用函数时加不加括号的问题
Jul 28 Javascript
jQuery简易时光轴实现方法示例
Mar 13 Javascript
bootstrap paginator分页插件的两种使用方式实例详解
Nov 14 Javascript
对vue里函数的调用顺序介绍
Mar 17 Javascript
js中DOM事件绑定分析
Mar 18 Javascript
Bootstrap Table中的多选框删除功能
Jul 15 Javascript
js 动态校验开始结束时间的实现代码
May 25 Javascript
关于angular 8.1使用过程中的一些记录
Nov 25 Javascript
JavaScript实现栈结构详细过程
Dec 06 Javascript
vue开发环境配置跨域的方法步骤
Jan 16 #Javascript
微信小程序出现wx.getLocation再次授权问题的解决方法分析
Jan 16 #Javascript
在Create React App中启用Sass和Less的方法示例
Jan 16 #Javascript
在Create React App中使用CSS Modules的方法示例
Jan 15 #Javascript
Vue 样式绑定的实现方法
Jan 15 #Javascript
在vue使用clipboard.js进行一键复制文本的实现示例
Jan 15 #Javascript
2019 年编写现代 JavaScript 代码的5个小技巧(小结)
Jan 15 #Javascript
You might like
php连接函数implode与分割explode的深入解析
2013/06/26 PHP
php中unserialize返回false的解决方法
2014/09/22 PHP
php数组保存文本与文本反编成数组实例
2014/11/13 PHP
Yii基于数组和对象的Model查询技巧实例详解
2015/12/28 PHP
15条JavaScript最佳实践小结
2013/08/09 Javascript
jQuery插件之Tocify动态节点目录菜单生成器附源码下载
2016/01/08 Javascript
jquery获取复选框checkbox的值实现方法
2016/05/30 Javascript
js 实现数值的千分位及保存小数方法(推荐)
2016/08/01 Javascript
JS判断iframe是否加载完成的方法
2016/08/03 Javascript
js style.display=block显示布局错乱问题的解决方法
2016/09/21 Javascript
javascript中数组(Array)对象和字符串(String)对象的常用方法总结
2016/12/15 Javascript
JS验证全角与半角及相互转化的介绍
2017/05/18 Javascript
js中less常用的方法小结
2017/08/09 Javascript
babel的使用及安装配置教程
2018/02/22 Javascript
JS获取月的第几周和年的第几周实例代码
2018/12/05 Javascript
在Vue中用canvas实现二维码和图片合成海报的方法
2019/06/10 Javascript
Vue快速实现通用表单验证的示例代码
2020/01/09 Javascript
python fabric实现远程操作和部署示例
2014/03/25 Python
Python编程把二叉树打印成多行代码
2018/01/04 Python
使用Python画股票的K线图的方法步骤
2019/06/28 Python
浅析Python数字类型和字符串类型的内置方法
2019/12/22 Python
Python基础之列表常见操作经典实例详解
2020/02/26 Python
keras多显卡训练方式
2020/06/10 Python
CSS3制作炫酷带方向感应的鼠标滑过图片3D动画
2016/03/16 HTML / CSS
Currentbody美国/加拿大:美容仪专家
2020/03/09 全球购物
通信工程专业女生个人求职信
2013/09/21 职场文书
工商管理专业职业生涯规划
2014/01/01 职场文书
小学家长学校培训材料
2014/08/24 职场文书
村委会贫困证明范本
2014/09/17 职场文书
群众路线个人剖析材料
2014/10/07 职场文书
学校政风行风整改方案
2014/10/25 职场文书
2014年乡镇安全生产工作总结
2014/12/02 职场文书
2015年教师节活动总结
2015/03/20 职场文书
反四风问题学习心得体会
2016/01/22 职场文书
2016年感恩教师节活动总结
2016/04/01 职场文书
送给客户微信问候语!
2019/07/04 职场文书