如果需要使用伸缩布局首先得把display:flex;对于兼容还得加前缀display:-webkit-display:flex;等其他浏览器前缀,但我本机Chrome测试已经不需要加前缀了,其实这些还好,关键移动端竟然不支持这个属性,移动端支持的还是老版本的display:-webki-box;不过对于学习来说,也不管它支持不支持了,学了再说吧,更何况Chrome已经把flex的前缀去了,说明flex多少还是有些稳定的。

下面列出了关于CSS与flex一起使用的一些属性

    • display 显示方式

    • flex-direction 设置flex模型的方向

    • justify-content 设置水平方向的对齐

    • align-items 设置垂直方向的对齐

    • flex-wrap 是否换行

    • align-content 设置换行后的对齐方式

    • flex-flow 简写flex-direction和flex-wrap

    • order 指定顺序

    • align-self 覆盖容器的对齐项目属性

    • flex 指定长度

注意如果设置了宽度盒子是固定的。

弹性盒模型可以设置成·flex 或 inline-flex

display:flex

注意这个被固定住了,默认情况下,沿水平轴,从左至右

inline-flex和flex的效果是一样的,也没弄个所以然出来。

Flex的方向

  flex-direction:属性指定flex的方向。默认值是row(左到右,顶部到底部)

  其他的值如下:

    •   row-reverse - 从右到左,1在最右边,2倒数第2....
    •   column - 垂直排列
    •   column-reverse - 垂直排列并且逆转

row-reverse

column

  

column-reverse

  

水平对齐 --justify-content

  可能的值如下:

    •   flex-start- 默认值。被定位在容器的开头
    •   flex-end - 被定位在容器的端部
    •   center - 被定位在容器的中心
    •   space-between - 项目定位与线之间的空间
    •   space-around - 项目是前定位成空间之间,并且所述线后

flex-end

  

center

  

space-between

  

space-around

  

垂直对齐--align-items

  可能的值如下:

    •   stretch- 默认值。项目被拉伸以适应父元素
    •   flex-start - 被定位在容器的顶部
    •   flex-end - 被定位在容器的底部
    •   center - 被定位在容器的中心
    •   baseline - 被定位在容器的基线

stretch

  

flex-start

  

flex-end

  

center

  

baseline

  

如果没有足够的空间指定是否换行--flex-wrap

  可能的值如下:

    •   nowrap- 默认值。不换行
    •   wrap - 换行
    •   wrap-reverse - 以相反的顺序换行

nowrap

  

wrap

  

wrap-reverse

  

内容对齐--align-content

需要配合flex-wrap使用

可能的值如下:

    •   stretch- 默认值。线路延伸到占用的剩余空间
    •   flex-start - 线路都挤满朝着柔性容器的开始
    •   flex-end - 线路都挤满朝着柔性容器的结束
    •   center - 线路都挤满朝着柔性容器的中央
    •   space-between - 线条均匀地分布在Flex容器
    •   space-around - 线条均匀地分布在Flex容器,用半角空格的两端

center

  

对这个不是很理解,待研究。

指定项目的顺序--order

给第二个添加 order:-1

  

谁的数大,谁在后面

余量将所有额外的空间被吸收到该元素上--margin-right: auto

  

完美水平垂直居中

  

对每个子项目设置对齐--align-self

flex-start、flex-end、center、baseline、stretch

  

指定项目的范围--flex

2,1,1

  

简写flex-direction 和 flex-wrap --flex-flow

flex-flow: row-reverse wrap;

这些还多少有些不完善,以后还会更新进来。

本文内容翻译自:http://www.w3schools.com/

CSS3伸缩布局Flex学习笔记的更多相关文章

  1. CSS3 伸缩布局盒模型记

    CSS3 伸缩布局盒模型 CSS3引入的布局模式Flexbox布局,主要思想是让容器有能力让其子项目能够改变其宽度,高度,以最佳方式填充可用空间.Flex容器使用Flex项目可以自动放大与收缩,用来填 ...

  2. css3伸缩布局中justify-content详解

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. 弹性伸缩布局-flex

    弹性伸缩布局-flex 引言:本文主要参照阮一峰的网络日志 .郭锦荣的博客总结完成. 正文: 布局的传统解决方案,基于盒状模型,依赖 display 属性 + position属性 + float属性 ...

  4. CSS3(5)---伸缩布局(Flex)

    CSS3(5)---伸缩布局 有关页面布局之前写过三篇相关文章: 1.CSS(5)---盒子模型 2.CSS(6)---浮动(float) 3.CSS(8)---定位(position) 一.什么是F ...

  5. css学习_css3伸缩布局 flex布局

    1.flex布局 案例一: 案例二:   保证不至于缩放得太小或太大 案例三:flex的值不一定要写成几份,可以写成固定值 案例四: 竖着3等分(父容器按照高度3等分) !!案例  -----用fle ...

  6. CSS 小结笔记之伸缩布局 (flex)

    CSS flex 是一种伸缩布局,之前块级元素布局在同一行,可以通过display或position或float来实现,而本篇介绍一个新的方法——flex(弹性布局). flex 为和模型布局提供了极 ...

  7. css3 伸缩布局 display:flex等

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. CSS3 伸缩布局盒模型

    CSS3引入的布局模式Flexbox布局,主要思想是让容器有能力让其子项目能够改变其宽度,高度,以最佳方式填充可用空间.Flex容器使用Flex项目可以自动放大与收缩,用来填补可用的空闲空间.更重要的 ...

  9. CSS3——伸缩布局及应用

    CSS3在布局方面做了非常大的改进,使得我们对块级元素的布局排列变得十分灵活,适应性非常强,其强大的伸缩性,在响应式开中可以发挥极大的作用. 主轴:Flex容器的主轴主要用来配置Flex项目,默认是水 ...

随机推荐

  1. 『TCP/IP详解——卷一:协议』读书笔记——17

    2013-08-27 15:37:42 6.5 ICMP端口不可达差错 端口不可达报文是ICMP差错报文的一种,它是ICMP不可达报文中的一种,以此来看一看ICMP差错报文中所附加的信息.使用UDP来 ...

  2. Unity : Ran out of trampolines of type 2

    Unity 导出游戏到 iOS 平台,当时选择的设置是 mono2x, 结果游戏各种莫名其妙的崩溃,再崩溃, 几乎运行不到一分钟就崩溃,而在 editor 和 android 平台都是正常的. 查看出 ...

  3. 表格里使用text-overflow后不能隐藏超出的文本的解决方法

          当把text-overflow设为ellipsis时文本溢出内容就能显示为省略标记,而设为clip时就能把文本溢出的部分裁切掉,不过在表格里面使用text-overflow后依旧不能隐藏超 ...

  4. Debian 7 安装 wireshark

    安装过程很简单: $ sudo apt-get install wireshark 其中会弹出一个对话框: ┌─────────────────────┤ Configuring wireshark- ...

  5. JS变量和函数的一些理解

    今日看了下JS变量的一些文章,有些感触,把自己总结的一些写出来. JS初始化的过程1.JS解释器执行代码之前,创建全局变量2.用预定义的值和函数来初始化全局对象中的属性,3.搜索函数外的var声明,创 ...

  6. 萝卜白菜,给有所爱——C#和JAVA都会终将被时代淘汰

    看到园子里又有一波试图掀起C#和JAVA的谁更好的争论,对于这些一直不断的争论,我觉得实在没有必要,黑格尔的存在即合理,中国的老古语说的萝卜白菜各有所爱,大家争论的再多其实卵用也没用,还不如趁着闲暇时 ...

  7. MVC 会员注册

    @{ ViewBag.Title = "Register"; } <script src="~/Scripts/jquery-2.1.0.js">& ...

  8. 读Lua游戏开发实践指南

    11月11日开读,到今天正好一个月. 起因是被裁员之后,发现很多公司都在使用lua编写cocos2d-x游戏,原因是上手快,技术人员比较便宜. 如果引擎封装比较好,几乎在lua里写写基本逻辑就行了,不 ...

  9. C#与C++的区别!

    (1) 编译目标:C++代码经常编译成汇编语言.而C#则编译成中间语言(IL)它与Java的字节代码有些相似.IL随后在通过Iust-In-Time编译进程转换成本机的可执行代码.IL代码将作为一个装 ...

  10. div错位/解决IE6、IE7、IE8样式不兼容问题

    IE6里DIV错位的问题    原文:chinafine 采用”FLOAT:LEFT“的DIV在IE8.IE7.都没问题,IE6下却向下移动,出现空白.这是因为,IE6采用的内核默认把DIV之间的距离 ...