弹性布局--父级

1.flex布局与传统布局的优缺点

          1.1  传统布局

                优点:兼容性好,能很好的PC端上显示。

                缺点:布局非常繁琐,费力不讨好。有局限性,在移动端上不能很完美的显示。

        1.2  flex布局

               优点:布局简单且在移动端上应用广泛。

                缺点:PC端上的支持情况较差,IE 11或很低的版本,不支持或部分支持。

                                           2.flex布局原理

        2.1  布局原理

                flex 是flexible Box的缩写,用来为盒子提供最大的灵活性,任何的盒子都可以指定为flex布局。

                父盒子设为flex布局之后,子元素中的float  clear vertical-align属性将会失效。

                总结:通过给父盒子添加flex属性,(方法:display:flex ) 来控制其中子元素的位置和排列方式。

                                         3.flex布局父级常见属性

      3.1常见父级属性

                1. flex-direction:设置主轴方向------设置容器中的子元素在容器的那个方向上堆叠

                       3.1.1 设置为column值时子元素在flex容器中沿着y轴方向堆叠(从上到下)

 <style>
        *{
            margin: 0;
            padding: 0;
            list-style: none;
        }
        .flex{
            margin-left: 50px;
            width: 300px;
            height: 200px;
            display:flex ;
            flex-direction: column;
            border: 1px solid black;
        }
       div li {
           width: 100px;
            height: 50px;
            background-color: rgb(0, 119, 255);
            border: 1px solid black;
            margin: 10px;
       }
    </style>
</head>
<body>
    <div class="flex">
        <li></li>
        <li></li>
        <li></li>
    </div>
</body>

     3.1.2 设置为row值时子元素在flex容器中沿着x轴方向堆叠(从左到右,默认为row)

  .flex{
            margin-left: 50px;
            width: 300px;
            height: 200px;
            display:flex ;
            flex-direction: row;
            border: 1px solid black;
        }

     

         3.1.3  column-reverse值时子元素在flex容器中沿着y轴方向堆叠(从下到上);设置为

row-reverse值时子元素在flex容器中沿着x轴方向堆叠(从右到左)。 

             2.设置主轴上子元素的排列属性:justify-content

        3.2.1  justify-content: center 子级元素在flex容器主轴的中心对齐

.flex{
            margin-left: 50px;
            width: 300px;
            height: 200px;
            display:flex ;
            flex-direction: row;
            justify-content: center;
            border: 1px solid black;
        }

                  3.2.2  justify-content: flex-start 子级元素在flex容器主轴的开头对齐

.flex{
            margin: 50px 50px;
            width: 300px;
            height: 200px;
            display:flex ;
            flex-direction: row;
            justify-content: flex-start;
            border: 1px solid black;
        }

   justify-content: flex-end 子级元素在flex容器主轴的末端对齐

              3.2.3  justify-content:space-around 子级元素在flex容器主轴上先居中对齐,两边的子元素在平分两边剩余空间

                

  3.2.4  justify-content: space-between 子级元素在flex容器主轴两边的子元素紧贴flex容器,中间元素居中

                 3.设置侧轴上子元素的排列属性:align-items

    3.3.1  align-items:center 子级元素在flex容器侧轴中心对齐(相当于垂直居中)

  3.3.2  align-items:flex-start  子级元素在flex容器顶部对齐

        

           align-items:flex-end 子级元素在flex容器尾部对齐

     3.3.3  align-items :stretch 拉伸子元素

     3.3.4  align-items :baseline 使flex项目基线对齐

              4.设置侧轴对齐弹性线 :align-content

     3.4.1 align-content:space-between  适用于多行使上下之间的距离相等

                

              5.设置是否换行属性:flex-wrap

        值为   wrap 自动换行    on-wrap 不换行(默认值)  wrap-reverse 以相反的方向换行

             

                

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值