Flex布局css之弹性布局

文章资讯 2020-06-14 17:13:31

Flex布局css之弹性布局

一、什么是flex布局
Flex是FlexibleBox的缩写,意为"灵活的盒子"或"弹性的盒子",所以flex布局一般也叫作"弹性布局"
二、基本概念
什么是flex容器(flexcontainer)?
采用flex布局的元素,称为flex容器
.box{dislay:flex|inne-flex;}
什么是flex项目(flexitem)?
flex容器的所有子元素自动成为容器成员,称为flex项目
项目默认沿主轴排列三、容器的属性
dislay
flex-direction
flex-wra
flex-flow
justify-content
agn-items
agn-content
1、dislay属性dislay属性决定是否使用flex布局
.box{dislay:flex|inne-flex;}
flex:将对象作为弹性伸缩盒显示inne-flex:将对象作为内联块级弹性伸缩盒显示
2、flex-direction属性flex-direction属性决定主轴的方向(即项目的排列方向)
.box{flex-direction:row|row-reverse|cumn|cumn-reverse;}
row(默认值):主轴为水平方向,起点在左端row-reverse:主轴为水平方向,起点在右端cumn:主轴为垂直方向,起点在上沿cumn-reverse:主轴为垂直方向,起点在下沿
3、flex-wra属性默认情况下,项目都排在一条线(又称"轴线")上
flex-wra属性定义,如果一条轴线排不下,如何换行
.box{flex-wra:nowra|wra|wra-reverse;}
nowra(默认):不换行wra:换行,第一行在上方wra-reverse:换行,第一行在下方
4、flex-flowflex-flow属性是flex-direction属性和flex-wra属性的简写形式,默认值为rownowra
.box{flex-flow:||;}
5、justify-content属性justify-content属性定义了项目在主轴上的对齐方式
.box{justify-content:flex-start|flex-end|center|sace-between|sace-around;}
flex-start(默认值):左对齐flex-end:右对齐center:居中sace-between:两端对齐,项目之间的间隔都相等sace-around:每个项目两侧的间隔相等。所以,项目之间的间隔比项目与边框的间隔大一倍
6、agn-items属性agn-items属性定义项目在交叉轴上如何对齐
.box{agn-items:flex-start|flex-end|center|basene|stretch;}
flex-start:交叉轴的起点对齐flex-end:交叉轴的终点对齐center:交叉轴的中点对齐basene:项目的第一行文字的基线对齐stretch(默认值):如果项目未设置高度或设为auto,将占满整个容器的高度
7、agn-content属性agn-content属性定义了多根轴线(多行)在交叉轴上的对齐方式
如果项目只有一根轴线(一行),该属性不起作用
.box{agn-content:flex-start|flex-end|center|sace-between|sace-around|stretch;}
flex-start:交叉轴的起点对齐flex-end:与交叉轴的终点对齐center:与交叉轴的中点对齐sace-between:与交叉轴两端对齐,轴线之间的间隔平均分布sace-around:每根轴线两侧的间隔都相等
所以,轴线之间的间隔比轴线与边框的间隔大一倍stretch(默认值):轴线占满整个交叉轴