首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

分享:纯 css 瀑布js 瀑布

博客地址:https://ainyi.com/60 分享一次纯 css 瀑布  和 js 瀑布 纯 css 写瀑布 1.multi-columns 方式: 通过 Multi-columns 相关属性...这样做只能通过 js 来写瀑布 js瀑布: html 结构与上面类似,这里我用图片来做示例: 1 2 <...瀑布实现方式: css 绝对定位方式:根据每张图片位置设置 top 和 left 值: 1 //瀑布效果 2 //这里有一个坑(已经修复): 3 //因为是动态加载远程图片,在未加载完全无法获取图片宽高...5 6 //itemtop值:第一行:top为0 7 // 其他行:必须算出图片宽度在item宽度缩小比例,与获取图片高度相乘,从而获得item高度 8 //...就可以设置每张图片在瀑布中每块itemtop值(每一行中最小item高度,数组查找) 9 //itemleft值:第一行:按照每块item宽度值*块数 10 // 其他行

8.9K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    分享一次纯 css 瀑布js 瀑布

    博客地址:https://ainyi.com/60 现在百度图片,360 图片搜索,都是以一种瀑布形式展示,那么接下来,分享一波纯 css 瀑布js 瀑布 纯 css 写瀑布 multi-columns...,体验就会很不好 我们想要是这样: [no351tx20r.jpeg] 要实现如上,只能通过 js 来写瀑布 js瀑布 html 结构与上面类似,但这里我用图片来做示例 <div class=...瀑布实现方式 css 绝对定位方式:根据每张图片位置设置 top 和 left 值 // 瀑布效果 // 这里有一个坑(已经修复): // 因为是动态加载远程图片,在未加载完全无法获取图片宽高...// item top 值:第一行:top 为 0 // 其他行:必须算出图片宽度在 item 宽度缩小比例,与获取图片高度相乘,从而获得 item 高度 //...就可以设置每张图片在瀑布中每块 item top 值(每一行中最小 item 高度,数组查找) // item left 值:第一行:按照每块 item 宽度值*块数 //

    2.4K40

    JS实现瀑布页面布局

    个人对瀑布流布局理解: 每列宽度相等而高度不等,且第二行第一个容器需要放在第一行高度最小容器下面,依次类推放置。...附上代码: 代码仅实现了瀑布布局方式和 resize 监听,如果大家有需要,可以自己拓展下:实现监听滚动事件,页面滚动加载图片功能。 代码中写了详细注释,可以直接使用。 <!...document.getElementsByClassName("container")[0].clientWidth; // 获取图片固定宽度...let nums = Math.floor(pageWidth / (itemWidth + gap)); // 瀑布实现原则:...// 所有图片元素绝对定位,从第二行开始,依次从第一行图片元素高度最小下方填充,这里注意,不是从左至右填充,即优先填补空位,填补一个后,再填补下一个较大空位 // 定义第一行图片所有高度数组

    2.8K40

    js获取各种高度总结

    在写js时候偶尔需要获取各种高度,比如;浏览器高度,页面高度,滚动高度等。抽空整理了我自己常用到,时间仓促,没有考虑到万恶IE浏览器。。。。...获取屏幕高度和宽度(屏幕分辨率): window.screen.height window.screen.width 获取屏幕工作区域高度和宽度(去掉状态栏): window.screen.availHeight...window.screen.availWidth 网页全文高度和宽度: document.body.scrollHeight document.body.scrollWidth 滚动条卷上去高度和向右卷宽度...: document.body.scrollTop document.body.scrollLeft 网页可见区域高度和宽度(不加边线): document.body.clientHeight document.body.clientWidth...网页可见区域高度和宽度(加边线): document.body.offsetHeight document.body.offsetWidth

    12.6K20

    多栏布局与JS实现瀑布

    css3属性之多栏布局与JS实现瀑布    背景:之前打算自己总结一下flex布局知识点,发现自己无从下手,原因在何处:我反思了一下,其实原因很简单,使用次数少,更多时间使用了百分比,浮动和定位解决...设定值,否则就会减少栏数来增加每栏宽度 css3多列和JS实现瀑布  给自己安利一波吧,看到网上很多瀑布效果,哇,简直棒极了有没有;于是我迫不及待打开V**,打开了pinterest官网...自己也梳理梳理逻辑: 我们都不陌生瀑布是同宽,但是高度不一,js主要工作就是根据高度来进行布局, 1)当一行排满后,准备排第二行时候,...把第一个图片放到上一行图片高度最小处,以此类推, 另外有一点就是自动加载,这里我做一个条件来判断是否加载, 2)当最后一个元素距离网页顶部高度(offsetTop)+ 这个元素高度一半...< 垂直方向上滚轮量(scrollTop) + 网页可见区域高 时: 我们就加载图片(这里我没有用ajax请求,我用了一个json数组来模拟json数据) 要搞清楚offsetTop、scrollTop

    3K90

    JS获取浏览器窗口大小 获取屏幕,浏览器,网页高度宽度

    网页被卷去高:document.body.scrollTop 网页被卷去左:document.body.scrollLeft 网页正文部分上:window.screenTop 网页正文部分左:window.screenLeft...:window.screen.availWidth HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth scrollHeight: 获取对象滚动高度...scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容最左端之间距离 scrollTop:设置或获取位于对象最顶端和窗口中可见内容最顶端之间距离 scrollWidth:获取对象滚动宽度...offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定父坐标的高度 offsetLeft:获取对象相对于版面或由 offsetParent 属性指定父坐标的计算左侧位置...else if ((document.body) && (document.body.clientWidth)) winWidth = document.body.clientWidth; //获取窗口高度

    8.1K30

    分享 1个原生 JS 瀑布案例

    瀑布流布局中图片有一个核心特点 —— 等宽不定等高,瀑布流布局在国内网网站都有一定规模使用,比如pinterest、花瓣网等等。那么接下来就基于这个特点开始瀑布探索之旅。...const perNum = this.getPerNum() // 获取每排图片数 const perList = [] // 存储第一列各图片高度 for (let...pointer = this.getMinPointer(perList) } } 细心朋友也许发现了代码中获取图片高度用到了offsetHeight 这个属性,这个属性高度之和等于图片高度...waterfall-box { float: left; width: 200px; padding-left: 10px; padding-bottom: 10px; } 至此完成了瀑布基本布局...联想到业务场景中瀑布中下拉加载图片一般都来自 Ajax 异步获取,那么加载数据必然不能写死在库里,期望能实现如下调用(此处借鉴了 waterfall 使用方式), const waterfall

    1.9K20

    JS获取浏览器窗口大小 获取屏幕,浏览器,网页高度宽度(转)

    (包括边线宽)  网页可见区域高:document.body.offsetHeight (包括边线宽)  网页正文全文宽:document.body.scrollWidth  网页正文全文高...,scrollWidth,clientWidth,offsetWidth  scrollHeight: 获取对象滚动高度。 ...scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容最左端之间距离  scrollTop:设置或获取位于对象最顶端和窗口中可见内容最顶端之间距离  scrollWidth:获取对象滚动宽度...  offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定父坐标的高度  offsetLeft:获取对象相对于版面或由 offsetParent 属性指定父坐标的计算左侧位置...(2)在随后JavaScript代码中,首先定义了两个变量winWidth和winHeight,用于保存窗口高度值和宽度值。

    16.2K10

    原生 JS 实现一个瀑布插件

    瀑布流布局中图片有一个核心特点 —— 等宽不定等高,瀑布流布局在国内外网站都有一定规模使用,比如pinterest、花瓣网等等。那么接下来就基于这个特点开始瀑布探索之旅。...const perNum = this.getPerNum() // 获取每排图片数 const perList = [] // 存储第一列各图片高度 for (let...pointer = this.getMinPointer(perList) } } 细心朋友也许发现了代码中获取图片高度用到了 offsetHeight 这个属性,这个属性高度之和等于图片高度...waterfall-box { float: left; width: 200px; padding-left: 10px; padding-bottom: 10px; } 至此完成了瀑布基本布局...联想到业务场景中瀑布中下拉加载图片一般都来自 Ajax 异步获取,那么加载数据必然不能写死在库里,期望能实现如下调用(此处借鉴了 waterfall 使用方式), const waterfall

    2.4K40

    获取JS加载网页网页源码,不想获取JS加载后数据

    原来那篇文章竟然爆文了,突破了1.5w阅读量,欢迎大家围观。 不过这里粉丝需求有点奇怪,他不需要JS加载后数据页面,而是需要JS网页。昨天在群里又讨论起这个问题,这次一起来看看这个问题。...二、实现过程 这里【瑜亮老师】指出异步页面中,标签和数据都是不在页面源码中。你这个页面,数据在json,然后js拼装后显示在页面中。...,你就知道这个网页一开始是没有内容,全靠js在渲染。...先渲染再获取就有了,再者说,你目的肯定是只要这页面上表格,表格就是json,获取json链接比获取渲染后网页方便多了。...这篇文章主要盘点了一个Python网络爬虫网页JS渲染源网页源码获取问题,文中针对该问题,给出了具体解析和代码实现,帮助粉丝顺利解决了问题。

    11110

    获取JS加载网页网页源码,不想获取JS加载后数据

    原来那篇文章竟然爆文了,突破了1.5w阅读量,欢迎大家围观。 不过这里粉丝需求有点奇怪,他不需要JS加载后数据页面,而是需要JS网页。昨天在群里又讨论起这个问题,这次一起来看看这个问题。...二、实现过程 这里【瑜亮老师】指出异步页面中,标签和数据都是不在页面源码中。你这个页面,数据在json,然后js拼装后显示在页面中。...,你就知道这个网页一开始是没有内容,全靠js在渲染。...先渲染再获取就有了,再者说,你目的肯定是只要这页面上表格,表格就是json,获取json链接比获取渲染后网页方便多了。...这篇文章主要盘点了一个Python网络爬虫网页JS渲染源网页源码获取问题,文中针对该问题,给出了具体解析和代码实现,帮助粉丝顺利解决了问题。

    9910

    react-masonry-css瀑布基本使用

    瀑布介绍 瀑布,又称瀑布流式布局。是比较流行一种网站页面布局,视觉表现为参差不齐多栏布局,随着页面滚动条向下滚动,这种布局还会不断加载数据块并附加至当前尾部。逐渐在国内流行开来。...一般使用网站类型有: 图片画廊:展示不同尺寸图片,自动调整布局。 博客文章:以瀑布流形式展示博客文章摘要,提高阅读体验。 电商产品列表:展示不同类别和尺寸产品,增强用户浏览体验。...社交媒体内容:展示用户生成内容,如帖子、评论等,形成动态瀑布流布局。 比如: 小红书首页作品展示, 壁纸软件壁纸展示等等.....尽管不支持不同宽度元素布局和基于高度排序,但其性能和浏览器兼容性使其成为创建流畅、可靠布局理想选择。...在我这个项目中, 这个组件image, 获取来源于父组件传递 // 定义存储壁纸state const [images, setImages] = useState([]); //

    20610
    领券