要实现的效果如下图:

首先最容易想到的就是分两列,然后把内容添加进去就可以了。

<style>.container {display: flex;flex-direction: row;justify-content: space-between;padding: 12px;}.left {margin-right: 6px;flex: 1;}.right {margin-left: 6px;flex: 1;}
</style><div class="container"><div class="left"><div class="image-box"><img :src="img" alt="" /></div><div class="image-box"><img :src="img" alt="" /></div></div><div class="right"><div class="image-box"><img :src="img" alt="" /></div><div class="image-box"><img :src="img" alt="" /></div></div></div>

比较麻烦的就是API返回给我们的是一个列表,但是我们需要两个列表,需要JS进行拆分处理。

let left = []
let right = []
let data = [img1, img2, img3]
for (let i = 0; i < data.length; i++) {if (i % 2 === 0) {left.push(data[i])} else {right.push(data[i])}
}

优势:思路清晰简单,只需要更加列数然后添加图片即可,而且图片的顺序可以是从左往右。

也可以使用 CSS3 column 属性。

关键思路:

1、column-count:指定列数。3、column-gap: 设置列之间的间距。

关键代码:

<template><div class="waterfall-width-column"><div class="image-box" v-for="img in imgList" :key="img"><img :src="img" alt="" /></div></div>
</template>
<style lang="scss" scoped>
.waterfall-width-column {column-count: 2;column-gap: 10px;.image-box {img {display: block;width: 100%;}}
}
</style>

更加简单,不用额外计算,直接使用CSS渲染高效。劣势:图片的顺序是从上向下排列的,这个要看业务需求允不允许了。

瀑布流布局的实现方式相关推荐

  1. 3种方式实现瀑布流布局

    JS 实现瀑布流布局 前言 一.JS 实现瀑布流 二.column 多行布局实现瀑布流 三.flex 弹性布局实现瀑布流 四.3种方式对比 前言 今天逛闲鱼的时候观察到每一行的高度不是相同的,经了解才 ...

  2. html布局结构瀑布流,三种方式实现瀑布流布局

    分别使用javascript,jquery,css实现瀑布流布局: 第一种方式:使用JavaScript: 瀑布流布局 *{padding:0;margin:0;} .clearfix:after, ...

  3. 浅析瀑布流布局原理及实现方式

    一.瀑布流 瀑布流布局有一个专业的英文名称Masonry Layouts.瀑布流布局已经有好多年的历史了,我最早知道这个名词的时候大约是在2012年,当时Pinterest网站的布局就是使用的这种流式 ...

  4. html瀑布式原理,3种方式实现瀑布流布局小结

    前言 今天逛闲鱼的时候观察到每一行的高度不是相同的,经了解才知道原来这是一种瀑布流布局,感觉挺有意思,于是决定研究一下,在网上也找了一些方案,实现瀑布流大概有3种方式. 一.JS 实现瀑布流 思路分析 ...

  5. 【Android 应用开发】UI绘制流程 ( 生命周期机制 | 布局加载机制 | UI 绘制流程 | 布局测量 | 布局摆放 | 组件绘制 | 瀑布流布局案例 )

    文章目录 一. 博客相关资料 及 下载地址 1. 代码查看方法 ( ① 直接获取代码 | ② JAR 包替换 ) 2. 本博客涉及到的源码查看说明 二. Activity 生命周期回调机制 1. An ...

  6. RecyclerView控件实现横向滚动和瀑布流布局,以及RecyclerView的点击监听(项目已上传GitHub)

    先附上我的GitHub项目地址: https://github.com/Skymqq/RecyclerViewTest.git 我们已经知道,ListView的拓展性不好,它只能实现纵向的滚动的效果, ...

  7. 使用jquery+css实现瀑布流布局

    虽然可以直接使用css实现瀑布流布局,但显示的方式有点问题,所以这儿就直接使用jquery+css来实现瀑布流布局,最终效果如下:      思路是通过将每个小块的position设置为relativ ...

  8. vue 实现瀑布流布局的 组件/插件总汇:vue-waterfall、vue-waterfall-easy、vue-virtual-collection、vue-grid-layout

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 瀑布流作为当前比较流行的一种网页布局方式,在视觉上呈现出参差不齐.琳琅满目.唯美的视觉效果,该布局随 ...

  9. 微信小程序中实现瀑布流布局和无限加载

    瀑布流布局是一种比较流行的页面布局方式,最典型的就是Pinterest.com,每个卡片的高度不都一样,形成一种参差不齐的美感. 在HTML5中,我们可以找到很多基于jQuery之类实现的瀑布流布局插 ...

最新文章

  1. linux下添加路由的方法
  2. 为什么构造函数不能声明为虚函数,析构函数可以,构造函数中为什么不能调用虚函数?
  3. TOP级CG行业云渲染服务的演进之路
  4. Flutter 弧度与角度之间的换算
  5. 写给Android开发者的混淆使用手册
  6. 0基础学python要多久-零基础学习python,要多久才可以学好并且找到工作?
  7. visual studio 最新稳定版本_速来围观!Android Studio 4.0 稳定版发布了
  8. QATF自动化测试框架
  9. 修改dell 序列号_怎么将xp的vlk序列改为dell oem序列号工具
  10. JAVA 标准的POJO类
  11. 山东大学暑期实训——智能人物画像综合分析系统
  12. 她全奖赴海外读博,一作发Science,毅然回国后任东南大学教授!
  13. 物联网毕设(基于STM32的蓝牙检测心率+步数+手机APP)
  14. 电子书资源(建议珍藏,不断更新中)
  15. c++工具库大全(值得收藏)
  16. 《安富莱嵌入式周报》第296期:硬件电路实现SPI转以太网,单片机3D游戏图形引擎,Linux基金会年度报告,安捷伦直流电源原理图,KEIL C51更新9.61
  17. 如何在Swift中创建漂亮的iOS图表
  18. sqli-labs踩坑
  19. php 字典树,关于php:数据结构PHP-字典树Trie的实现
  20. 【算法】阿里精准推广的核心算法MLR

热门文章

  1. 云计算正在“抹杀”开源?
  2. 曾被“劝退”的 C++ 20 正式发布!
  3. 支付宝回应手机黑产;微软将允许员工永久在家办公;Flutter 1.22 正式发布|极客头条
  4. 从芯片到 AI 生态,52 岁英特尔的蜕变!
  5. 航拍高手、吉他十级,6500+Star 开源项目作者,后浪程序员给力!
  6. 苹果或已放弃3月发布廉价新iPhone;贾跃亭回应家人巨额索赔;微软不再继续开发 Visual Basic | 极客头条...
  7. 如何玩转 HTTP 3?
  8. 史上最强春节红包战:互联网竞争缩影下的百亿争斗
  9. 微信支付宝关闭三星Galaxy指纹支付;乐视网回应贾跃亭破产;Chrome 78发布|极客头条...
  10. 硬核干货! 你的业务是否适合上链、上链有那些坑?dfuse、慢雾、MYKEY大佬为你为你指点迷津……...