flex布局(弹性盒子三)

6 篇文章 0 订阅
2 篇文章 0 订阅

在之前的文章里说到了弹性盒子的部分属性,接下来接着说弹性盒子的其余属性

目录

弹性盒子的属性及其属性值

1.order 顺序指定:用css指定顺序,不用html排序

2.flex-grow 子项目延伸比率

3.flex-shrink 子项目的收缩比率 和flex-grow正好相反

4.flex-basis 子项目的基本宽度

5.flex  flex-grow、flex-shrink和flex-basis一起指定

6.align-self  子元素垂直对齐  这是给单个的子元素盒子设置样式


弹性盒子的属性及其属性值

1.order 顺序指定:用css指定顺序,不用html排序

 设置内容区的样式:
 .container{
            height: 500px;
            width: 500px;
            border: 1px red solid;
            display: flex;
        }
        .item{
            height: 100px;
            width: 100px;
            background-color: red;
            text-align: center;
            margin: 5px;
            line-height: 100px;
            font-size: 20px;
        }
        .container>.item:first-child{
            color: blue;
            order: 3;
        }
内容区:
  <div class="container">
        <div class="item">1</div>
        <div class="item">2</div>
        <div class="item">3</div>
    </div>

如图所示:html里给数字1盒子 排序在最前面第一位,但是css里给数字1盒子排序在最后面一位,最后数字1盒子排在了最后面一位,说明css也可以给子元素盒子进行排序

2.flex-grow 子项目延伸比率

 设置内容区的样式:
 .container{
            height: 500px;
            width: 500px;
            border: 1px red solid;
            display: flex;
        }
        .item{
            height: 100px;
            width: 100px;
            background-color: red;
            text-align: center;
            margin: 5px;
            line-height: 100px;
            font-size: 20px;
        }
        .container>.item:first-child{
            color: blue;
           flex-grow: 1;
        }
内容区:
  <div class="container">
        <div class="item">1</div>
        <div class="item">2</div>
        <div class="item">3</div>
    </div>

如图所示:有一个元素设置延伸宽度至挤满父元素的宽度,两个元素设置就是共同平分共同延伸至挤满父元素的宽度

3.flex-shrink 子项目的收缩比率 和flex-grow正好相反

例:.item1{flex-shrink:0;}

4.flex-basis 子项目的基本宽度

例:.item1{flex-basis:200px;}

5.flex  flex-grow、flex-shrink和flex-basis一起指定

例:.item1{flex:0 1 30%;}

6.align-self  子元素垂直对齐  这是给单个的子元素盒子设置样式

a  auto 默认值

意思是指定的子元素盒子还是停留在当前位置,没有变化

b  flex-shart  靠上  

意思是指定的子元素盒子靠上,因为子元素盒子原始位置就是靠上,所以也相当于是默认值

flex-end  靠下

 设置内容区的样式:
 .container{
            height: 500px;
            width: 500px;
            border: 1px red solid;
            display: flex;
        }
        .item{
            height: 100px;
            width: 100px;
            background-color: red;
            text-align: center;
            margin: 5px;
            line-height: 100px;
            font-size: 20px;
        }
        .container>.item:first-child{
            color: blue;
          align-self: flex-end;
        }
内容区:
  <div class="container">
        <div class="item">1</div>
        <div class="item">2</div>
        <div class="item">3</div>
    </div>

如图所示:设置选定的子元素 flex-end后,盒子靠在了父元素盒子的最下面

center  居中

意思是设置选定的子元素center 后,盒子靠在了父元素盒子的最中间

stretch  默认值

和auto一样,意思是指定的子元素盒子还是停留在当前位置,没有变化

baseline  也是靠上的意思,和flex-start一样相当于是默认值

  • 22
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 23
    评论
弹性盒子布局(Flexbox)是一种用于在容器中进行灵活的、可响应的布局的 CSS3 模块。它提供了一种简单而强大的方式来对容器内的元素进行排列、对齐和分布。 Flexbox 的核心思想是将容器分为主轴(main axis)和交叉轴(cross axis)。主轴是元素排列的方向,可以是水平方向(row)或垂直方向(column),而交叉轴则是与主轴垂直的方向。 通过设置容器和子元素的属性,我们可以实现各种灵活的布局效果。以下是一些常用的属性: 1. 容器的属性: - `display: flex`:将容器设置为弹性容器。 - `flex-direction`:指定主轴的方向,可以是 `row`(默认值)、`column`、`row-reverse` 或 `column-reverse`。 - `justify-content`:指定子元素在主轴上的对齐方式,可以是 `flex-start`、`flex-end`、`center`、`space-between`、`space-around` 或 `space-evenly`。 - `align-items`:指定子元素在交叉轴上的对齐方式,可以是 `flex-start`、`flex-end`、`center`、`baseline` 或 `stretch`。 - `flex-wrap`:指定子元素是否换行,可以是 `nowrap`(默认值)、`wrap` 或 `wrap-reverse`。 2. 子元素的属性: - `flex-grow`:指定子元素在剩余空间中的放大比例,默认值为 0,即不放大。 - `flex-shrink`:指定子元素在空间不足时的缩小比例,默认值为 1,即等比例缩小。 - `flex-basis`:指定子元素在主轴上的初始尺寸,默认值为 `auto`。 - `flex`:`flex-grow`, `flex-shrink` 和 `flex-basis` 的缩写。 - `align-self`:覆盖容器的 `align-items` 属性,指定子元素在交叉轴上的对齐方式。 Flexbox 提供了一种简单而强大的布局方式,适用于各种场景,特别是在构建响应式布局时非常有用。希望这些信息对你有帮助!如果还有其他问题,请继续提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值