在实际项目中,ionic自带的样式并不足以完全满足app的需求,通常在ionic.css中对原有样式进行修改调整或添加,而该样式主要基于flex布局。
在flex布局中,它的所有子元素自动成为容器成员。
容器默认存在两根轴:水平的主轴(main axis)和垂直的交叉轴(cross axis)。
项目默认沿主轴排列、单个项目占据的主轴空间叫做main size,占据的交叉轴空间叫做cross size。
容器属性
flex-direction
决定主轴的方向(即项目的排列方向)
flex-wrap
当一条轴线排不下,设置如何换行
flex-flow
flex-direction属性和flex-wrap属性的简写形式
justify-content
定义了项目在主轴上的对齐方式
align-items
定义项目在交叉轴上如何对齐
align-content
定义了多根轴线的对齐方式。如果项目只有一根轴线,该属性不起作用
项目属性
order
定义项目的排列顺序。数值越小,排列越靠前,默认为0
flex-grow
定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大
flex-shrink
定义了项目的缩小比例,默认为1,即如果空间不足,该项目将缩小
flex-basis
定义了在分配多余空间之前,项目占据的主轴空间(main size)。浏览器根据这个属性,计算主轴是否有多余空间。它的默认值为auto,即项目的本来大小
flex
flex-grow,flex-shrink和flex-basis的简写,默认值为0 1 auto。后两个属性可选
align-self
允许单个项目有与其他项目不一样的对齐方式,可覆盖align-items属性。默认值为auto,表示继承父元素的align-items属性,如果没有父元素,则等同于stretch