伸缩盒 Flexible Box(新)
flex flex-grow flex-shrink flex-basis flex-flow flex-direction flex-wrap align-content align-items align-self justify-content order
(1) flex: none | <' flex-grow '> <' flex-shrink >' || <' flex-basis '>
(a) <' flex-grow '> : 当剩余空间 > 0 子项分配空间的比例
(b) <' flex-shrink >':当剩余空间 < 0 在收缩的时候收缩比率会以伸缩基准值加权
(c) <' flex-basis '>:「flex子项」长度的起始数值
例子:
<style>
.flex{
display:flex;
width:800px;
margin:0;
padding:0;
list-style:none;
}
.flex :nth-child(1){
flex:1 1 300px;
}
.flex :nth-child(2){
flex:1 2 200px;
}
.flex :nth-child(3){
flex:3 3 400px;
}
</style>
<ul class="flex">
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
剩余空间: 800-300-200-400 = -100<0
加权:300*1+200*2+400*3 = 1900;
a被移除的空间: (300*1/1900)*100 约等于 16
a的实际空间 : 300-16
b被移除的空间: (200*2/1900)*100
c被移除的空间: (400*3/1900)*100
用的是<' flex-shrink >'这列的比例
-----------------------------------------------------------------------------------------
如果上面例子中的flex的width为1500, 则会使用<' flex-grow '>,则计算如下:
1500-300-200-400 = 600>0
a的扩展量: 1/(1+1+3)*600=120
a的实际宽度:300+120
(2) flex-flow:<' flex-direction '> || <' flex-wrap '>
(a)flex-direction:row | row-reverse | column | column-reverse

(b)flex-wrap:nowrap | wrap | wrap-reverse
nowrap:flex容器为单行。该情况下flex子项可能会溢出容器
wrap:flex容器为多行。该情况下flex子项溢出的部分会被放置到新行,子项内部会发生断行
wrap-reverse:反转 wrap 排列。

------align-content 和 justify-content 是针对整个flex container里的 content-----------------------------------------------------------------------------------------------------------------------------------------------------
(3)align-content:flex-start | flex-end | center | space-between | space-around | stretch
注意a: 当box-orient: horizontal时,与 box-align相似,但是 box-align 属性不会自动换行,超出父级的部分仍会一行显示
b: 当伸缩容器的侧轴还有多余空间时,多行才起作用


(4) justify-content(当flex-direction为 column 或 column-reverse 不起作用):flex-start | flex-end | center | space-between | space-around

注意a: 与align-content相比,超出一行并不会换行,但仍起效果。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
(5)align-items(作用于父节点):flex-start | flex-end | center | baseline | stretch 纵值
(6)align-self(作用于子节点):auto | flex-start | flex-end | center | baseline | stretch 作用于该样式的标签上
(7)order:<integer>
用整数值来定义排列顺序,数值小的排在前面。可以为负值。类似于box-ordinal-group
伸缩盒 Flexible Box(新)的更多相关文章
- CSS3伸缩盒Flexible Box
这是一种全新的布局,在移动端非常实用,IE对此布局的相关的兼容不是很好,Firefox.Chrome.Safrai等需要加浏览器前缀. 先说说这种布局的特点: 1)移动端由于屏幕宽度都不一样,在布局的 ...
- 伸缩盒 Flexible Box(旧)
box-orient box-pack box-align box-flex box-flex-group box-ordinal-group box-direction box ...
- 第10章 布局样式相关-伸缩布局(Flexible Box)
伸缩布局(一) CSS3引入了一种新的布局模式--Flexbox布局,即伸缩布局盒模型(Flexible Box),用来提供一个更加有效的方式制定.调整和分布一个容器里项目布局,即使它们的大小是未知或 ...
- css3 新旧伸缩盒的异同
由于不需要理会IE浏览器,伸缩盒(flexible box)移动端开发中非常好用! 工作中使用APICLOUD开发手机App,老板要求兼容到安卓2.3(新版的需要安卓4.4以上),所以一直使用的是旧版 ...
- CSS盒子模型之CSS3可伸缩框属性(Flexible Box)
CSS盒子模型(下) 一.CSS3可伸缩框(Flexible Box) 可伸缩框属性(Flexible Box)是css3新添加的盒子模型属性,有人称之为弹性盒模型,它的出现打破了我们经常使用的浮动布 ...
- Flex布局(伸缩盒布局)
Flexible Box是什么?Flexible意为可伸缩的,Box意为盒子,可以理解为一种新式的盒模型——伸缩盒模型.由CSS3规范提出,这是在原有的大家非常熟悉的block, inline-blo ...
- CSS3 Flexbox(伸缩盒/弹性盒模型)可视化指南
在http://css.doyoe.com/(CSS参考手册)中,本文对应其中的伸缩盒 引入 Flexbox布局官方称为CSS Flexible Box Layout Module是一个CSS3新的布 ...
- 深入了解 Flexbox 伸缩盒模型
Flexbox(伸缩布局盒) 是 CSS3 中一个新的布局模式,为了现代网络中更为复杂的网页需求而设计.本文将介绍 Flexbox 语法的技术细节.浏览器的支持越来越快,所以当 Flexbox 被广泛 ...
- CSS3_伸缩盒模型_弹性布局_等分布局_flex 布局
伸缩盒模型 CSS3 引入的布局模式 Flexbox 布局 主要思想: 让容器有能力让其子项目能够改变其宽度,高度,以最佳方式填充可用空间. 特点: display: flex; 只能控制其子元 ...
随机推荐
- SVN外链
1 外链使用场景 使用Subversion进行版本管理时,有时需要将一些公共库或者开源库链接到自己项目中,为了同时做到与外部库实时更新,使用Subversion的外链功能,从而将外部的库当做本地项目的 ...
- 【转】MaxScript.Net接收本地端口的消息执行
MaxScript里开不了线程,但是可以用.Net的BackgroundWorker来做后台处理 BackgroundWorker Fn BackgroundTcpListenerDoWork the ...
- C++学习基础十二——纯虚函数与抽象类
一.C++中纯虚函数与抽象类: 1.含有一个或多个纯虚函数的类成为抽象类,注意此处是纯虚函数,而不是虚函数. 2.如果一个子类继承抽象类,则必须实现父类中的纯虚函数,否则该类也为抽象类. 3.如果一个 ...
- java SE编写图形应用程序
借鉴了java 核心技术卷1 并参考http://www.jb51.net/article/56158.htm 添加了JTextField的使用. ####################### ...
- PVANET----Deep but Lightweight Neural Networks for Real-time Object Detection论文记录
arxiv上放出的物体检测的文章,在Pascal voc数据集上排第二.源码也已放出(https://github.com/sanghoon/pva-faster-rcnn),又可以慢慢把玩了.这篇文 ...
- spring IOC核心原理
下面来了解一下Spring到底是怎么运行的. public static void main(String[] args) { ApplicationContext context = new Fil ...
- Hex string convert to Binary String and Vise-Versa(16进制和2进制字符串的相互转换)
这个转换在我们日常的编码中还是很有机会遇到的,这里贴出来和大家分享探讨. void pu_hex_to_binary(std::string strHex, std::string &strB ...
- springMVC:通配符的匹配很全面, 但无法找到元素 'mvc:annotation-driven' 的声明
转自:http://blog.csdn.net/tolcf/article/details/50845483 报错信息:通配符的匹配很全面, 但无法找到元素 'mvc:annotation-drive ...
- redhat yum 从 iso 安装
背景: 1)yum 在没有注册的redhat中无法使用,不能去自动搜索redhat的库 2)使用者不能上网 方法摘自网络,就是下载ISO文件,yum的下载点指向ISO的mount后(也就是解压缩)的目 ...
- XidianOJ 1057 卡尔的技能
题目描述 dota中的英雄卡尔的技能说明如下,他拥有3种不同的元素(冰,雷,火),每次他需要释放技能的时候,他要先选择3次元素来决定释放技能的类型(比如,他可以选择火+火+火或冰+雷+火等等),生成技 ...