当下各种手机,平板尺寸不一,如果盒模型只能固定尺寸,不能随意压缩,将不能很好的迎合这个时代。所以css3推出了新的盒模型——弹性盒子模型(Flexible Box Model)。

  弹性盒模型可以水平布局,可以垂直布局,还可以调换顺序,可以设置不等的百分比等。

1.弹性盒子column分栏

 <h2>1.弹性盒子column分栏</h2>
<div class="freebox">
<img src="data:image/moon.jpg" alt="天宫二号" /> 9月15日晚10点04分,八月十五中秋节夜晚,甘肃酒泉,天宫二号飞行器发射升空。在酒泉卫星发射中心,一轮满月周围惊现一圈月晕,这为即将升空的火箭背景加分不少。(图片来源:东方IC)
<p>
 这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻.
</p>
<p>
 这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻,这是一段新闻.
</p>
</div>
 /*弹性盒子分栏*/

 .freebox {
-webkit-column-count:;
-webkit-column-rule-style: dotted;
-webkit-column-gap: 30px;
-moz-column-count:;/*兼容火狐浏览器*/
-moz-column-rule-style: dotted;
-moz-column-gap: 30px;
column-count:;/*兼容原生css*/
column-rule-style: dotted;
column-gap: 30px;
margin: 10px auto;
} div img {
width: 320px;
height: 200px;
} div p {
text-indent: 30px;
}

效果:

  这个方法虽然非常好用,一句代码就能实现完美分栏,但是兼容性不佳,火狐,谷歌等浏览器都还处于试验阶段。

了解即可,不宜过分依赖,下面几种方法一样。

2.旧版弹性盒子居中布局

 <!-- 旧版弹性盒子居中布局 -->
<h2>2.旧版弹性盒子居中布局</h2>
<div class="centerimg">
<img src="data:image/moon.jpg" alt="天宫二号" />
</div>
 /*旧版弹性盒子居中布局*/

 .centerimg {
width: 600px;
height: 400px;
margin: 10px auto;
display: -webkit-box;
display: -moz-box;
display: box;
-webkit-box-pack: center;
-moz-box-pack: center;
box-pack: center;
-webkit-box-align: center;
-moz-box-align: center;
box-align: center;
background: #a7ffa7;
}

效果:

3.新版弹性盒子排序

 <!-- 新版弹性盒子排序 -->
<h2>3.新版弹性盒子排序</h2>
<div class="contant_row">
<div class="first">
1号盒子排第三(-webkit-order:3)
</div>
<div class="second">
2号盒子排第一(-webkit-order:1)
</div>
<div class="third">
3号盒子排第二(-webkit-order:2)
</div>
</div>
<div class="contant_column">
<div class="first">
1号盒子排第三(-webkit-order:3)
</div>
<div class="second">
2号盒子排第一(-webkit-order:1)
</div>
<div class="third">
3号盒子排第二(-webkit-order:2)
</div>
</div>
 /*新版弹性盒子排序*/

 .contant_row {
width: 600px;
height: 200px;
margin: 10px auto;
display: -webkit-flex;
display: flex;
-webkit-flex-direction: row;
-moz-flex-direction: row;
flex-direction: row;
border: 1px solid #f00;
} .contant_column {
width: 600px;
height: 200px;
margin: 10px auto;
display: -webkit-flex;
display: flex;
-webkit-flex-direction: column;
-moz-flex-direction: column;
flex-direction: column;
border: 1px solid #f00;
} .first {
width: 100px;
height: 100px;
-webkit-flex:;
-moz-flex:;
flex:;
-webkit-order:;
-moz-order:;
order:;
color: #fff;
background: red;
} .second {
width: 100px;
height: 100px;
-webkit-flex:;
-moz-flex:;
flex:;
-webkit-order:;
-moz-order:;
order:;
color: #fff;
background: green;
} .third {
width: 100px;
height: 200px;
-webkit-flex:;
-moz-flex:;
flex:;
-webkit-order:;
-moz-order:;
order:;
color: #fff;
background: blue;
}

效果:

css3弹性盒子模型的更多相关文章

  1. css3弹性盒子模型之box-flex

    css3弹性盒子模型之box-flex 浏览器支持 目前没有浏览器支持 box-flex 属性. Firefox 支持替代的 -moz-box-flex 属性. Safari.Opera 以及 Chr ...

  2. css3弹性盒子模型——回顾。

    1.box-flex属性规定框的子元素是否可伸缩其尺寸. 父元素必须要声明display:box;子元素才可以用box-flex. 语法:box-flex:value; 示例: <style&g ...

  3. CSS3中的弹性盒子模型

    介绍 在css2当中,存在标准模式下的盒子模型和IE下的怪异盒子模型.这两种方案表示的是一种盒子模型的渲染模式.而在css3当中,新增加了弹性盒子模型,弹性盒子模型是一种新增加的强大的.灵活的布局方案 ...

  4. CSS3弹性盒模型flexbox布局基础版

    原文链接:http://caibaojian.com/using-flexbox.html 最近看了社区上的一些关于flexbox的很多文章,感觉都没有我这篇文章实在,最重要的兼容性问题好多人都没有提 ...

  5. css3基础教程:CSS3弹性盒模型

    今天给大家分享一篇关于CSS3基础教程 文章,主要是讲CSS3弹性盒模型.弹性布局的主要思想是让容器有能力来改变项目的宽度和高度,以填满可用空间(主要是为了容纳所有类型的显示设备和屏幕尺寸)的能力. ...

  6. CSS3弹性盒模型布局模块介绍

    来源:Robert’s talk原文:http://robertnyman.com/2010/12/02/css3-flexible-box-layout-module-aka-flex-box-in ...

  7. flexbox弹性盒子模型

    这几天在做移动端的web开发,遇到了一些问题,之前没有折腾过这方面的东西,这次好好吸收下 css3的flexbox--弹性盒子模型,这个盒模型决定了一个盒子在其他盒子中的分布方式及如何处理可用的空间. ...

  8. CSS box-flex属性,然后弹性盒子模型简介

    今天做项目的时候发现一个css3的新属性flex 一.什么是flex 它的作用是能够按照设置好的规则来排列容器内的项目,而不必去计算每一个项目的宽度和边距.甚至是在容器的大小发生改变的时候,都可以重新 ...

  9. CSS box-flex属性,然后弹性盒子模型简介(转)

    一.淡淡的开头语 昨天趁着不想工作的时间间隙闲逛24ways,在My CSS Wish List一文中,见到了个新鲜的CSS属性,就是题目中的box-flex,以前没有见过,顿生疑惑,不知是骡子还是马 ...

随机推荐

  1. 第二个Sprint冲刺事后诸葛亮报告

    用户反馈:计时的填空题难度过大,计时选择题的画面太亮. 用户数量:4 团队改进建议:bug有点多 工作: 主界面 试卷题,是整合以前的内容的 选择题:也是整合以前功能的 初级的 计时题 1.每个成员第 ...

  2. 用javascript判断一个html元素是否存在的五种方法:

    1. 判断表单元素是否存在(一) if("periodPerMonth" in document.theForm){ return true; }else{ return fals ...

  3. C++中的初始化

    C++中的RAII机制指明”对象创建时通过构造函数进行初始化,析构时通过析构函数释放资源”,但实际中因类无构造函数时编译器将自动合成一个默认构造函数,该构造函数只服务于自身编译器构造需要而不负责对象成 ...

  4. 解析HTTP协议六种请求方法,get,head,put,delete,post有什么区别

    GET: 请求指定的页面信息,并返回实体主体.HEAD: 只请求页面的首部.POST: 请求服务器接受所指定的文档作为对所标识的URI的新的从属实体.PUT: 从客户端向服务器传送的数据取代指定的文档 ...

  5. win10 64bits信捷触摸屏download usb口驱动程序的安装

    [问题描述] win10 64bits,信捷触摸屏开发软件,下载的时候需要安装驱动程序. 用的以前的win7 64bits的驱动程序,直接双击安装,显示无法操作注册表,需要管理员模式. 使用管理员权限 ...

  6. 基于MVC4+EasyUI的Web开发框架形成之旅--框架总体界面介绍

    在前面介绍了一些关于最新基于MVC4+EasyUI的Web开发框架文章,虽然Web开发框架的相关技术文章会随着技术的探讨一直写下去,不过这个系列的文章,到这里做一个总结,展示一下整体基于MVC4+Ea ...

  7. eclipse 使用(一)单步调试

    昨天终于将取数据的流程走通了.但是没有成功获得数据.原因是,把服务器中的数据库还原到了本地.而测试数据是写到了本地.把数据给覆盖了.早上来了之后,赶紧在服务器上把数据弄了一下. 之后开始跑代码. 项目 ...

  8. git秘钥配置--转

    git是分布式的代码管理工具,远程的代码管理是基于ssh的,所以要使用远程的git则需要ssh的配置.github的ssh配置如下:一 .设置git的user name和email:$ git con ...

  9. 各种数据分析图demo

    极地蛛网图:http://www.hcharts.cn/demo/index.php?p=61 各种数据分析图demo: http://www.hcharts.cn/demo/index.php?p= ...

  10. google protocol buffer 使用说明

    一:编译源码 下载地址:http://code.google.com/p/protobuf/downloads/list 下载后,根据编译说明进行编译. windows 平台,直接打开msvc中的工程 ...