Grid布局使用方法

502 阅读2分钟

Grid布局就是网格布局

CSS网格布局是CSS中功能最强大的布局系统。它是一个二维系统,这意味着它既可以处理又可以处理

第一步:

首先先将父容器定义为网格容器,块级网格grid,或者定义为内联网格inline-grid;

    .container{
        display:grid | inline-grid;
    }

Grid网格布局的原理就是把一一块区域用行和列分割成几个小的区域,就像网格一样(或者理解为象棋棋盘的布局)

第二步:分割

在父容器内将区域分成几行和几列

.container{
    grid-template-columns: 40px 50px auto 50px 40px;
    grid-template-rows:25% 100px auto;
}

column是列,将父容器分成5列,每列的宽度分别是40px,50px,自适应,50px,40px, row是行,每一行的高度是:占比父容器的25%,100px ,自适应剩下的

第三步:使用

使用方式一:

这样就将网页分割成一个网格,有行和列,使用这些网格时就,按照从第几行第几行;从第几列第几列划分区域

比如说我想在红线区域设置轮播图 a

就是从第1行到第3三行;从第2列到第5列

.a{
    grid-row-start:1;
    grid-row-end:3;
    grid-column-start:2;
    grid-column-end:5;
}

方法二:使用grid-template-area:

就是在父容器里给每个区域起一个名字,然后再指定给子盒子。

还以上边轮播图的案例:绿色的是名字

.container{
    grid-template-columns: 40px 50px auto 50px 40px;
    grid-template-rows:25% 100px auto;
    grid-template-area:
        "s img img img d"
        "m img img img d"
        "pic pic y  y  d";
}

这样就给每个方框起了名字,在使用时指定,所有名字为img的方框都成为了轮播图的区域,在里面放置图片,会铺满整个img框

.a{
    grid-are:img;
}

这只是粗略的用法,详细的可以看官网:css之Grid网格布局

也可以玩这个网格布局的小游戏:grid网格布局小游戏 可以帮助你快速地掌握grid网格布局