最近开始对flex布局进行一个重新的认识。

首先。

flex布局适用于所有元素

但是注意一点的就是,一旦父级元素设定flex布局的时候,子元素的传统布局属性, float,clear,vertical-align属性都会失效的。

一.父容器的属性

1.flex-direction

是决定元素主轴的方向

row:默认值,由左到右正序。

row-reverse:有右到左的逆序

column:有上倒下的正序

column-reserve:由下到上的逆序

2.flex-wrap

是否换行

nowrap:默认值,不换行(当元素数量和宽度超出父级,就会缩短自身宽度)

wrap:换行(保留当前宽度,换行。且行高等于父级元素的一半)

wrap-reverse:由下向上换行,同wrap一样,但如果父级宽度过低,那行高就为1

3.justify-content

定义元素在父级X轴对齐方式

flex-start:默认值,元素左对齐。

flex-end:元素右对齐

center:元素中间对齐

space-between:元素等分两边对齐

space-around:元素等分,两边有间隔。且间隔是元素之间间隔的一半

4.align-items

定义元素在父级y轴对齐的方式

flex-start:元素上对齐

flex-end:元素下对其

center:元素居中显示

stretch:默认值,如果没设置高度,那么高度就为100%;

5.align-centent

当超过两行的时候,上下对齐方式

flex-start:元素上对其

fled-end:元素下对其

center:元素剧中对齐

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

space-between:元素等分上下对齐

space-around:元素等分,上下又间隔,且间隔是元素之间间隔的一半

二、子元素的属性

1.order

order默认值为0,属性定义元素的排列顺序,最小越前

2.flex-grow

flex-grow默认值为0,属性定义元素宽高增大占比,值越大占比越大

3.flex-shrink

flex-shrink默认值为1,属性定义元素宽高缩小占比,值越大缩小越大,负值无效

4.flex-basis

flex-basis默认值为auto,属性意义和width相同,但是优先级高于width

5.align-self

align-self默认值是flex-start,属性的定义和align-items相同,但是会覆盖其样式单独定义

三、疑难点

1.align-items和align-content之间文字的区别?

很多人对这两个属性又一些不解,同样都是操纵子元素Y轴但是,align-content只能操作多

行,单行是无效的。而且align-content会重置flex项目元素对自身等分的行高问题。

话不多说一个图能代表一切:

这样是不是就了解了

2.align-self和align-items之间的区别

相对于第一个问题,这个就更简单了,align-items是给子元素规定一个统一样式,而align-self

是单独的自己给自己样式。

暂且有这么多。以后在有问题在补充

flex布局简析的更多相关文章

  1. 静态布局、自适应布局、流式布局、响应式布局、弹性布局简析、BFC

    静态布局:给页面元素设置固定的宽度和高度,单位用px,当窗口缩小,会出现滚动条,拉动滚动条显示被遮挡内容.针对不同分辨率的手机端,分别写不同的样式文件.例如:浏览器窗口是1000px,那么最小的宽度是 ...

  2. 微信小程序开发:Flex布局

    微信小程序页面布局方式采用的是Flex布局.Flex布局,是W3c在2009年提出的一种新的方案,可以简便,完整,响应式的实现各种页面布局.Flex布局提供了元素在容器中的对齐,方向以及顺序,甚至他们 ...

  3. Icarus Verilog和GTKwave使用简析

    Icarus Verilog和GTKwave使用简析 来源 http://blog.csdn.net/husipeng86/article/details/60469543 本文测试文件在window ...

  4. CSS的flex布局和Grid布局

    一.什么是 flex 布局 2009年,W3C 提出了一种新的方案----Flex 布局,可以简便.完整.响应式地实现各种页面布局.目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这 ...

  5. css 弹性盒模型Flex 布局

    参考文章:http://www.runoob.com/w3cnote/flex-grammar.html Flex 布局是什么:采用Flex布局的元素,称为Flex容器(flex container) ...

  6. Flex 布局教程:语法篇

    作者: 阮一峰 网页布局(layout)是CSS的一个重点应用. 布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性.它对于那些特殊布局非常不方便 ...

  7. Flex 布局教程:实例篇

    该教程整理自 阮一峰Flexible教程 今天介绍常见布局的Flex写法.你会看到,不管是什么布局,Flex往往都可以几行命令搞定. 我的主要参考资料是Landon Schropp的文章和Solved ...

  8. 在移动端中的flex布局

    flex布局介绍: flex布局很灵活, 这种布局我们也可以称之为弹性布局,  弹性布局的主要优势就是元素的宽或者高会自动补全; flex布局实例: 比如有两个div,一个div的宽度为100px, ...

  9. css flex布局

    关于flex布局的一些简单用法 效果(下图) 实现代码: <!--html--> <div class="wrap"> <div class=&quo ...

随机推荐

  1. Caffe︱构建lmdb数据集、binaryproto均值文件及各类难辨的文件路径名设置细解

    Lmdb生成的过程简述 1.整理并约束尺寸,文件夹.图片放在不同的文件夹之下,注意图片的size需要规约到统一的格式,不然计算均值文件的时候会报错. 2.将内容生成列表放入txt文件中.两个txt文件 ...

  2. (八)java垃圾回收和收尾

    垃圾回收机制:当一个对象不再被引用时,或者说当一个对象的引用不存在时,我们就认为该对象不再被需要,它所占用的内存就会被释放掉.     垃圾回收只是在程序执行过程中偶尔发生,java不同的运行时刻会产 ...

  3. 异常-----freemarker.template.TemplateException: Error executing macro: write

    freemarker自定义标签 1.错误描述 六月 05, 2014 11:31:35 下午 freemarker.log.JDK14LoggerFactory$JDK14Logger error 严 ...

  4. Eclipse去除网上复制下来的来代码带有的行号

    一.正则表达式去除代码行号 作为开发人员,我们经常从网上复制一些代码,有些时候复制的代码前面是带有行号,如: MyEclipse本身自带有查找替换功能,并且支持正则表达式替换,使用正则替换就可以很容易 ...

  5. javscript eval()的优缺点与web安全防范

    要说JavaScript中最为强大的一个方法便是eval()方法呢,为何如此说呢?因为它就像是一个JavaScript解析器,也就是说它的参数就是一段js代码所构成的字符串,当执行这个函数的时候,会把 ...

  6. WKWebView 加载本地HTML显示不出网页问题,这点你注意了吗?-------完美显示

    1.首先,WKWebView的引入和创建,我这里就不做阐述,我要说的,就是解决别人不能给您解决的问题 2.WKWebView 加载本地HTML,也就是两三句代码  是吧?作为读者的您肯定也知道,也实现 ...

  7. CSS3动画以及animation事件

    1.CSS3动画以及animation事件的定义 animation :name duration timing-function delay iteration-count direction an ...

  8. 第二篇:操纵MySQL数据库(2) - 基于ORM思想的SQLAlchemy库

    前言 本文讲解在Python语言中使用SQLAlchemy库操纵MySQL数据库的方法. 由于具体内容涉及较多,本文仅以插入及展示数据为例,更多内容请查阅有关文档. ORM ORM也即对象 - 关系映 ...

  9. bzoj2969 矩形粉刷

    学习一波用markdown写题解的姿势QAQ 题意 给你一个w*h的矩形网格,每次随机选择两个点,将以这两个点为顶点的矩形内部的所有小正方形染黑,问染了k次之后期望有多少个黑色格子. 分析 一开始看错 ...

  10. 【洛谷1026】【NOIP2001】统计单词个数

    题面 题目描述 给出一个长度不超过200的由小写英文字母组成的字母串(约定;该字串以每行20个字母的方式输入,且保证每行一定为20个).要求将此字母串分成k份(1<k<=40),且每份中包 ...