flex布局

基础知识

box-sizing

  盒子模型是CSS布局中的基础,而在Web端,咱们在写盒子的长宽(width/height)时,通常都是写内容区的长宽布局

  但实际上,能够经过box-sizing属性,修改其值为border-box或者content-box(默认值)字体

  (放示意图,待补充)flex

  通常在移动端用border-box为多,这样能够方便后期的修改spa

图标字体

  移动端开发中,会有各类小的图片(例如最下方的导购等),这些图片是能够用图标字体代替的,目的是方便改变颜色等样式blog

  这里可使用阿里的iconfont库(连接地址图片

  进入以后注册一个帐号,而后能够添加项目,把本身须要的图标添加到购物车,添加完毕后点击下载,把下载好的内容放到assets文件夹中便可开发

  固然也可能出现下载失败的问题,这时候就复制(未完待续)get

 

flex布局

基本概念

  flex布局即弹性布局,其中采用flex布局(display属性值为flex或inline-flex)的元素为flex容器,而容器中的全部子元素为容器成员,称为flex项目it

  以下图(图片选自慕课网),flex容器中,默认水平方向为主轴,垂直方向为交叉轴,主轴和交叉轴都有开始和结束,而每个项目在主轴方向上的宽称为主轴空间,交叉轴方向上的高称为交叉轴空间io

  

  默认状况下,项目是沿着主轴方向排列的

容器属性

display

  能够设置flexinline-flex两个属性值,在没有设置容器宽度时,flex的容器有着本身的宽度,而inline-flex的容器的宽度由其中的项目决定

flex-direction

  该属性决定了项目排列的方向(主轴/垂直轴,正向/反向)

  默认值为row(主轴,从左向右排列),也可设置为row-reverse(主轴,从右向左排列)、column(交叉轴,从上向下排列)、column-reverse(交叉轴,从下向上排列)

flex-wrap

  该属性设置了若是一条轴上排列不下全部项目,如何换行

  默认值为nowrap(不换行,可是每个项目的尺寸会被压缩),也可设置wrap(换行)、wrap-reverse(换行,新的行在上方)

  

flex-flow

  该属性为flex-directionflex-wrap的综合,默认值为row nowrap

justify-content

  该属性定义项目主轴上的排列方式,可是仍然设置在容器上

  默认值为flex-start(左侧对齐),也能够设置flex-end(右侧对齐)、center(居中对齐)、space-between(两侧顶头对齐,空格在中间)、space-around(两侧对齐,项目之间等间距)

  

align-items

  该属性定义项目交叉轴上的排列方式,一样设置在容器上

  默认值为stretch,也能够设置为flex-start(交叉轴顶部对齐)、flex-end(交叉轴底部对齐)、center(交叉轴居中对齐)、baseline(文字第一行基线对齐,基线能够理解成下划线的位置)

  

  其中,若是属性值为stretch时,若是项目没设置高度/设置高度为auto,则项目高度自动占满容器高度

align-content

  该属性定义多根轴线在交叉轴上对齐方式,若是只有一行则不起做用

  默认值为stretch(轴线占满整个交叉轴),也能够设置为flex-start(顶部对齐)、flex-end(底部对齐)、center(垂直居中对齐)、space-betweenspace-around

相关文章
相关标签/搜索