Flex —— Flexible Box 弹性布局

用来为盒子模型提供灵活性

/* 块级元素 */
.box{
display: flex;
} /* 行内元素 */ .box{
display: inline-flex;
} /* Webkit 内核的浏览器 */
.box{
display: -webkit-flex; /* Safari */
display: flex;
}

基本概念

容器 container ——  display: flex;后的元素

项目 item ——  container里面的元素

主轴 main axis —— 横轴

交叉轴 cross axis —— 竖轴

main start,main end,cross start,cross end —— 如果从左到右,从上到下算,则为:左端点,右端点,上端点,下端点

main size,cross size —— 宽多少,高多少

container的属性

6个

 - flex-direction √
- flex-wrap √
- flex-flow
- justify-content √
- align-items √
- align-content
// 记四个就够用了

flex-direction

item的排列方向(row | row-reverse | column | column-reverse)(→ | ← | ↓ | ↑)

默认row →

flex-wrap

怎么换行(nowrap | wrap | wrap-reverse)(不换行 | 往下换行 | 往上换行)

默认不换行nowrap

flex-flow

是 flex-direction 和 flex-wrap 属性的复合属性。,默认值为flex-flow: row nowrap;

justify-content

item的在横轴上怎么对齐,(flex-start | flex-end | center | space-between | space-around) (main start为起点对齐 | mian end为起点对齐 | 向中间靠拢对齐 | 两端对齐,item间隔相等 | 每个item两侧间隔相等)

具体对齐方式与轴的方向有关。下图假设主轴为从左到右:

align-items

item在竖轴上怎么对齐(flex-start | flex-end | center | baseline | stretch)(cross start为起点对齐 | cross end 为起点对齐 |  竖轴中心点对齐 |  item的第一行文字的基线对齐 | 如果项目没设置高度或设auto将占满整个高度)

默认stretch

具体的对齐方式与交叉轴的方向有关,下图假设交叉轴从上到下:

align-content

定义了多根轴线的对齐方式

 align-content: flex-start | flex-end | center | space-between | space-around | stretch

item的属性

6个

order √
flex-grow √
flex-shrink √
flex-basis
flex
align-self √ //√的四个可能有用点

  

order - 排序

item排列顺序,数值越小,排列越靠前,默认为0

.item {
order: <integer>;
}

flex-grow

item的放大比例, 默认0,即如果存在剩余空间,也不放大。

flex-shrink

item的缩小比例,默认为1,即如果空间不足,该项目将缩小。

不能负值

flex-basis

定义了在分配多余空间之前,项目占据的主轴空间(main size)。浏览器根据这个属性,计算主轴是否有多余空间。它的默认值为auto,即item的本来大小。

.item {
flex-basis: <length> | auto; /* default auto */
}

  

flex

flex-grow, flex-shrink 和 flex-basis的复合属性,默认0,1,auto

align-self

这个item自己想和别的不同的对齐方式,默认值为auto,表示继承父元素的align-items属性,如果没有父元素,则等同于stretch。

 align-self: auto | flex-start | flex-end | center | baseline | stretch(除了auto,其他都与align-items属性完全一致)

汇总

Flex学习笔记的更多相关文章

  1. CSS3伸缩布局Flex学习笔记

    如果需要使用伸缩布局首先得把display:flex;对于兼容还得加前缀display:-webkit-display:flex;等其他浏览器前缀,但我本机Chrome测试已经不需要加前缀了,其实这些 ...

  2. Flex学习笔记-皮肤

    1文件结构 MXML应用程序 index.mxml 皮肤文件 components.button.skin.btnSkin1.mxml  皮肤文件的组件随便引用了spark.components.Bu ...

  3. Flex学习笔记-时间触发器

    <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="ht ...

  4. Flex学习笔记-Vgropu Hgroup 定义的组 表单程序。

    <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="ht ...

  5. Flex学习笔记-自定义菜单的显示细节

    icon <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx=&qu ...

  6. Flex学习笔记--多层菜单按钮

    <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="ht ...

  7. Flex学习笔记-使用MXML和一个AS事件监听器监听事件

    <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="ht ...

  8. flex学习笔记 使用函数,显示实时更新的标签

    <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="ht ...

  9. Flex学习笔记,脚本式验证

    <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="ht ...

  10. Flex学习笔记PopUpMenuButton

    <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="ht ...

随机推荐

  1. Eclipse 修改默认工作空间

    第一次启动Eclipse时会弹出对话框,让你进行Workspace Launcher,也就是设置Eclipse的项目存放路径.但是,当你勾选“Use this as the default and d ...

  2. ios统计流量代码

    #include <ifaddrs.h> #include <sys/socket.h> #include <net/if.h> 1.3G/GPRS流量统计 int ...

  3. gdb几个操作

    如果进程转为守护进程,可设置如下跟进子进程 set follow-fork-mode child 输出变量/函数/返回值有print, call, display,自行选择 对于打印value has ...

  4. Percona-Tookit工具包之pt-pmp

      Preface       Sometimes we need to know the details of a program(porcess) when it is running even ...

  5. 7-1 python 操作redis

    1.安装并导入redis模块 # pip install redis 安装redis模块 import redis # 导入redis模块 2.连接一个或多个redis,指定数据库名,并指定返回字符串 ...

  6. IOS中input与fixed同时存在的情况会出现bug

    两种解决方案,一种是将内容区域放在中间部分,只是中间部分在滚动(还是固定在底部):另一种是判断当是ios时,将其转换为absolute定位.(跟随着页面的滚动而滚动);; 当使用input时,fixe ...

  7. PHP 输出控制

    一.前言 说到PHP输出控制, 在很多框架里面,比如说TP,Yii和Laraval的模版引擎里面都有输出控制函数的阴影,输出控制也叫输出缓冲,说到它的作用有以下几点. 二.内容 1. 输出模版 $va ...

  8. 归并排序算法Java实现

    一. 算法描述 归并排序采用了分治策略(divide-and-conquer),就是将原问题分解为一些规模较小的相似子问题,然后递归解决这些子问题,最后合并其结果作为原问题的解. 归并排序将待排序数组 ...

  9. C语言指针篇(一)指针与指针变量

    指针 1. 什么是指针?    2. 指针可不可怕? 3. 指针好不好玩? 4. 怎么学好指针?     C语言是跟内存打交道的语言,指针就是内存地址.指针无处不在,指针并不可怕,相反,等你学到一定程 ...

  10. PHP.22-Smart模版

    Smart模版 smarty是一个基于PHP开发的PHP模板引擎.它提供了逻辑与外在内容的分离,简单的讲,目的就是要使PHP程序员同美工分离,使用的程序员改变程序的逻辑内容不会影响到美工的页面设计,美 ...