使用css3的Flex布局实现列表展示
实现效果图如下:

通过css3样式实现(部分代码):
.box {
display: flex;
flex-wrap:wrap;
justify-content:space-between;
align-content: flex-start;
}
在实际中会遇到list列表对3取余剩2的情况,页面就不是我们想要的了

我们想实现的是最后的一个靠左,这时候需要借助一个盒子,内容为空,边框颜色为背景色,代码如下:
.foodie-right-li-block {
border-color: #f6f7f7;
}
需要注意的是,在list对3取余剩1和0的时候是不需要的,因此需要添加判断
<view class="foodie-right-li foodie-right-li-block" v-if="list.length % 3 != 0"></view>
结果如下:

好啦,到这里就结束了
如果想实现每行显示4个label发现这个方法不好使了,其实还是能够套用的,更改取余就好啦,代码如下:
<view class="foodie-right-li foodie-right-li-block" v-if="class_fixed_new.length % 4 == 2 || class_fixed_new.length % 4 == 3" v-for="(item,index) in (4-class_fixed_new.length% 4 )"></view>
说明:
1. class_fixed_new为list列表
2.因为余数为1和4的时候是不需要增加额外的盒子来辅助布局,隐藏通过v-if来现在,不加也可以,但是得加余数为0的判断
3.实现发布朋友圈的照片列表展示

话不多说,直接上码
<view class="release-imgs">
<view class="release-imgs-li" v-for="(item,index) in imgsList" :key="index"></view>
<view class="release-imgs-li release-imgs-li-add" v-if="imgsList.length != 9">+</view>
<view class="release-imgs-li release-imgs-li-block" v-if="imgsList.length == 1 || imgsList.length == 4 || imgsList.length == 7"></view>
</view>
<script>
export default {
data() {
return {
imgsList: [0,1]
}
},
}
</script>
<style lang="less">
// 图片
.release-imgs {
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-content: flex-start; .release-imgs-li {
width: 220upx;
height: 220upx;
background: goldenrod;
margin-bottom: 15upx;
} .release-imgs-li-add {
background: #c9caca;
font-size: 100upx;
line-height: 200upx;
text-align: center;
} .release-imgs-li-block {
background: #eee;
}
}
</style>
如果list的长度是1,4,7,那么需要一个额外的盒子
使用css3的Flex布局实现列表展示的更多相关文章
- CSS3:flex布局应用
想把先前的整理的东西贴出来,怎奈总是有额外事情发生,额,教训电脑要离水杯远点~~ 推荐一本书,<编写可维护的Javascript>这是Nicbolas C.Zakas写的,他的<Ja ...
- [Css] css3的flex布局
flex思维导图 {"name":"flex","children":[{"name":"传统布局方式&quo ...
- 【CSS3基础-Flex布局】
关于Flex 背景 在flex布局出现以前,常用的水平和垂直居中对齐方式有很多.flex布局的出现基本规范了这一过程. 通过justify-content和align-items两个属性即解决了水平居 ...
- 第103天:CSS3中Flex布局(伸缩布局)详解
一.Flex布局 Flex是Flexible Box的缩写,意为”弹性布局”,用来为盒状模型提供最大的灵活性. 任何一个容器都可以指定为Flex布局. .box{ display: flex; } 行 ...
- CSS3之flex布局
若要使用flex布局,需在父元素上声明" display : flex ",这样它所有的直系子元素就成为flex元素 1.居中 1)垂直居中:align-items : cente ...
- CSS3的flex布局
flex的一些属性 CSS3中引入了另一种框--flexbox,flexbox有一些block和inline不同的性质,比如: 自适应子元素(flex item,又称伸缩项目)的宽度 伸缩项目的flo ...
- Flex布局【弹性布局】学习
先让我们看看在原来的学习中遇到的问题 之前在软件工程的大作业中,自己从零开始学习如何开发一个网站,从页面,到后台,当然数据库是大二的必修课 在学习如何编写一个静态页面的时候,完全是自学,自己摸索,所以 ...
- CSS3弹性伸缩布局(二)——flex布局
上一篇博客<CSS3弹性伸缩布局(一)——box布局>介绍了旧版本的box布局,而这篇博客将主要介绍最新版本的flex布局的基础知识. 新版本简介 新版本的Flexbox模型是2012年9 ...
- CSS3弹性盒模型,Flex布局教程
布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性.它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现. CSS3中引入flex的弹性盒模型 ...
随机推荐
- MongoDB基础篇1:安装和服务配置
一.下载 请前往官网下载community版本MongoDB,我当前可见最新版本是3.6.4 https://www.mongodb.com/download-center#community 如需下 ...
- 在PyCharm中自动添加文件头、时间日期等信息
初次安装使用PyCharm,在新建.py文件时会发现文件头并没有什么信息,因此,使用模板会比较方便.方法如下: 1.打开PyCharm,选择File--Settings 2.依次选择Editor--- ...
- UniGUI设置背景图片(09)
主要是Background和LoginBackground属性, 类似地Login窗口背景图也可这样修改 UniServerModule.MainFormDisplayMode:= mfPage;/ ...
- unity 骨骼 蒙皮
https://blog.csdn.net/weixin_44350205/article/details/100551233 https://www.jianshu.com/p/d5e2870eb3 ...
- jQuery Validation Engine(三) 基本常识
1:response.validateFail(fieldId, "机构英文名已被其他人使用"); //field为这个字段的id,”“ 双引号的内容,是提示语 <!DOCT ...
- c++存储区域
来自:https://www.cnblogs.com/simonote/articles/3146038.html 在C++中,内存分成5个区,他们分别是堆.栈.自由存储区.全局/静态存储区和常量存储 ...
- HBase基准测试
执行命令: hbase org.apache.hadoop.hbase.PerformanceEvaluation 返回信息: [root@node1 /]# hbase org.apache.had ...
- 如何确定Redis集群中各个节点的主从关系
1.首先通过命令(以192.168.203.141为例,-c代表集群的意思) ./redis-cli -h 192.168.203.141 -p 8001 -c 2.然后在输入 cluster no ...
- android 动态壁纸开发
转:http://www.eoeandroid.com/thread-100389-1-1.html android 动态壁纸开发参考:http://www.ophonesdn.com/article ...
- CH10 泛型算法
概述 大多数算法都定义在algorithm头文件中. Note:算法永远不会执行容器操作 泛型算法本身不会执行容器的操作,而是通过迭代器来访问.修改等操作 10.1 题目要求读取数据存入vector, ...