六、弹性盒子模型

弹性盒子模型:可以简洁,完整,响应式(自适应)的实现各种页面布局

    display: flex;
        容器(display: flex;)和项目:采用flex布局的元素,称为flex容器,他的所有子元素称为flex项目
        主轴:元素盒子排列的方向(默认的排列方向x轴,当然不是说主轴就是x,因为我们可以通过属性来改变主轴的方向)
        交叉轴:和主轴垂直的轴

注: 容器属性:给容器的属性(一下的属性全部给容器)

1、flex-direction改变主轴的方向。

属性值有四种情况:

{flex-direction: row;}/*默认值,从左往右排列*/
{flex-direction: row-reverse;}/*从右往左排列*/        
{flex-direction: column;}/*从上往下排列*/
{flex-direction: column-reverse;}/*从下往上排列*/

2、flex-wrap控制容器是单行还是多行

属性值有三种情况:

{flex-wrap: nowrap; } /*默认值,不换行,会压缩,不会超出父级*/
{flex-wrap: wrap; } /*换行*/
{flex-wrap: wrap-reverse; } /*只是单纯的上下反转,不是序号改变*/

如下:

image.png

3、复合属性:flex-flow:direction wrap 复合属性包括主轴方向 和换行

例:
{flex-flow: row-reverse wrap; }//换行反向X轴

如图:

image.png

4、justify-content定义在主轴上的对齐方式

属性值五种:

flex-start   //默认值,从主轴开始部分开始排列(说白了就是左对齐)
flex-end   //从主轴结束部分开始排列(说白了是右对齐)
center   //居中
space-between   // 两端对齐,中间有相等的间隔
space-around    //环绕对齐,每个项目两边的间隔相等

效果如下:

image.png
image.png
image.png
image.png
image.png

5、align-items定义弹性盒子项目在交叉轴上如何对齐

align-items: stretch; //默认值,交叉轴上沿对齐
align-items: flex-end; //交叉轴下沿对齐
align-items: center;  // 交叉轴中部对齐
align-items: baseline;   //项目里面的文字的基线对齐

附:沿基线对齐效果

image.png

6、align-content定义了多根主轴对齐方式,如果项目自有一根轴线,则不起作用(交叉轴的对齐方式)

属性值六种:

stretch   //默认值,主轴线占满整个交叉轴(每行元素下沿都有一个主轴,且每行主轴的高度相等
flex-start   //与交叉轴上沿紧密对齐
flex-end   //与交叉轴下沿紧密对齐
center   //居中
space-between   // 与交叉轴两端对齐,中间主轴宽度平均分配
space-around    //环绕对齐,,中间主轴宽度平均分配

附图:

image.png
image.png
image.png
image.png
image.png
image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 移动开发基本知识点 一.使用rem作为单位 html { font-size: 100px; } @media(m...
    横冲直撞666阅读 3,518评论 0 6
  • H5移动端知识点总结 阅读目录 移动开发基本知识点 calc基本用法 box-sizing的理解及使用 理解dis...
    Mx勇阅读 4,628评论 0 26
  • 2009年,W3C 提出了一种新的方案----Flex 布局,可以简便、完整、响应式地实现各种页面布局。目前,它已...
    丫3阅读 580评论 0 0
  • 大家好,我是IT修真院郑州分院第六期的学员王栋,一枚正直、纯洁、善良的前端程序员。 今天给大家分享一下,修真院官网...
    17064阅读 3,993评论 0 1
  • 前言 FlexBox是css3的一种新的布局方式,天生为解决布局问题而存在的它,比起传统的布局方式,我们使用Fle...
    zevei阅读 1,438评论 23 3