弹性盒

弹性盒:控制子级元素在父级容器中的排列位置。

属性值:display

属性值:flex

你看我弹不弹!!!

【在弹性盒环境中浮动是不可以使用的,定位和盒模型是可以用的】

【display:flex一定要加在父级容器上】

当前元素形成盒模型后,默认的主轴方向是X轴,侧轴是Y轴(主轴和侧轴不是固定的,可以通过属性来改变)

当前元素中设置了弹性盒,不考虑元素类型,所有的子级元素都可以设置宽高大小,并且可以在同一行显示。

在弹性盒中,要使得单个元素居中的话可以设置margin:auto。很方便。

弹性盒属性:

      【添加在父级元素上的,会控制所有的子级;添加在子元素上的,会控制单个子级。】

1、改变默认的主轴方向:flex-direction属性

属性值:row 默认值,主轴方向为x轴

column  改变主轴为y轴。

2、对齐方式:<1>主轴上的对齐方向:justift-content属性

属性值:flex-start  默认值,元素在起始位置,相当于左对齐。

flex-end  向右对齐;    center    居中。

space-between  两对对齐,其余空间自动分配;space-around  所有的空间都是自动分配。

space-evenly  所有的间距都是一样的。

<2>侧轴上的对齐方式:align-items属性

属性值:flex-start  默认值,元素在起始位置,相当于上对齐。

flex-end  向下对齐;    center    居中。

baseline  基线对齐

【基线对齐】所有的子元素都有宽高的情况下,baseline和flex-start的效果是一样的。当子元素不设置宽高的情况,并且不设置baseline,子级默认拉伸。当前元素都是文本的时候,排列方式以基线对齐。

3、当子元素的宽度综合大于父级元素的时候,默认是不换行,进行挤压,不会掉下去。

换行属性:flex-wrap

属性值:nowrap 不换行。       wrap   换行

4、当设置换行属性时,行与行之前有间距。

属性:align-content

属性值:flex-start  

flex-end

space-between

space-around



添加在子元素上的属性,控制单个属性:

1、alingn-self属性,控制子级在侧轴上面的对齐方式。

属性值:flex-start 、flex-end、center、auto(自动)、streth(拉伸)

auto:如果父级有侧轴对齐方式,则继承父级;如果父级没有没有侧轴对齐方式,则默认拉伸。

2、order属性,优先级。属性值是数字,数值越大,则越往后显示,效果类似z-index

3、flex属性,占据主轴剩下的空间,属性值也是数字。常用是1,表示占据主轴剩下的部分,达到自适应的效果。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容