zoukankan      html  css  js  c++  java
  • css之grid布局使用

    场景:项目开发中遇到如下问题,从后端请求活动数据,数组长度未知,每一个活动以卡片格式展示,展示格式如下:

    刚看到需求,我选择使用flex布局进行布局。创建如下demo

    css:

          .wrapper{
                display: flex;
                justify-content: space-between;
                flex-wrap: wrap;
                padding: 50px;
            }
            .box {
                margin: 10px;
            }
            .box div {
                background: pink;
                 500px;
                height: 200px;
                text-align: center;
                line-height: 200px;
                font-size: 20px;
                font-weight: bold;
            }

    html:

        <div class="wrapper">
            <div class="box">
                <div>box1</div>
            </div>
            <div class="box">
                <div>box2</div>
            </div>
            <div class="box">
                <div>box3</div>
            </div>
            <div class="box">
                <div>box4</div>
            </div>
            <!-- <div class="box">
                <div>box5</div>
            </div> -->
        </div>

    存在问题:当最后一行不是一个“卡片”时,布局会出现问题,如下图

    尝试了几种解决方法,无果,最终查到可使用CSS3的grid布局。

    参考阮老师的资料:http://www.ruanyifeng.com/blog/2019/03/grid-layout-tutorial.html

    修改CSS

            .wrapper {
                display: grid; /* 使用grid */
                /* grid-template-columns属性定义每一列的列宽; fr为方便表示比例关系的一种关键字*/
                grid-template-columns: 1fr 1fr 1fr;
                padding: 50px;
            }

    展示如图:

    这样就可以结合angularJS的ng-repeat循环从后端请求过来的数组,进行数据填充,无需考虑活动数据多少,进行数据展示啦!

  • 相关阅读:
    第一次软工作业
    项目复审&事后诸葛亮分析
    测试与发布
    团队项目scrum冲刺日志合集
    团队作业3
    团队作业2
    团队作业1-团队展示&选题
    结对项目, 四则运算
    个人项目作业
    自我介绍+软工五问
  • 原文地址:https://www.cnblogs.com/planetwithpig/p/14032723.html
Copyright © 2011-2022 走看看