面试被问到这个问题,觉得这个看过没问题,结果还是 纸上得来终觉浅 看一遍理解肯定没有试一试透彻,于是决定记录一下
====================================================================
首先是定义弹性盒模型
#wrap{
display: -webkit-flex;
display: flex;
}
注意webkit内核必须加-webkit-前缀
================================================
第一个属性是 flex-direction 是确定主轴的方向
row:主轴方向是水平 从左到右。
column:主轴方向是垂直 从上到下。
row-reverse: 与row相反
column-reverse: 与colunmn相反
======================================================
第二个属性是flex-wrap 有三个值 wrap nowrap wrap-reverse
wrap 换行 第二行在下面。
nowrap 不换行
wrap-reverse 换行第二行在上面。
=================================================================
第三个 justify-content属性 主要是主轴上对齐方式
flex-start
(默认值):左对齐flex-end
:右对齐center
: 居中space-between
:两端对齐,项目之间的间隔都相等。space-around
:每个项目两侧的间隔相等。所以,项目之间的间隔比项目与边框的间隔大一倍。
=========================================================
第四个属性:align-items 与 justify-content 属性相似 是在交叉轴上对其方式
flex-start
:交叉轴的起点对齐。flex-end
:交叉轴的终点对齐。center
:交叉轴的中点对齐。baseline
: 项目的第一行文字的基线对齐。stretch
(默认值):如果项目未设置高度或设为auto,将占满整个容器的高度。
=======================================================
第五个属性:align-conent 是多个轴线等情况下
flex-start
:与交叉轴的起点对齐。flex-end
:与交叉轴的终点对齐。center
:与交叉轴的中点对齐。space-between
:与交叉轴两端对齐,轴线之间的间隔平均分布。space-around
:每根轴线两侧的间隔都相等。所以,轴线之间的间隔比轴线与边框的间隔大一倍。stretch
(默认值):轴线占满整个交叉轴。