最近做的项目因为对浏览器的兼容要求是IE10以上,所以大胆的使用了Flex布局,这里总结一些使用心得仅供参考。

一,Flex简单介绍

Flex是Flexible Box的缩写,意为”弹性布局”。任何一个容器都可以指定为Flex布局。当元素设为Flex布局以后,子元素的float、clear和vertical-align属性将失效。

采用Flex布局的元素,称为Flex容器(flex container)。它的所有子元素自动成为容器成员,称为Flex项目(flex item)。

二,用法及效果

Flex容器的属性有:

  • flex-direction   设置项目的排列方向
  • flex-wrap        一行排不下的时候如何换行
  • flex-flow              flex-direction属性和flex-wrap属性的简写形式
  • justify-content    子元素的横向对齐方式
  • align-items     子元素垂直对齐方式
  • align-content      子元素多根轴线的对齐方式

Flex项目的属性有:

  • order          定义项目的排列顺序。数值越小,排列越靠前,默认为0
  • flex-grow    定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大
  • flex-shrink  定义了项目的缩小比例,默认为1,即如果空间不足,该项目将缩小
  • flex-basis   定义了在分配多余空间之前,项目占据的主轴空间,默认为auto
  • flex            是flex-grow, flex-shrink 和 flex-basis的简写,默认值为0 1 auto,主要使用了这个属性。
  • align-self   允许单个项目有与其他项目不一样的对齐方式

三,实例
1,全页面布局,要求:

html

 <div class="header"></div>
<div class="content">
<div class="leftside"></div>
<div class="rightside"></div>
</div>

css:

 .content{display:flex;}
.leftside{max-width:20%;}
.rightside{flex:;}

2,复杂结构的行列表,要求:

一行的html:

 <div class="line">
<div class="title"> 内部结构... </div>
<div class="info"> 内部结构... </div>
<div class="btns"> 内部结构... </div>
</div>

css:

.line{display:flex;align-items: center;justify-content: space-between;} //两端对齐,垂直居中
.title{flex:;} //在总宽度中分配的比例
.info,.btns{flex:;}

四,总结

用顺手了之后在各种结构中都想flex一下,但是注意,如果你的元素后续需要js操作显示隐藏,切换display:block,display:none功能的时候就不能使用flex了。

Flex使用总结的更多相关文章

  1. OpenCASCADE Expression Interpreter by Flex & Bison

    OpenCASCADE Expression Interpreter by Flex & Bison eryar@163.com Abstract. OpenCASCADE provide d ...

  2. Flex 布局教程:语法篇

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

  3. Flex 布局教程:实例篇

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

  4. CSS布局之div交叉排布与底部对齐--flex实现

    最近在用wordpress写页面时,设计师给出了一种网页排布图样,之前从未遇到过,其在电脑上(分辨率大于768px)的效果图如下: 而在手机(分辨率小于等于768px)上要求这样排列: 我想到了两种方 ...

  5. Flexible 弹性盒子模型之flex

    实例 让所有弹性盒模型对象的子元素都有相同的长度,忽略它们内部的内容: #main div { flex:1; } 复制 效果预览 浏览器支持 表格中的数字表示支持该属性的第一个浏览器的版本号. 紧跟 ...

  6. 信息系统实践手记6-JS调用Flex的性能问题一例

    说明:信息系统实践手记系列是系笔者在平时研发中先后遇到的大小的问题,也许朴实和细微,但往往却是经常遇到的问题.笔者对其中比较典型的加以收集,描述,归纳和分享. 摘要:此文描述了笔者接触过的部分信息系统 ...

  7. flex自适应高度内容高度超出容器高度自动出现滚动条的问题

    在容器中设置 flex-grow:2; overflow-y:auto;overflow-x:hidden;容器高度自适应. 内容高度不固定,无法出现滚动条,然后在容器中添加height:0,出现滚动 ...

  8. 在移动端中的flex布局

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

  9. flex学习小结

    接触到flex一个多月了,今天做一个学习小结.如果有知识错误或者意见不同的地方.欢迎交流指教. 画外音:先说一下,我是怎么接触到flex布局的.对于正在学习的童鞋们,我建议大家没事可以逛逛网站,看看人 ...

  10. flex实验总结

    1.父元素 .box{ display:flex; flex-direction: column;//铺满垂直排列 flex-direction: column-reverse;//铺满垂直反向排列 ...

随机推荐

  1. vue自定义轻量级form表单校验

    遇到了form表单提交的需求,找了vue的组件觉得不够灵活,有时间自己写了一个. 调用方法 全局引入注册: import va from 'global/js/va' va.install(Vue); ...

  2. Bomb HDU - 3555

    Bomb HDU - 3555 求1~n中含有49数的个数 #include<bits/stdc++.h> #define LL long long using namespace std ...

  3. 00.continue break return的使用场景

    continue continue 语句跳出本次循环,而break跳出整个循环. continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环. continue语句用在w ...

  4. 取代PHP原生函数的一些扩展包

    前言 虽然程序员无时无刻都在造轮子,但造轮子也有效率之分,用好轮子才能造出好"

  5. copy contents of file with variable number in Matlab

    input : transient.case output: transient_1.case, transient_2.case, transient_3.case ... ************ ...

  6. hdu 5652

    India and China Origins Time Limit: 2000/2000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/ ...

  7. 清北学堂模拟赛d2t1 一道图论神题(god)

    题目描述 LYK有一张无向图G={V,E},这张无向图有n个点m条边组成.并且这是一张带权图,只有点权. LYK想把这个图删干净,它的方法是这样的.每次选择一个点,将它删掉,但删这个点是需要代价的.假 ...

  8. EXt js 学习笔记总结

    1. get . fly. getCmp .getBody .getDoc .getDom..    get-----ExtJs获取节点.dom.提供缓存机制  Ext.Element类是Ext对DO ...

  9. hdu_1272_小希的迷宫_201403091527

    小希的迷宫 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submi ...

  10. 一次MySQL(INNODB存储引擎) 死锁捉虫记

    前言 任何系统不管在什么阶段都需要关注生产环境错误日志,最近几个月内,发现偶尔会出现数据库死锁情况.以前碰到的数据库类错误大部分是SQL语法造成的错误,来到新东家之后才第一次碰到死锁情况,以前是搞游戏 ...