最近做的项目因为对浏览器的兼容要求是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. JAVA学习总结-基础语法

    /** * 这篇文章供自己学习JAVA总结回顾使用 * 主要借鉴了马士兵老师的视频进行总结 * @author Kingram */ 标识符的概念和命名规则 JAVA常量---不可变的变量 程序的执行 ...

  2. (ccf)201709-4 通信网络

    #include<iostream> #include<memory.h> #include<stack> #include<string> #incl ...

  3. Python网络爬虫之Scrapy框架(CrawlSpider)

    目录 Python网络爬虫之Scrapy框架(CrawlSpider) CrawlSpider使用 爬取糗事百科糗图板块的所有页码数据 Python网络爬虫之Scrapy框架(CrawlSpider) ...

  4. 第三节:初识pandas之DataFrame(上)

    DataFrame是Python中Pandas库中的一种数据结构,它类似excel,是一种二维表.

  5. http长链接问题

    http://www.ibm.com/developerworks/cn/web/wa-lo-comet/

  6. ansible ad-hoc 参考

    # 检查主机连接 # ansible test -m ping # 执行远程命令 # ansible test -m command -a 'uptime' # 执行主控端脚本 # ansible t ...

  7. Awesome Python(中文对照)

    python中文资源大全:https://github.com/jobbole/awesome-python-cn A curated list of awesome Python framework ...

  8. 清北学堂模拟赛d7t1 消失的数字

    题目描述 现在,我的手上有 n 个数字,分别是 a1; a2; a3; :::; an.我现在需要删除其中的 k 个数字.当然我不希望随随便便删除,我希望删除 k个数字之后,剩下的 n - k 个数中 ...

  9. jQuery WEI----DIV+CSS样式li自动适应高度,自动换行,横向排列

    设置相关样式即可,按照需求自己修改样式,Demo代码如下: <li style="display:inline;;line-height:24px;height:auto;word-b ...

  10. ZooKeeper教程资源收集(简介/原理/示例/解决方案)

    菩提树下的杨过: ZooKeeper 笔记(1) 安装部署及hello world ZooKeeper 笔记(2) 监听数据变化 ZooKeeper 笔记(3) 实战应用之[统一配置管理] ZooKe ...