用CSS3实现瀑布流布局的示例代码


Posted in HTML / CSS onNovember 10, 2017

以前使用瀑布流都要用js,现在有了css3,可以轻松实现了。

掌握点:

1、column-count 把div中的文本分为多少列

2、column-width 规定列宽

3、column-gap 规定列间隙

4、break-inside: avoid; 避免元素内部断行并产生新列

注意: Internet Explorer 9及更早 IE 版本浏览器不支持 column-count 属性。

column-count 属性规定元素应该被分隔的列数:

div
{
-moz-column-count:3;  /* Firefox */
-webkit-column-count:3; /* Safari 和 Chrome */
column-count:3;
}

column-gap 属性规定列之间的间隔:

div
{
-moz-column-gap:40px;  /* Firefox */
-webkit-column-gap:40px; /* Safari 和 Chrome */
column-gap:40px;
}

column-rule 属性设置列之间的宽度、样式和颜色规则:

div
{
-moz-column-rule:3px outset #ff0000; /* Firefox */
-webkit-column-rule:3px outset #ff0000; /* Safari and Chrome */
column-rule:3px outset #ff0000;
}

实例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>CSS3瀑布流</title>
    <style>
    /*大层*/
    .container{width:80%;margin: 0 auto;}
    /*瀑布流层*/
    .waterfall{
        -moz-column-count:4; /* Firefox */
        -webkit-column-count:4; /* Safari 和 Chrome */
        column-count:4;
        -moz-column-gap: 1em;
      -webkit-column-gap: 1em;
      column-gap: 1em;
    }
    /*一个内容层*/
    .item{
      padding: 1em;
      margin: 0 0 1em 0;
      -moz-page-break-inside: avoid;
      -webkit-column-break-inside: avoid;
      break-inside: avoid;
     border: 1px solid #000;
    }
    .item img{
        width: 100%;
        margin-bottom:10px;
    }
    </style>
</head>
<body>
    <div class="container">
        <div class="waterfall">
            <div class="item">
                <img src="https://imgsa.baidu.com/baike/c0%3Dbaike72%2C5%2C5%2C72%2C24/sign=f3d4063328738bd4d02cba63c0e2ecb3/a2cc7cd98d1001e910616de1be0e7bec55e797fa.jpg">
                <p>1 convallis timestamp</p>
           </div>



            <div class="item">
                <img src="https://imgsa.baidu.com/baike/c0%3Dbaike92%2C5%2C5%2C92%2C30/sign=03948ea9b4315c60579863bdecd8a076/8326cffc1e178a825a6b5d1cfe03738da977e833.jpg">
                <p>2 convallis timestamp 2 Donec a fermentum nisi. </p>
           </div>




            <div class="item">
                <img src="https://imgsa.baidu.com/baike/c0%3Dbaike80%2C5%2C5%2C80%2C26/sign=3d645bf2d0ca7bcb6976cf7ddf600006/6d81800a19d8bc3efe5f64fb858ba61ea8d345af.jpg">
                <p>3 Nullam eget lectus augue. Donec eu sem sit amet ligula 
        faucibus suscipit. Suspendisse rutrum turpis quis nunc 
        convallis quis aliquam mauris suscipit.</p>
           </div>



            <div class="item">
                <img src="https://imgsa.baidu.com/baike/c0%3Dbaike180%2C5%2C5%2C180%2C60/sign=fbc3501b0a087bf469e15fbb93ba3c49/bf096b63f6246b60ea65dd24e3f81a4c510fa273.jpg">
                <p> 4 Donec a fermentum nisi. Integer dolor est, commodo ut 
        sagittis vitae, egestas at augue. </p>
           </div>

  <div class="item">
                <img src="https://imgsa.baidu.com/baike/c0%3Dbaike150%2C5%2C5%2C150%2C50/sign=9fe1d71697ef76c6c4dff379fc7f969f/b03533fa828ba61ed2efcd184634970a304e5987.jpg">
                <p> 5 Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae, egestas at augue.</p>
           </div>
        </div>
    </div>
</body>
</html>

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

HTML / CSS 相关文章推荐
CSS3字体效果的设置方法小结
Jun 13 HTML / CSS
html5+css3气泡组件的实现
Nov 21 HTML / CSS
css3选择器基本介绍
Dec 15 HTML / CSS
用CSS3绘制三角形的简单方法
Jul 17 HTML / CSS
利用css3画个同心圆示例代码
Jul 03 HTML / CSS
浅谈HTML5 defer和async的区别
Jun 07 HTML / CSS
HTML5 Canvas旋转动画的2个代码例子(一个旋转的太极图效果)
Apr 10 HTML / CSS
Data URI scheme详解和使用实例及图片base64编码实现方法
May 08 HTML / CSS
微信浏览器取消缓存的方法
Mar 28 HTML / CSS
webView加载html图片遇到的问题解决
Oct 08 HTML / CSS
关于html选择框创建占位符的问题
Jun 09 HTML / CSS
css布局巧妙技巧之css三角示例的运用
Mar 16 HTML / CSS
CSS3制作酷炫的条纹背景
Nov 09 #HTML / CSS
css3实现文字扫光渐变动画效果的示例
Nov 07 #HTML / CSS
css3实现画半圆弧线的示例代码
Nov 06 #HTML / CSS
浅谈CSS3鼠标移入图片动态提示效果(transform)
Nov 06 #HTML / CSS
详解Sticky Footer 绝对底部的两种套路
Nov 03 #HTML / CSS
CSS3 mask 遮罩的具体使用方法
Nov 03 #HTML / CSS
用CSS3实现无限循环的无缝滚动的示例代码
Nov 01 #HTML / CSS
You might like
一次编写,随处运行
2006/10/09 PHP
如何做到多笔资料的同步
2006/10/09 PHP
php5 mysql分页实例代码
2008/04/10 PHP
兼容PHP5的PHP目录管理函数库
2008/07/10 PHP
php查询mssql出现乱码的解决方法
2014/12/29 PHP
Laravel find in set排序实例
2019/10/09 PHP
Laravel Eloquent分表方法并使用模型关联的实现
2019/11/25 PHP
javascript+css 网页每次加载不同样式的实现方法
2009/12/27 Javascript
JQuery调webservice实现邮箱验证(检测是否可用)
2013/05/21 Javascript
DOM操作一些常用的属性汇总
2015/03/13 Javascript
jQuery模仿单选按钮选中效果
2016/06/24 Javascript
js实现移动端微信页面禁止字体放大
2017/02/16 Javascript
Node.js使用orm2进行update操作时关联字段无法修改的解决方法
2017/06/13 Javascript
Angular入口组件(entry component)与声明式组件的区别详解
2018/04/09 Javascript
javascript使用正则实现去掉字符串前面的所有0
2018/07/23 Javascript
vue基于v-charts封装双向条形图的实现代码
2019/12/09 Javascript
微信小程序接入腾讯云验证码的方法步骤
2020/01/07 Javascript
js实现拖拽与碰撞检测
2020/09/18 Javascript
python时间整形转标准格式的示例分享
2014/02/14 Python
详解Python中映射类型的内建函数和工厂函数
2015/08/19 Python
1 行 Python 代码快速实现 FTP 服务器
2018/01/25 Python
Python的argparse库使用详解
2018/10/09 Python
Python找出微信上删除你好友的人脚本写法
2018/11/01 Python
用python标准库difflib比较两份文件的异同详解
2018/11/16 Python
对pytorch网络层结构的数组化详解
2018/12/08 Python
python-itchat 统计微信群、好友数量,及原始消息数据的实例
2019/02/21 Python
Python 离线工作环境搭建的方法步骤
2019/07/29 Python
Python+numpy实现矩阵的行列扩展方式
2019/11/29 Python
python之pymysql模块简单应用示例代码
2019/12/16 Python
CSS3的一个简单导航栏实现
2015/08/03 HTML / CSS
美国汽车交易网站:Edmunds
2016/08/17 全球购物
英国办公家具网站:Furniture At Work
2019/10/07 全球购物
Oracle的内存结构(Memory structures)
2015/06/10 面试题
什么是事务?事务有哪些性质?
2012/03/11 面试题
社区工作者感言
2014/03/02 职场文书
房贷工资证明范本
2015/06/12 职场文书