CSS grid 布局

CSS grid 布局

.father{
    display: grid;
    grid-template-columns: 20% 60% 20%;
    grid-template-rows: 20% 20% 20% 20% 20%;
    grid-gap: 10px 10px;
    grid-template-areas:    '1.2'
	                        '3.4'
	                        '5.6'
	                        '7.8'
	                        '9.10'
    ;
}

或者使用 repeat() 方法

    grid-template-rows: repeat(5, 20%);

GRID

定位子元素位置

子元素可以按次排列,或者可以指定位置:

.child {
  justify-self: start | end | center | stretch;
  align-self: start | end | center | stretch;
}

// 表示左侧第一个的位置
.area-left-1 {
        grid-row-start: 1; grid-row-end: 2;
        grid-column-start: 1;  grid-column-end: 2;
}

// 右侧第一个的位置
.area-right-1 {
        grid-row-start: 1; grid-row-end: 2;
        grid-column-start: 3;  grid-column-end: 4;
}

用 SCSS 生成子元素位置 class


@for $item from 1 through 5{
    .area-left-#{$item}{
        grid-row-start: $item; grid-row-end: $item + 1;
        grid-column-start: 1;  grid-column-end: 2;
    }
    .area-right-#{$item}{
        grid-row-start: $item; grid-row-end: $item+1;
        grid-column-start: 3;  grid-column-end: 4;
    }
}

生成

.area-left-1 {
  grid-row-start: 1;
  grid-row-end: 2;
  grid-column-start: 1;
  grid-column-end: 2;
}
.area-right-1 {
  grid-row-start: 1;
  grid-row-end: 2;
  grid-column-start: 3;
  grid-column-end: 4;
}
.area-left-2 {
  grid-row-start: 2;
  grid-row-end: 3;
  grid-column-start: 1;
  grid-column-end: 2;
}
.area-right-2 {
  grid-row-start: 2;
  grid-row-end: 3;
  grid-column-start: 3;
  grid-column-end: 4;
}
.area-left-3 {
  grid-row-start: 3;
  grid-row-end: 4;
  grid-column-start: 1;
  grid-column-end: 2;
}
.area-right-3 {
  grid-row-start: 3;
  grid-row-end: 4;
  grid-column-start: 3;
  grid-column-end: 4;
}
.area-left-4 {
  grid-row-start: 4;
  grid-row-end: 5;
  grid-column-start: 1;
  grid-column-end: 2;
}
.area-right-4 {
  grid-row-start: 4;
  grid-row-end: 5;
  grid-column-start: 3;
  grid-column-end: 4;
}
.area-left-5 {
  grid-row-start: 5;
  grid-row-end: 6;
  grid-column-start: 1;
  grid-column-end: 2;
}
.area-right-5 {
  grid-row-start: 5;
  grid-row-end: 6;
  grid-column-start: 3;
  grid-column-end: 4;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

十月ooOO

许个愿,我帮你实现

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值