由于在日常工作中使用css或者bootstrap的栅格系统已经能很好的满足业务需求,所以一直以来对css3的弹性布局不是很感冒。

近日有幸在一篇文章中领略了flex的魅力--简洁优雅。随试之。

/*容器*/

.flex{

display: flex;

display: -webkit-flex;/*Webkit内核的浏览器,必须加上-webkit前缀。*/

/*注意,设为Flex布局以后,子元素的float、clear和vertical-align属性将失效。*/

flex-direction: row;/*决定主轴的方向,即子项目(子元素)横向排列还是纵向排列*/

/*row(默认值):主轴为水平方向,起点在左端。

row-reverse:主轴为水平方向,起点在右端。

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

column-reverse:主轴为垂直方向,起点在下沿。*/

flex-wrap:nowrap;/*定义如果一条轴线排不下,如何换行*/

/*nowrap(默认):不换行。

wrap:换行,第一行在上方。

wrap-reverse:换行,第一行在下方。*/

justify-content: flex-start;/*定义了项目在主轴上的对齐方式。*/

/*flex-start(默认值):左对齐

flex-end:右对齐

center: 居中

space-between:两端对齐,项目之间的间隔都相等。

space-around:每个项目两侧的间隔相等。所以,项目之间的间隔比项目与边框的间隔大一倍。*/

align-items: flex-start;/*定义项目在交叉轴上如何对齐。*/

/*flex-start:交叉轴的起点对齐。

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

center:交叉轴的中点对齐。

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

stretch(默认值):如果项目未设置高度或设为auto,将占满整个容器的高度。*/

}

/*项目,容器里的子元素默认成为项目,并拥有项目的默认属性*/

.flex-item{

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

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

/*如果所有项目的flex-grow属性都为1,则它们将等分剩余空间(如果有的话)。如果一个项目的flex-grow属性为2,其他项目都为1,则前者占据的剩余空间将比其他项多一倍。*/

flex-shrink:;/*定义了项目的缩小比例,默认为1,即如果空间不足,该项目将缩小。*/

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

flex:0 1 auto;/*flex属性是flex-grow, flex-shrink 和 flex-basis的简写,默认值为0 1 auto。后两个属性可选。*/

align-self:auto;/*允许单个项目有与其他项目不一样的对齐方式,可覆盖align-items属性*/

}

以上就是flex相关的所有属性。详情可以参考 阮一峰大神的博文,很详细哦!

现在开始实战,写两个常用的布局。

1、图文列表。

这是效果图,下面开始上代码。

帅舅舅

JavaScript全栈工程师成长中……

.container1{

display: flex;

display: -webkit-flex;

flex-direction: row;

height: 50px;

}

.left{

flex: 0 1 50px;

background-color: lightblue;

}

.right{

display: flex;

display: -webkit-flex;

flex-direction: column;

flex: 1 1 auto;

}

.title{

flex: 0 1 20px;

background-color: lightcyan;

}

.desc{

flex: 1 1 auto;

background-color: lightgray;

font-size: 12px;

color: #666;

}

.vertical-center{/*弹性布局实现垂直居中*/

display: flex;

display: -webkit-flex;

flex-direction:column;

justify-content:center;

}

这里有个技巧就是可以定义的排列顺序.left{order:1},达到左侧图片居右的效果

2、宫格布局

1
2
3
4
5

.container2{

display: flex;

display: -webkit-flex;

flex-direction: row;/*决定主轴的方向*/

flex-wrap:wrap;

}

.item{

height: 100px;

flex: 0 1 50%;

background-color: lightcoral;

color: white;

font-size: 20px;

text-align: center;

line-height: 100px;

border: 1px solid white;

box-sizing: border-box;

}

现在只是简单的写了个demo,认识和理解都还不深刻。随着今后在工作中的频繁使用,相信会有更多的发现和惊喜。

彻底搞懂flex弹性盒模型布局

为什么要用flex 基于css3简单方便,更优雅的实现,浏览器兼容性好,传统的css实现一个div居中布局要写一堆代码,而现在几行代码就搞定了,没有理由不用flex. 兼容性: Base Browse ...

Flex 弹性盒模型

box flex 弹性盒模型(转载)

css3引入了新的盒模型——弹性盒模型,该模型决定一个盒子在其他盒子中的分布方式以及如何处理可用的空间.这与XUL(火狐使用的用户交互语言)相似,其它语言也使用相同的盒模型,如XAML .GladeX ...

css3教程:弹性盒模型

Css3引入了新的盒模型——弹性盒模型,该模型决定一个盒子在其他盒子中的分布方式以及如何处理可用的空间.这与XUL(火狐使用的用户交互语言)相似,其它语言也使用相同的盒模型,如XAML .GladeX ...

columns分栏与flex弹性盒模型

columns  分栏 值:column-width:设置每列的宽度        column-count:设置列数   例:columns{200px 3}   列数和宽度固定        co ...

IT兄弟连 HTML5教程 CSS3属性特效 弹性盒模型

CSS3引入了新的盒模型——弹性盒模型,该模型决定一个盒子在其他盒子中的分布方式以及如何处理可用的空间.使用该模型,可以很轻松的创建自适应浏览器窗口的流动布局或自适应字体大小的弹性布局.弹性盒模型看起 ...

flex弹性盒模型

flex 意思是弹性布局,用来给盒模型提供最大的灵活度,指定容器中的项目为弹性布局,类似于float:left; 比float的好处是容器没有设置高度,会根据项目来自适应高度,我们都知道,设置floa ...

随机推荐

自制文件上传JS控件,支持IE、chrome、firefox etc.

(function() { if (window.FileUpload) { return; } window.FileUpload = function (id, url) { this.id = ...

UIView的setNeedsDisplay和setNeedsLayout

1,UIView的setNeedsDisplay和setNeedsLayout方法 首先两个方法都是异步执行的.而setNeedsDisplay会调用自动调用drawRect方法,这样可以拿到  UI ...

MFC对话框显示BMP图片

1.MFC对话框显示BMP图片我们先从简单的开始吧.先分一个类: (一) 非动态显示图片(即图片先通过资源管理器载入,有一个固定ID) (二) 动态载入图片(即只需要在程序中指定图片的路径即可载入) ...

delphi.位操作

位操作网上有很多介绍,请上网google/baidu,比如: 位操作技巧实例大全: http://blog.csdn.net/g_spider/article/details/5750665 位操作基 ...

SVN删除同名文件夹

解     释一下:     SVN  出现这个错误的原因是我删除了一个文件夹后又创建了一个同名文件夹.  在  svn   server  端,好像是不能区分这两个文件夹,所以出现了错误.     ...

ESXi控制台TSM:弥补vSphere Client不足

当vSphere Client不能完成某些任务时,主机的ESXi控制台及其技术支持模式(TSM)可能能派上用场. ESXi控制台允许管理员执行不能通过vSphere Client进行配置的管理任务,比 ...

QT VS2008未处理的异常: 0xC0000005

症状如图所示 出错代码段在第3行 QString dir = QFileDialog::getExistingDirectory(this,    tr("Save file path&qu ...

如何避免提交页面,信息未填写完善 就出现注册成功提示 基于js

基于bootstrip做好一个页面后,出现如下效果图 这个页面是未经过任何后端处理的页面,如果直接填写一个用户名 或者不填写任何东西都可以注册成功的,先来演示只输入一个用户名 就要可以注册成功的. 点 ...

DataSnap服务器从xe2升级到xe5报错的处理

DataSnap服务器从xe2升级到xe5环境下,能够正常编译,但运行后会报错,如下图: 处理参考: http://blogs.embarcadero.com/pawelglowacki/2013/0 ...

SQL Server T—SQL 存储过程 触发器

一.存储过程 存储过程是一组编译在单个执行计划中的T-SQL语句 存储过程:就像函数一样的会保存在数据库中(可编程性) 存储过程的优点: 1.允许模块化程序设计 2.允许更快执行如果某操作需要大量T- ...

css3弹性盒模型兼容性,彻底弄懂css3的flex弹性盒模型相关推荐

  1. 一文弄懂Linux下五种IO模型

    Linux下主要的IO主要分为:阻塞IO(Blocking IO),非阻塞IO(Non-blocking IO),同步IO(Sync IO)和异步IO(Async IO). 同步:调用端会一直等待服务 ...

  2. 彻底弄懂css3的flex弹性盒模型

    由于在日常工作中使用css或者bootstrap的栅格系统已经能很好的满足业务需求,所以一直以来对css3的弹性布局不是很感冒. 近日有幸在一篇文章中领略了flex的魅力--简洁优雅.随试之. /*容 ...

  3. 生成模型和判别模型的对比,懂这俩机器学习不在话下 最大熵模型

    决策函数:最大熵模型 最大熵模型:判别模型:构建特征和标签的映射通过计算条件熵(在已知条件下做风险最低的预测,万物熵增的规律启发) 生成:HMM,BAYES 一般来说,生成式模型需要非常充足的数据量以 ...

  4. flex 会使div撑满_如何讲清楚Flex弹性盒模型?(中)

    上一篇我们讲解了, flex容器的属性, 如何定义主轴方向, 以及主轴侧轴对齐方式 这篇讲解子元素的一些属性. 如何对子项目进行排序? 弹性盒模型第一次可以让我们方便的对元素进行排序 使用 order ...

  5. Flex弹性盒子(一篇带你掌握潮流 Flex 布局)

    文章目录 Flex弹性盒子 1.说在前头 1.1.Flex布局出现之前 1.2.Flex布局出现后 2.什么是Flex布局? 3.Flex container/item(父/子容器)的常用属性 4.L ...

  6. css盒模型、布局模型、 flex弹性盒模型及样式设置小技巧

    一.盒模型 元素分类  常用的块状元素有: <div>.<p>.<h1>...<h6>.<ol>.<ul>.<dl> ...

  7. flex 会使div撑满_如何讲清楚Flex弹性盒模型(中)?

    上一篇我们讲解了, flex容器的属性, 如何定义主轴方向, 以及主轴侧轴对齐方式 这篇讲解子元素的一些属性. 如何对子项目进行排序? 弹性盒模型第一次可以让我们方便的对元素进行排序 使用 order ...

  8. 【实战篇】是时候彻底弄懂BERT模型了(收藏)

    引言 本文是[理论篇]是时候彻底弄懂BERT模型了的姊妹篇.在本文中,我们通过

  9. 彻底弄懂flex布局

    目前在不考虑IE以及低端安卓机(4.3-)的兼容下,已经可以放心使用flex进行布局了.什么是flex布局以及它的好处,这里就不再赘述. 在这篇文章里,想说说flex布局的属性语法及其细节.那么网上也 ...

最新文章

  1. doe全称是什么意思_BVV线和RVV都是护套线,二者有什么区别?【辽宁津达线缆】...
  2. 1016. 部分A+B (15)
  3. Android APK反编译详解(附图)(转)
  4. 搜推广遇上用户画像:Lookalike相似人群拓展算法
  5. [剑指offer]面试题第[57-2]题[JAVA][和为s的连续正数序列][数学法][滑动窗口]
  6. flowable实战(三)flowable流程实例管理接口
  7. 支付宝蚂蚁森林入选2019年世界环境日实践案例
  8. 高德开放平台与360儿童手表达成合作,全球数据助力第三方企业
  9. active set method(激活集方法)
  10. zebra代码简单分析 --- 001
  11. [家里蹲大学数学杂志]第014期一份常微分方程考试题
  12. Android混淆和加固详解
  13. TIPTOP、T100系统程序的内置函数使用详解
  14. 谢辉吉林大学计算机学院,【大科·数院】佳绩频传,成果丰硕——第12届中国大学生计算机设计大赛吉大赛区数院学子成绩斐然...
  15. 建议65:总是处理未捕获的异常
  16. 用python根据生日判断星座_pandas如何将生日按星座分组
  17. 从诸葛亮的三个锦囊妙计谈策略模式
  18. Android、APP、APK 、华为报感染病毒 a.gray.Bulimia.a 已解决 (精)
  19. DVWA之Brute Force(暴力破解)
  20. Html标签分类及总结

热门文章

  1. Python批量下载apk
  2. DDR布线规则与过程——见过最简单的DDR布线教程
  3. Can't find bundle for base name XXXX, locale zh_CN解决方法
  4. Word表格常见设置汇总
  5. 循环队列的原理及例子
  6. 静态成员、this指针
  7. ksweb打开php,如何在Android上使用ksweb+app从PHP运行Python?
  8. 逻辑思维能力测试题归纳总结之计算题逻辑思维能力测试题归纳总结之计算题
  9. 实验笔记之——基于DWT的octave layer(DWT在pytorch中实现)
  10. SVN版本控制软件-图片含义详解