本文介绍了css3 column实现卡片瀑布流布局的示例代码,分享给大家,具体如下:
实现效果
今天遇到了需要实现一个卡片的瀑布流布局的问题,卡片高度是不同的。
最后使用css3中的column属性实现了这个布局,而且非常的简便啊(lz隐约记得上次写瀑布流的时候是用js实现的...naive啊)
实现效果大概如下图~
相关属性
column-count:想实现的列数,我这里只需要2列 column-width:列的宽度 column-gap:列之间的间隙 break-inside:avoid:如果不将子元素(每个卡片)设置这个属性的话,就会出现一张卡片被截断显示在不同的列中的情况遇到的问题
实现过程中遇到了一个小问题,我的卡片底部border会被截掉一块 通过设置子元素的overflow:auto解决了代码
.videoCards {
padding-top: 4rpx;
column-count: 2;
column-gap: 18rpx;
.card {
display: inline-block;
margin-top: 20rpx;
width: 326rpx;
background: #FFFFFF;
box-shadow: 0 0 10rpx 0 rgba(0,0,0,0.10);
border-radius: 14rpx;
break-inside: avoid;
padding-bottom: 20rpx;
overflow: auto;
}
}