Flex 布局------ 子项常见属性

简介: Flex 布局------ 子项常见属性

flex 子项 flex 份数

flex 属性:定义子项目分配剩余空间,用 flex 来表示占多少份数。

8258d8e08c5c4bb280dac94eec4e83d8.png

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        section{
            display: flex;
            width: 60%;
            height: 150px;
            background-color: pink;
            margin: 0 auto;
        }
        section div:nth-child(1){
            width: 100px;
            height: 150px;
            background-color: red;
        }
        section div:nth-child(2){
            flex: 1;
            background-color: green;
        }
        section div:nth-child(3){
            width: 100px;
            height: 150px;
            background-color: blue;
        }
    </style>
</head>
<body>
  <section>
      <div></div>
      <div></div>
      <div></div>
  </section>  
</body>
</html>

d9a6981593454b8685b044935f0fa5d8.png

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        p{
            display: flex;
            width: 60%;
            height: 150px;
            background-color: pink;
            margin: 100px auto;
        }
        p span{
            /* 每个span各占一份 */
            flex: 1;
        }
        p span:nth-child(2){
          /* 设置第二个span占两份 */
            flex:2;
            background-color: purple;
        }
    </style>
</head>
<body> 
  <p>
      <span>1</span>
      <span>2</span>
      <span>3</span>
  </p>
</body>
</html>

align-self 属性控制子项自己在侧轴上的排列方式

  1. align-self 属性允许单个项目有与其他项目不一样的对齐方式,课覆盖 align-items 属性。
  2. 默认为 auto,表示继承父元素的 align-items 属性,如果没有父元素,则等同于 stretch。c00e7e5581d8438c88639277c78b51a6.png
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        div {
            display: flex;
            width: 500px;
            height: 400px;
            background-color: pink;
            /* 让三个子盒子沿着侧轴低侧对齐 */
            /* align-items: flex-end; */
            /* 只让三号盒子下来底侧 */
        }
        div span {
            width: 150px;
            height: 100px;
            background-color: purple;
            color: #fff;
            margin-right: 5px;
        }
        div span:nth-child(3){
            align-self: flex-end;
        }
    </style>
</head>
<body>
    <div>
        <span>1</span>
        <span>2</span>
        <span>3</span>
    </div>
</body>
</html>

order 属性定义项目的排列顺序

  1. 数值越小,排列越靠前,默认为0。
  2. 注意:和 z-index 不一样。
  3. bacb0ef20b6e4bd2a7c71c8affe6e73c.png
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        div {
            display: flex;
            width: 500px;
            height: 400px;
            background-color: pink;
            /* 让三个子盒子沿着侧轴低侧对齐 */
            /* align-items: flex-end; */
            /* 只让三号盒子下来底侧 */
        }
        div span {
            width: 150px;
            height: 100px;
            background-color: purple;
            color: #fff;
            margin-right: 5px;
        }
        div span:nth-child(2){
            /* 默认是0  -1比0小所以在前面 */
            order: -1;
        }
        div span:nth-child(3){
            align-self: flex-end;
        }
    </style>
</head>
<body>
    <div>
        <span>1</span>
        <span>2</span>
        <span>3</span>
    </div>
</body>
</html>

不积跬步无以至千里 不积小流无以成江海

相关文章
flex布局属性简介
flex布局属性简介
|
8天前
|
前端开发
FLex布局详解
Flex布局通过`flex-direction`定义主轴方向,包括横向`row`、反向横向`row-reverse`、纵向`column`及反向纵向`column-reverse`。`justify-content`控制主轴上子元素的排列,如起始端`flex-start`、末端`flex-end`、居中`center`、等间距`space-around`或两端对齐`space-between`。在Y轴上设置这些同样有效。`flex-wrap: wrap`使子元素在需要时换行。`align-items: center`实现侧轴(交叉轴)上的居中对齐
18 1
FLex布局详解
|
4天前
|
容器
|
5天前
|
前端开发 JavaScript API
如何在 Angular 中使用 Flex 布局
如何在 Angular 中使用 Flex 布局
7 0
|
1月前
|
编解码 前端开发 容器
CSS Flex布局实战案例:构建响应式卡片组件
【7月更文挑战第17天】通过上述步骤,我们成功地使用CSS Flex布局构建了一个响应式的卡片组件。Flexbox不仅简化了布局代码,还让我们能够轻松实现复杂的布局效果,如响应式设计。在实战中,掌握Flexbox将大大提高前端开发的效率和网页布局的质量。希望这个案例能够帮助你更好地理解和应用Flexbox布局。
|
1月前
|
前端开发
css的flex布局中使用margin:auto智能分配剩余空间
css的flex布局中使用margin:auto智能分配剩余空间
30 1
|
1月前
|
小程序
【微信小程序】英文字母不换行问题 flex布局字符超出宽度折行问题:设置了word-break: break-all;和flex: 1;冲突flex不生效问题
【微信小程序】英文字母不换行问题 flex布局字符超出宽度折行问题:设置了word-break: break-all;和flex: 1;冲突flex不生效问题
22 1
|
1月前
|
前端开发
CSS 自测题 -- 用 flex 布局绘制骰子(一、二、三【含斜三点】、四、五、六点)
CSS 自测题 -- 用 flex 布局绘制骰子(一、二、三【含斜三点】、四、五、六点)
16 0
|
1月前
|
容器
Flex 布局和 Grid 布局的区别
Flex 布局和 Grid 布局的区别
18 0
|
1月前
|
前端开发
前端 CSS 经典:flex + margin 布局
前端 CSS 经典:flex + margin 布局
16 0