Flex——弹性布局
今天在做项目时,要一个500*100的页面区域做三个橱窗,尼玛可是恶心死我了!光是计算左右内外边距,左右宽度,就废了一上午时间~~好吧,我承认我的数学老师挂得早!
正在苦逼的列公式,定位图片,浮动文字时,忽然一妹子飘然而至,看到我满纸的加减乘除,立刻投来鄙视的目光,悻悻然道:为何不用弹性布局??!
此刻,一万匹草泥马在心中奔腾,当即拿脑袋砸烂了键盘!尼玛!洒家咋把这东西给忘了呢???!!
于是重新复习了弹性布局,并在此做个总结笔记,以鉴世人!
首先,啥是弹性布局?我理解的是,就是可让网页中的任意元素,附有弹性,能长能缩,以适应页面排版,更能使网页兼容不同分辨率的屏幕。
看例子:

这是两个div,默认是不能显示在一行的,但现在我想让div2移动到右端,怎么做?
最简单的办法是加浮动,d1左浮,d2右浮:

或者,在d1,d2共同的父元素上,加一个display:inline-block;再调整div2靠右浮动,但这都会带来问题,因为只要是浮动,往往会影响页面中的其他元素,比如:浮动元素会影响其父元素高度,以及上外边距溢出溢出的问题,有兴趣的可以看我下一篇关于网页元素浮动的文章,在这里就不解释啦。
不过这些都是还不能算是真正的问题,毕竟都是可以解决的,但这带来的真正问题是复杂的麻烦,问题有时候会很容易解决,但是麻烦解决起来,常常会带来更大的麻烦。
比如,我现在再加一个元素:

我现在想让d1、d2、d3等间隔显示排列在背景条中,怎么办?拿尺子去量?去算?
好吧,这还是三个,可要是30个呢,300个呢,还这么干?
程序员就是怎么猝死的!!
而有了弹性布局,秒秒钟搞定!

看到没?就两行代码!

display:flex;是将3个div的父元素设置为弹性容器,
justify-content:space-between,就是让子元素div两端对齐,每两个项目之间的间隔相等。
现在呢,我不想等距划分了,因为div2比较帅,所以想让它多占一点空间,成为这个样子:

咋办?要用,总宽 - d1(宽) - d3(宽) = d2(宽)?!
呵呵,遇见淘宝那样的页面,你就等着猝死吧!
在这里,还是要用到弹性布局!
只需要在d2里加上一个flex的属性罢了!
看代码:

还是刚才的东西,其他都没动,更没算,只添加了一个flex-grow:1;的样式,搞定!
当然,flex还有其他十几个属性,不过都不常用,用法也都类似,在这里就不一一列举了,感兴趣的可以去查手册,反正我是懒~~
Flex——弹性布局的更多相关文章
- 记一下flex弹性布局
flex弹性布局也越来越广泛的在我们代码中出现了,更加方便我们的布局.自己用了查,查了用,有些还是记不住,俗话说好脑子不如烂笔头,原来都是写在本子上的,很不幸的一次次的想翻的时候总是找不到,还是写博客 ...
- CSS3动画属性和flex弹性布局各个属性
[CSS3动画的使用] 1.声明一个关键帧(动画): @keynames name{ from{} to{} } 每个阶段的写法: ①可以直接使用from-to的写法 ②可以设置0%-100%的写法, ...
- flex弹性布局心得
概述 最近做项目用flex重构了一下网页中的布局,顺便学习了一下flex弹性布局,感觉超级强大,有一些心得,记录下来供以后开发时参考,相信对其他人也有用. 参考资料: Solved by Flexbo ...
- flex弹性布局属性详解!
详细看下flex弹性布局具体属性: flex容器属性详解:flex-direction:row/column:(横排/竖排) 决定元素的排列方向:flex-wrap:nowrap/wrap/wrap- ...
- java基础之Flex弹性布局、JSP错误处理以及Log4J
一.Flex弹性布局 1.产生的比较晚,目前在移动网页开发中可以使用,而且逐渐成为主流. 在桌面网页开发中使用的比较少(主要是桌面浏览器的兼容性问题更加严重) 2.开启方法: 在容器标签上加上 dis ...
- flex弹性布局,好用
一直不太喜欢自己布局前端页面,都是扒别人的页面 ,最近在练习小程序,页面无处可扒,只有自己布局 发现flex弹性布局真好用,布局起来很简单,实现的效果也很好,赞 以后可以自己写一点前端了,哈哈
- flex弹性布局的基本介绍
最近开始做元素排列比较复杂的项目,同时需要各种型号手机的适配,我发现以前所掌握的盒子模型.display.position.float等已经不能满足我的需求了, 于是开始着重学习flex弹性布局并运用 ...
- css进阶之二:flex弹性布局
布局模式是指一个盒子与其兄弟.祖先盒的关系决定其尺寸与位置的算法.css2.1中定义了四种布局模式,分别是块布局.行内布局.表格布局.以及定位布局.css3引入了新的布局模式Flexbox布局,灵活度 ...
- flex弹性布局学习笔记
前言 资料来源于网络,本人只是对此作了一下操作,记录于此以便以后查阅.目的在于梳理自己前端凌乱的知识点. 本文根据 Brian Franco 的一个flexbox.scss库来记录 入职新公司前对移动 ...
- flex弹性布局
Flex 布局教程:语法篇 原文地址:http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html?utm_source=tuicool 作者: ...
随机推荐
- 简单说说NoHTTP
学习NoHttp的原因是由于公司之前做的产品使用的网络请求框架一直都是Volley(为什么使用Volley就不用多说了,最起码是谷歌开发团队自己搞的,总感觉权威一些),可是自从android6.0推出 ...
- 基于fiddler的APP抓包及服务端模拟
在HTTP接口的测试过程中,一般我们会按照如下的步骤进行: 1)测试环境的准备 2)HTTP消息体的构造 3)HTTP消息的发送及断言 如果我们可以拿到项目组的接口文档,并且HTTP后台服务是可以工作 ...
- mac上搭建appium环境过程以及遇到的问题
Mac环境安装appium 一.Java环境 下载java sdk http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downl ...
- 【杂】poj2482 Stars in Your Windows 题面的翻译
原地址:http://poj.org/problem?id=2482 神题,被誉为最浪漫的题目,一位acmer以自己独特的方式写下的殷殷情语 你窗前的星星 纵时光飞逝如梭,也我对你的回忆也永不黯然.从 ...
- 求m和n的最大公约数和最小公倍数
题目:输入两个正整数m和n,求其最大公约数和最小公倍数. 做这道题时,特意去查看了一下什么是最大公约数和最小公倍数. 后来直接去看了求解的思想,相信到企业中不会要求你闭门造车,若已有先例,可以研究之后 ...
- 作为一名JAVA程序员应该有怎样的就业思维
想要成为合格的Java程序员或工程师到底需要具备哪些专业技能,在面试之前到底需要准备哪些东西呢?面试时面试官想了解你的什么专业技能,以下都是一个合格JAVA软件工程师所要具备的. 一.专业技能 1.熟 ...
- MyFirstServlet学习笔记
MyFirstServlet学习笔记 项目文件的结构目录如下,ser包,下设Serv.java是一个servlet文件,Note只是做的笔记,webroot下有login.jsp,WEB-INF下有w ...
- JavaWeb之Filter、Listener
昨天和大家介绍了一下JSON的用法,其实JSON中主要是用来和数据库交互数据的.今天给大家讲解的是Filter和Listener的用法. 一.Listenner监听器 1.1.定义 Javaweb中的 ...
- 来谈一谈------JavaScript对象
1.window常用的属性: ①history ②location 2.history对象的方法: ①back() ②forward() ③go() 3.location对象的属性: ①host() ...
- koa中间件系统原理及koa+orm2实践。
koa是由 Express 原班人马打造的新的web框架.套用其官方的说法:Koa 应用是一个包含一系列中间件 generator 函数的对象. 这些中间件函数基于 request 请求以一个类似于栈 ...