flex布局,即为弹性布局,其为盒模型提供最大的灵活性,任何一个容器都可以指定为flex布局。

  eg:.box{

    display:flex;

  }

行内元素也可以使用flex布局。

注意:设置flex布局后,子元素的float、clear和vertical-align属性将会失效。

采用flex布局:

元素:称为flex容器,他的所有子元素自动成为容器成员,称为flex项目,

容器默认存在两根轴,水平的主轴(main axis)和垂直的交叉轴(cross axis)主轴的开始位置(与边框的交叉点)叫做main start,结束位置叫做main end;

同理也存在cross start和cross end;

项目沿主轴排列单个项目占据的主轴空间叫做main size,占据的交叉轴空间叫做cross size;

一、容器的属性:

1.flex-direction:决定主轴的方向

  row:主轴为水平方向,起点在左侧;

  row-reverse:。。。。。。起点在右侧;

  column:主轴为垂直方向,起点在上沿;

  column-reverse:。。。。起点在下沿;

2.flex-wrap:默认所有项目排列在一条轴线上,而该属性是定义如果一条轴线排不下,如何进行换行

  nowrap:不换行;

  wrap:换行,第一行再上方;

  wrap-reverse:换行,第一行在下方;

3.flex-flow:是-direction和-wrap的缩写

  默认值为: row nowrap;

4.justify-cotent:定义了项目在主轴上的对齐方式

  flex-start:左对齐;

  flex-end:右对齐;

  center:居中对齐;

  space-between:两端对齐,项目之间间隔等距;

  space-around:每个项目两侧等间隔,所以项目间的间隔要比项目和边框的间隔大;

5.align-items:定义项目在交叉轴的对齐方式

  flex-start:交叉轴的起点对齐;

  flex-end:交叉轴的终点对齐;

  center:交叉轴的中点对齐;

  baseline:项目的第一行文字的基线对齐;

  stretch默认值:如果项目未设置高度或者设置为auto,将占满整个容器的高度;

6.align-cotent:定义了多根轴线的对齐方式,如果项目只有一根轴线则该属性无效

  flex-start:与交叉轴的起点对齐;

  flex-end:与交叉轴的终点对齐;

  center:。。中点。。;

  space-between:与交叉轴两端对齐,轴线之间的间隔等距;

  space-around:每根轴线的两侧距离相等,所以轴线之间的距离比边框与轴线之间的距离大一倍;

  stretch默认值:轴线占满整个交叉轴;

二、项目的属性

1.order:定义项目的排列顺序,数值越小,排列越靠前,默认为0;

2.flex-grow:定义项目的放大比例,默认为0,即如果存在剩余空间也不能放大;

3.flex-shrink:定义项目的缩小比例,即空间不足,该项目将缩小;

4.flex-basis:在分配的多余空间之前,项目占据主轴的空间,浏览器根据此属性计算主轴是否有多余空间,默认为auto,即为项目本来的大小;

5.flex:是-grow、-shrink、basis的缩写,默认值为0,1,auto,该属性有两个快捷值,auto(1,1,auto)和none(0,0,auto);

6.align-self:允许单个项目与其他项目不一样的对齐方式,可覆盖align-items属性,默认值为auto,表示继承父元素的align-items,如无父元素则等同于stretch,该属性除了auto值外,其余的属性含义等同于align-items;

前端flex布局学习笔记的更多相关文章

  1. CSS flex 布局学习笔记

    写在前面 Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性. 任何一个容器都可以指定为 Flex 布局. 采用 Flex 布局的元素 ...

  2. Flex布局学习笔记

    任何元素都可以使用Flex布局,包括行内元素 display: flex; display: inline-flex使用Flex布局之后,子元素的float, clear, vertical-alig ...

  3. Flex 布局学习笔记

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  4. CSS3与页面布局学习笔记(八)——浏览器兼容性问题与前端性能优化方案

    一.浏览器兼容 1.1.概要 世界上没有任何一个浏览器是一样的,同样的代码在不一样的浏览器上运行就存在兼容性问题.不同浏览器其内核亦不尽相同,相同内核的版本不同,相同版本的内核浏览器品牌不一样,各种运 ...

  5. CSS Grid 布局学习笔记

    CSS Grid 布局学习笔记 好久没有写博客了, MDN 上关于 Grid 布局的知识比较零散, 正好根据我这几个月的实践对 CSS Grid 布局做一个总结, 以备查阅. 1. 基础用法 Grid ...

  6. flex 布局学习

    flex 布局学习 寻根溯源话布局 一切都始于这样一个问题:怎样通过 CSS 简单而优雅的实现水平.垂直同时居中.记得刚开始学习 CSS 的时候,看到 float 属性不由得感觉眼前一亮,顺理成章的联 ...

  7. flex弹性布局学习笔记

    前言 资料来源于网络,本人只是对此作了一下操作,记录于此以便以后查阅.目的在于梳理自己前端凌乱的知识点. 本文根据 Brian Franco 的一个flexbox.scss库来记录 入职新公司前对移动 ...

  8. CSS3与页面布局学习笔记(四)——页面布局大全(负边距、双飞翼、多栏、弹性、流式、瀑布流、响应式布局)

    一.负边距与浮动布局 1.1.负边距 所谓的负边距就是margin取负值的情况,如margin:-100px,margin:-100%.当一个元素与另一个元素margin取负值时将拉近距离.常见的功能 ...

  9. 原生 CSS 网格布局学习笔记

    下是来自Oliver Williams的帖子. Oliver已经学习了相当长时间的原生CSS网格,可以说是在CSS网格方面有一定的发言权.在这篇文章中,他将以非同寻常的思路分析自己的CSS网格布局学习 ...

随机推荐

  1. Ubuntu字符界面与图形界面的切换

    1.按ALT+CTRL+F1切换到字符界面 2.按ALT+CTRL+F7切换到图形界面

  2. java编程思想第四版第十章总结

    1. 内部类的特性 他允许你把一些逻辑相关的类组织在一起. 2. 使用.this 如果你需要在内部类中堆外部类进行应用,可以使用外部类的名字后面加.this.下面展示了如何使用 .this packa ...

  3. nyoj 84-阶乘的0 (规律题)

    84-阶乘的0 内存限制:64MB 时间限制:3000ms 特判: No 通过数:7 提交数:9 难度:3 题目描述: 计算n!的十进制表示最后有多少个0 输入描述: 第一行输入一个整数N表示测试数据 ...

  4. 【Leetcode 做题学算法周刊】第四期

    首发于微信公众号<前端成长记>,写于 2019.11.21 背景 本文记录刷题过程中的整个思考过程,以供参考.主要内容涵盖: 题目分析设想 编写代码验证 查阅他人解法 思考总结 目录 67 ...

  5. Cognitive Graph for Multi-Hop Reading Comprehension at Scale(ACL2019) 阅读笔记与源码解析

    论文地址为:Cognitive Graph for Multi-Hop Reading Comprehension at Scale github地址:CogQA 背景 假设你手边有一个维基百科的搜索 ...

  6. 程序员用于机器学习数据科学的3个顶级 Python 库

    NumPy NumPy(数值 Python 的简称)是其中一个顶级数据科学库,它拥有许多有用的资源,从而帮助数据科学家把 Python 变成一个强大的科学分析和建模工具.NumPy 是在 BSD 许可 ...

  7. EntityFramework Core 3.0查询

    前言 随着.NET Core 3.0的发布,EF Core 3.0也随之正式发布,关于这一块最近一段时间也没太多去关注,陆续会去对比之前版本有什么变化没有,本节我们来看下两个查询. 分组 我们知道在E ...

  8. PowerMock学习(九)之Mock Answer的使用

    关于Mock Answer 上一篇文章,有介绍过关于Arguments Matche的使用,其实 Answer的作用与其比较类似,但是它比 Arguments Matcher 更加强大. Argume ...

  9. 【Python3爬虫】网络小说更好看?十四万条书籍信息告诉你

    一.前言简述 因为最近微信读书出了网页版,加上自己也在闲暇的时候看了两本书,不禁好奇什么样的书更受欢迎,哪位作者又更受读者喜欢呢?话不多说,爬一下就能有个了解了. 二.页面分析 首先打开微信读书:ht ...

  10. 请求头里显示Provisional headers are shown的问题

    1.问题描述: 在工作中遇到了一个坑.登录一个系统的时候,退出登录不好使了,前端确实调用了logout的接口(退出接口),但是这个接口的请求头显示Provisional headers are sho ...