Flex布局详解及活用

86,508次阅读
没有评论

共计 4278 个字符,预计需要花费 11 分钟才能阅读完成。

目录

第一章、Flex 布局详解

1.1 入门

1.1.1  flex 是什么

1.1.2 为什么使用 flex

1.1.3 设置方式

1.1.4 组成部分

1.2 常用属性

1.2.1 弹性容器(父)常用属性

1.2.2 弹性盒子(子)常用属性

 第二章、Flex 活用 – 几种常用的布局

2.1 两列 / 两栏布局

2.2 水平垂直居中

2.3 三栏布局

2.4 圣杯布局

2.5 流式布局

第一章、Flex 布局详解

1.1 入门

1.1.1  flex 是什么

  • 弹性盒子布局
  • 是一种由浏览器提倡的布局模型
  • 布局网页更加简单灵活
  • 能避免浮动脱标 (脱标:脱离标准文档流) 的问题
  • 注意:如果子盒子没有设置高度,子盒子将会拉伸填满父盒子高度

1.1.2 为什么使用 flex

1.1.3 设置方式

  • 父元素添加 display:flex子元素自动挤压或拉伸。
  • 添加 display:flex 后的视觉效果:子级一行排列 / 水平排列
  • 水平排列:默认主轴在水平,弹性盒子默认沿着主轴排列

1.1.4 组成部分

  • 弹性容器 ( 父盒子)
  • 弹性盒子 ( 子盒子)
  • 主轴
  • 侧轴

1.2 常用属性

1.2.1 弹性容器(父)常用属性

1.flex-direction   主轴方向 (常用)
2.flex-wrap        主轴一行满了换行 (常用)
3.justify-content  主轴元素对齐方式 (常用)
4.align-items      侧轴元素对齐方式 // 单行 (常用)
5.flex-flow        1 和 2 的组合 (了解)
6.align-content    侧轴行对齐方式 // 多行 (了解)



    
    
    
    Document
    


    
1
2
3
  • flex-direction 主轴方向
row(默认值):主轴为水平方向,起点在左端。row-reverse:主轴为水平方向,起点在右端。column:主轴为垂直方向,起点在上沿。column-reverse:主轴为垂直方向,起点在下沿。

Flex 布局详解及活用Flex 布局详解及活用 Flex 布局详解及活用Flex 布局详解及活用

  •  flex-wrap 主轴一行满了是否换行 
nowrap (默认值) 不换行压缩宽度
wrap    换行
wrap-reverses 反向换行

Flex 布局详解及活用

Flex 布局详解及活用

Flex 布局详解及活用

  • justify-content  主轴元素对齐方式

这里的方向与 flex-direction 主轴方向 定义的方向是对应的

flex-start (默认)靠着 main-start 对齐 // 参考常见术语(一般是左方向)
flex-end   靠着 main-end 对齐 // 参考常见术语(一般是右方向)
center     靠着主轴居中对齐 // 一般就是居中对齐
space-between 两端对齐,靠着容器壁,剩余空间平分
space-around  分散对齐,不靠着容器壁,剩余空间在每个项目二侧平均分配
space-evenly  平均对齐,不靠着容器壁,剩余空间平分

Flex 布局详解及活用

Flex 布局详解及活用

Flex 布局详解及活用

Flex 布局详解及活用

Flex 布局详解及活用

Flex 布局详解及活用

  •  align-items  侧轴元素对齐方式 // 单行
flex-start:侧轴的起点对齐。flex-end:侧轴的终点对齐。center:侧轴的中点对齐。baseline: 项目的第一行文字的基线对齐。stretch(默认值)伸展:如果项目未设置高度或设为 auto,将占满整个容器的高度。

Flex 布局详解及活用

Flex 布局详解及活用

Flex 布局详解及活用

Flex 布局详解及活用

Flex 布局详解及活用

  •  flex-flow:flex-direction 和 flex-wrap 的组合

 写法:flex-low: [flex-direction] [flex-wrap]

  •  align-content 侧轴行对齐方式 多行

用法与 justify-content 的属性一模一样

1.2.2 弹性盒子(子)常用属性

flex-grow/flex:长大(常用)align-self: 覆盖弹性容器(父盒子)align-items 属性(常用)order 排序(了解)flex-basis: 有效宽度(了解)flex-shrinik: 缩小(了解)



    
    
    
    Document
    


    
    
1
2
3
  • flex-grow/flex:长大,默认为 0

        — 在容器主轴上存在剩余空间时, flex-grow 才有意义

        — 类似比例分配

.red{
     background-color: red;
     flex-grow: 1;
     /* flex: 1; */
}

  • align-self: 覆盖弹性容器(父盒子)align-items 属性

        — 属性与 align-items 一样,使用后该盒子会有自己的 ” 想法 ”

flex-start:侧轴的起点对齐。flex-end:侧轴的终点对齐。center:侧轴的中点对齐。baseline: 项目的第一行文字的基线对齐。stretch(默认值)伸展:如果项目未设置高度或设为 auto,将占满整个容器的高度。

Flex 布局详解及活用

  •  order:将该盒子排序到第几个,默认为 0

Flex 布局详解及活用

 第二章、Flex 活用 – 几种常用的布局

2.1 两列 / 两栏布局




    
    两列布局
    


    
left
main

Flex 布局详解及活用

2.2 水平垂直居中




    
    水平 / 垂直居中
    


我是子元素,我要垂直居中

Flex 布局详解及活用

2.3 三栏布局




    
    三栏布局



left
main
right

Flex 布局详解及活用

2.4 圣杯布局




    
    圣杯布局



    
header
main
footer

Flex 布局详解及活用

2.5 流式布局




    
    流式布局

    

    

原文地址: Flex 布局详解及活用

    正文完
     0
    Yojack
    版权声明:本篇文章由 Yojack 于2024-11-29发表,共计4278字。
    转载说明:
    1 本网站名称:优杰开发笔记
    2 本站永久网址:https://yojack.cn
    3 本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
    4 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
    5 本站所有内容均可转载及分享, 但请注明出处
    6 我们始终尊重原创作者的版权,所有文章在发布时,均尽可能注明出处与作者。
    7 站长邮箱:laylwenl@gmail.com
    评论(没有评论)