弹性布局flex

弹性布局flex

主轴

  /* 给父元素添加  */
            display: flex;
            /* 子元素两边靠边,中间自适应 */
            justify-content: space-between;
            /* 子元素,两边宽度比中间宽度为 1:2 */
            justify-content: space-around;
            /* 从开始位置依次靠右排 */
            justify-content: start;
            /* 从结束位置依次靠左排 */
            justify-content: flex-end;
            /* 全部等比例排 */
            justify-content: space-evenly;
            /* 居中 */
            justify-content: center;

侧轴

给父元素加

 /* 从开始排列盒子 */
            align-items: start;
            /* 居中 */
            align-items: center;
            /* 从下排列盒子 */
            align-items: end;
            /* 默认值  拉伸 */
            align-items: stretch;

给子元素加

.box div:first-child {
            /* 侧轴 从开始依次排列 */
            align-self: start;
            
        }
​
        .box div:nth-child(2) {
            background-color: aqua;
            /* 居中 */
            align-self: center;
        }
        /* 从结束往前依次排 */
        .box div:last-child {
            align-self: flex-end;
        }

圣杯布局

 .box{
            width: 100%;
            height: 50px;
            background-color: pink;
            display: flex;
            /* 最小伸缩值 */
            min-width: 400px;
            /* 最大伸缩值 */
            max-width: 500px;
        }
        .left,
        .fight{
            width: 50px;
            height: 50px;
            background-color: blue;
        }
        .center{
            /* 伸缩比 */
            flex: 1;
            width: 50px;
            background-color: gold;
### CSS Flexbox 弹性布局详解 #### 创建弹性容器 要启用Flexbox布局,需设置父级元素`display: flex;`。这会使得该元素成为弹性容器,其所有直接子元素自动变为弹性项目。 ```css .flex-container { display: flex; } ``` 此代码片段定义了一个名为`.flex-container`的类,当应用于HTML标签时,会使内部的所有直系子节点遵循Flexbox规则[^1]。 #### 控制主轴排列方向 通过调整`flex-direction`属性可改变项目的排列顺序,默认情况下沿水平线从左至右放置(`row`);也可以改为垂直堆叠(`column`)或其他反向模式。 ```css .container { display: flex; flex-direction: row; /* 或 column */ } ``` 这段样式声明让`.container`内的组件按照指定的方向分布[^4]。 #### 处理多行与换行行为 对于超出单行宽度的内容,利用`flex-wrap`参数决定是否允许折行以及具体的折叠策略: - `nowrap`: 默认值,不允许换行; - `wrap`: 当空间不足时新起一行显示剩余项; - `wrap-reverse`: 类似于`wrap`但是反转后的效果。 ```css .container { display: flex; flex-wrap: wrap; } ``` 上述配置确保了即使内容过多也能合理展示而不至于破坏整体结构[^2]。 #### 对齐方式定制化 为了更好地掌控视觉呈现,在横向(主轴)和纵向(交叉轴)两个维度上分别设置了不同的对齐机制——`justify-content`(影响X轴位置关系)`align-items`(负责Y轴定位),它们支持多种预设选项满足多样化的排版需求。 ```css .item { flex-grow: 1; /* 自动扩展填充可用空间 */ } .container { justify-content: space-between; /* 主轴两端均匀间隔 */ align-items: center; /* 交叉轴居中对齐 */ } ``` 这里展示了如何使各个单元格平均分配间隙并保持中心高度一致的效果。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值