flex_contents_grid布局方式

flex/contents/grid

display:flex

justify主轴
align侧轴
content所有
items每一个自己对应的框

父元素属性

  • flex-direction(主轴方向)
    • row:从左到右(默认)
    • row-reverse:从右到左
    • column:从上到下
    • column-reverse:从下到上
  • justify-content(主轴子元素排列方式)
    • 需要提前设置好块的大小
    • flex-start:
    • flex-end:
    • center:
    • space-around:平分剩余空间,具有相同margin-left,margin-right
    • space-between:先两边贴边再平分
  • flex-wrap是否换行
    • nowrap:自动适配子元素的宽度高度等
    • wrap
  • align-items(侧轴上子元素排列方式)针对单行
    • flex-start:
    • flex-end:
    • center:
    • stretch:拉伸使得与父元素高度相同,子不能给高度
  • align-content(针对多行,针对侧轴)
    • flex-start:
    • flex-end:
    • center:
    • space-around:平分剩余空间,具有相同margin-left,margin-right
    • space-between:先两边贴边再平分
    • stretch:拉伸
    • flex-flow(同时包括flex-direction和flex-wrap)

子元素属性

  • flex:对剩余空间分配,默认为0
  • align-self:只针对这一个子盒子操作,可使用align-items中的属性
  • order:数值越小越靠前

display:contents

<!DOCTYPE html>
<html>
<head>
    <style>
        .item {
            display: contents;
            color: red;
            border: 2px solid blue;
            background-color: #ffffff;
            padding: 20px;
            margin: 20px;
        }
        .item::before {
            content: 'before';
            color: blue;
        }
        .item::after {
            content: 'after';
            color: white;
        }
    </style>

</head>
<body style="background-color: black;">
    <div class="item">
        <span>demo</span>
    </div>
</body>
</html>

设置了display:contents的元素的元素没有边框,所以元素的背景、padding、margin值都不会显示,但是可继承的属性会被子元素继承(例如color)

display:grid

父亲 属性

  • grid-template-columns:1fr 2fr 1fr;//列的占比,也可用px表示
    同样,有行的占比
  • 间距
    • 列:column-gap:22px;
    • 行:row-gap:22px;
    • 列和行:gap:22px;
  • 对齐
    • 垂直方向:align-items
    • 水平方向:justify-items
    • 对整体进行对齐:align-content/justify-content
  • grid-template-areas:对划分出的不同区域进行命名,而后可分配给子元素
.father{
grid-template-areas:
“header header header”
“sidebar content content”
“footer footer footer”
}
.son1{
grid-area:header;
}
.
.
.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值