前端--css

flex 是什么?

Flex 也叫弹性布局,是一种非常流行的 web 页面快速布局解决方案;
Flex 也可以实现子元素在父元素中自动伸缩,特别适合移动端布局;
事实上它是一种新类型的盒子模型,也有书上称作弹性伸缩盒布局。
比较新的布局方式:旨在提供一个更加有效的方式来布置,对齐和分
布在容器之间的各项内容,即使它们的大小是未知或者动态变化的。
弹性布局的主要思想是让容器有能力来改变项目的宽度和高度,以填
满可用空间(主要是为了容纳所有类型的显示设备和屏幕尺寸)的能
力。
2、主轴与侧轴的概念
主轴就是弹性盒子子元素沿着排列的轴;与主轴垂直的轴称为
侧轴。
如果你有 row ,则主轴是水平方向,侧轴是垂直方向。
如果你有 column,则主轴是垂直方向,侧轴是水平方向

弹性盒子属性

display: flex ; (适用于父类容器元素上)
flex:将对象作为弹性伸缩盒显示。
flex-flow (适用于父类容器上)复合属性。
设置或检索伸缩盒对象的子元素排列方式。可以同时设置
flex-direction/flex-wrap
lex-direction (适用于父类容器的元素上):设置或检索伸缩盒对
象的子元素在父容器中的位置。

布局

Css布局

1、 表格布局:display:tablr-cell;
2、 浮动:对自身影响,脱离文档流,使元素独立
对兄弟元素影响,改变兄弟元素布局
对父容器坍塌
3、 定位:固定布局:使用标准的px单位
流式布局:使用百分比 %
4、 多列布局: column-widthL列宽
5、 弹性布局
display: flex; 弹性盒模型,默认主轴方向是x轴,起始线是左边开始
flex-direction:改变主轴方向,row x轴为主轴colum y轴为主轴,row-reverse x轴为主轴,起始线从右开始
column-reverse轴为主轴,起始线从下开始
**flex-wrap: wrap;**默认是nowrap不换行,子元素在父元素中换行
flex-flow以上两种的综合属性
justify-content:设置子元素在父容器中主轴的排列位置,两端对齐 剩余空间会分配给每个子元素中间
space-around 将剩余空间分成元素的2倍,分别在元素的左右分配
space-evenly 平均分配剩余空间
align-ltems:center设置侧轴居中flex-start:弹性盒子元素的侧轴(纵轴)起始位置的边界紧靠
住该行的侧轴起始边界。
flex-end:弹性盒子元素的侧轴(纵轴)起始位置的边界紧靠
住该行的侧轴结束边界。
center:弹性盒子元素在该行的侧轴(纵轴)上居中放置。
baseline:如弹性盒子元素的行内轴与侧轴为同一条,则该值
与’flex-start’等效。其它情况下,该值将参与基线对齐。
stretch:如果指定侧轴大小的属性值为’auto’,则其值会使项
目的边距盒的尺寸尽可能接近所在行的尺寸align-self:flex-end
设置元素在侧轴的位置
align-content (适用于父类容器上) 设置或检索弹性盒堆叠伸缩
行的对齐方式。
flex-start:各行向弹性盒容器的起始位置堆叠。弹性盒容器中
第一行的侧轴起始边界紧靠住该弹性盒容器的侧轴起始边界,
之后的每一行都紧靠住前面一行。
flex-end:各行向弹性盒容器的结束位置堆叠。弹性盒容器中
最后一行的侧轴起结束界紧靠住该弹性盒容器的侧轴结束边
界,之后的每一行都紧靠住前面一行

三级目录