CSS栅格系统在实际的项目中怎么使用
Admin 2022-06-14 群英技术资讯 1451 次浏览
今天就跟大家聊聊有关“CSS栅格系统在实际的项目中怎么使用”的内容,可能很多人都不太了解,为了让大家认识和更进一步的了解,小编给大家总结了以下内容,希望这篇“CSS栅格系统在实际的项目中怎么使用”文章能对大家有帮助。前言
css栅格通常捆绑在各种框架中,但有时你需要自己去定制一个css栅格来满足实际的业务需要,本文聊聊css栅格系统在项目中的灵活运用。
需求
UI设计了如下布局,其中左上角橙色部分是固定的,蓝色部分是动态渲染的,从前往后依次展示,有一个就显示一块,有二个就显示二块,依次类推。如果数据多于6个,那么多余的数据,依次再在下方四列的地方进行展示。

分析
从图中可以看到,栅格分两种,一种是3列的栅格,一种是4列的栅格。当后端接口返回数据后,js需要进行判断:当数据大于6个时,前6个放在数组A中,数组A中的数据展示在3列的栅格中,多余部分放在数组B中,数组B中的数据展示在4列的栅格中。
html部分
<div id="app">
<div class="grid-container">
<div style="width: 25%; height: 220px; float: left; background-color: #FF6600; "></div>
<div class="row" style="width: 75%; float: right;">
<div class="col-3" v-for="(item, index) in groupListCol3" :key="index">
<div class="groups-cell">{{item.name}}</div>
</div>
</div>
<div class="row" style="width: 100%;">
<div class="col-4" v-for="(item, index) in groupListCol4" :key="index">
<div class="groups-cell">{{item.name}}</div>
</div>
</div>
</div>
</div>
css部分
.grid-container {
width: 100%;
}
.grid-container *{
box-sizing: border-box;
}
.grid-container .row:before,
.grid-container .row:after {
content: "";
display: table;
clear: both;
}
.grid-container [class*='col-'] {
float: left;
min-height: 1px;
/*-- gutter --*/
padding: 0 0 20px 20px;
}
.grid-container .col-3{
width: 33.33%;
height: 120px;
}
.grid-container .groups-cell {
background-color: #66d3ff;
height: 100px;
}
.grid-container .col-4 {
width: 25%;
height: 120px;
}
.grid-container .col-4:nth-child(4n+1) {
padding: 0 0px 20px 0px;
}
注意:在4列的栅格中,每行的第一个单元格不需要padding-left,所以,最后,还得设置.col-4:nth-child(4n+1)的值。
js部分
<script src="https://cdn.bootcss.com/vue/2.5.16/vue.js"></script>
<script>
new Vue({
el: '#app',
data: {
groupListCol3: [],
groupListCol4: []
},
created () {
let list = [
{name: 'A'},
{name: 'B'},
{name: 'C'},
{name: 'D'},
{name: 'E'},
{name: 'F'},
{name: 'G'},
{name: 'H'},
{name: 'I'},
{name: 'J'},
{name: 'K'},
{name: 'L'}
]
if (list.length > 6) {
this.groupListCol3 = list.slice(0, 6)
this.groupListCol4 = list.slice(6)
} else {
this.groupListCol3 = list
}
}
})
</script>
小结
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章给大家分享的是用flex布局实现无缝滚动的效果。小编觉得挺实用的,因此分享给大家做个参考,文中示例代码介绍的非常详细,感兴趣的朋友接下来一起跟随小编看看吧。
html中如何给select添加CSS样式?给select标签添加id或class属性并设置属性值,在style标签对中,使用id或class选择器选中select元素并设置样式
这篇文章给大家分享的是用CSS3实现动态渐变背景的示例。对于渐变效果的实现大家应该都比较熟悉,那么如果是动态变化的渐变效果该如何做呢?实现代码及效果如下,文中的示例代码介绍得很详细,有需要的朋友可以参考,接下来就跟随小编一起了解看看吧。
这篇文章主要介绍了css列表滑动防止被底部遮住和适配屏幕长一点的机型处理 ,需要的朋友可以参考下
这篇文章主要介绍了HTML+CSS+JS实现堆叠轮播效果,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008