flex弹性布局

简介: flex弹性布局

开启flex布局只需要在外层容器设置display:flex即可。


设置后找个外层容器就是一个flex容器。所有子容器自动成为容器成员,称为flex项目。


开启flex后,里面的flex项目会自动按照main-axis水平布局


test01.html
<!DOCTYPE html>
<html>
   <head>
        <meta charset="utf-8" />
        <title></title>
        <style>
            .box{
                width: 800px;
                height: 400px;
                margin: 0 auto;
                display: flex;
                border: 1px solid red;
            }
            .box div{
                width: 100px;
                height: 100px;
                border: 1px solid blue;
            }
        </style>
    </head>
    <body>
        <div class="box">
            <div id="item1"></div>
            <div id="item1"></div>
            <div id="item1"></div>
        </div>
    </body>
</html>


20cdcb0fa52192a694ea85fa0a4b997c_fd990c6b5fbc45a0aed829d51324a026.png


2、容器属性


2.1 justify-content - main轴-水平布局


2.1.1 center


flex项目水平居中


2.1.2 flex-end


flex项目靠右对齐


2.1.3 space-between


flex项目两端对齐


2.1.4 space-around


flex项目两端对齐,项目间的距离是两端和容器距离的2倍。


2.1.5 space-evenly


flex项目两端对齐,项目间距和容器两端的距离相等。


2.2 align-items - cross轴-垂直布局


2.2.1 center


垂直方向居中


2.2.2 flex-end


cross轴底部对齐


2.2.3 水平、垂直居中


justify-content:center;
align-items:center;

2.3 flex-direction - 项目方向


2.3.1 row-reverse


flex项目水平方向,反序排列


2.3.2 column


flex项目垂直方向,正序排列


2.3.3 column-reverse


flex项目垂直方向,反序排列


2.4 flex-wrap - 换行、换列


2.4.1 nowrap


默认值。意思是不换行、换列。


当flex项目的总宽度超过容器的宽度,flex项目将按照原有比例强行等分,且不换行。


2.4.2 wrap


换行、换列。当flex项目的总宽度超过容器的宽度,将自然换行、换列。且每一行(列)等分容器。


3、项目属性


3.1 order


项目的排列顺序。数值越小,排列越靠前。


3.2 align-self


设置单个flex项目的对齐方式。


3.2.1 center


居中


3.2.2 flex-end


底端对齐


3.3 flex-grow


默认值为0。用于决定项目在有剩余空间的情况下是否放大。默认不放大。


注意:即使设置了宽度,如果设置了放大,那么宽度失效。


多个flex项目同时放大,如果数值越大,放大的比例也越大。


多个flex项目根据放大比例,重新分配了剩余空间。


3.4 flex-shrink


不换行、换列的情况下有效。


设置缩小。默认值为1,默认情况下,会等比例缩小,宽度失效。


设为0,表示不缩小。


数值越大,缩小的比例也越大。


3.5 flex


取值默认:0 1 auto。flex属性是 flex-grow、flex-shrink与flex-basis的简写。用于定义项目放大,缩小与宽度。


flex有两个快捷值:


       auto。表示(1 1 auto)等分放大缩小。


       none。表示(0 0 auto)不放大,但等分缩小。


相关文章
|
9月前
|
容器
弹性布局(display:flex)属性详解
弹性布局(display:flex)属性详解
151 1
|
4月前
|
前端开发 容器
弹性盒子(flexbox)
弹性盒子(Flexbox)是CSS3中引入的一种强大且兼容性好的布局方法,它可以让你轻松地处理页面上的元素布局,并创建可以自动缩小和放大的动态用户界面。使用弹性盒子布局模型,可以告别浮动,完美实现垂直水平居中,提高页面排版的灵活性和效率。
99 1
|
9月前
display: flex,弹性布局
display: flex,弹性布局
42 0
|
9月前
|
容器
教你快速上手Flex弹性盒布局(项目属性)
教你快速上手Flex弹性盒布局(项目属性)
|
5月前
解决flex布局最后一行(左靠齐)
解决flex布局最后一行(左靠齐)
|
9月前
|
开发者 容器
Flex基础布局
Flex基础布局
|
10月前
|
前端开发 UED 容器
flex弹性布局中的flex:1的理解
flex弹性布局中的flex:1的理解
190 0
|
11月前
|
容器
Flex 布局
Flex 布局
|
前端开发 JavaScript 容器
【CSS布局】—— flex(弹性)布局
【CSS布局】—— flex(弹性)布局
140 0
【CSS布局】—— flex(弹性)布局