JS实现瀑布流布局

瀑布流布局是一种常见的网页布局方式,可以实现页面内容的动态排列,使页面看起来更加美观。下面是一个简单的JS实现瀑布流布局的示例:

复制代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>瀑布流布局</title>
<style>
    .waterfall {
        column-count: 4;
        column-gap: 10px;
    }

    .item {
        margin-bottom: 10px;
    }
</style>
</head>
<body>
<div class="waterfall" id="waterfall">
</div>

<script>
    const waterfall = document.getElementById('waterfall');

    const data = [
        'https://via.placeholder.com/150',
        'https://via.placeholder.com/200',
        'https://via.placeholder.com/250',
        'https://via.placeholder.com/300',
        'https://via.placeholder.com/350',
        'https://via.placeholder.com/400',
        'https://via.placeholder.com/450',
        'https://via.placeholder.com/500',
    ];

    data.forEach((url) => {
        const item = document.createElement('div');
        item.className = 'item';
        const img = document.createElement('img');
        img.src = url;
        item.appendChild(img);
        waterfall.appendChild(item);
    });
</script>
</body>
</html>

在这个示例中,我们首先定义了一个包含图片链接的数组data,然后使用forEach方法遍历数组,创建div元素作为每个图片的容器,并设置其样式为item。然后创建img元素,设置其src属性为对应的图片链接,最后将img元素添加到div容器中,并将整个div容器添加到waterfall容器中。

通过这种方式,我们可以实现一个简单的瀑布流布局,使页面内容以多列的方式动态排列。你可以根据实际需求调整列数和间距等样式来实现不同的效果。

相关推荐
Larry_Yanan3 小时前
Qt多进程(三)QLocalSocket
开发语言·c++·qt·ui
醒过来摸鱼3 小时前
Java classloader
java·开发语言·python
superman超哥3 小时前
仓颉语言中元组的使用:深度剖析与工程实践
c语言·开发语言·c++·python·仓颉
小鸡吃米…3 小时前
Python - 继承
开发语言·python
D_C_tyu3 小时前
Vue3 + Element Plus | el-table 表格获取排序后的数据
javascript·vue.js·elementui
JIngJaneIL3 小时前
基于java+ vue农产投入线上管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
祁思妙想3 小时前
Python中的FastAPI框架的设计特点和性能优势
开发语言·python·fastapi
唐装鼠3 小时前
rust自动调用Deref(deepseek)
开发语言·算法·rust
Lucas555555554 小时前
现代C++四十不惑:AI时代系统软件的基石与新征程
开发语言·c++·人工智能
源代码•宸4 小时前
goframe框架签到系统项目(BITFIELD 命令详解、Redis Key 设计、goframe 框架教程、安装MySQL)
开发语言·数据库·经验分享·redis·后端·mysql·golang