css3弹性盒模型实例介绍


Posted in HTML / CSS onMay 27, 2013

Css3引入了新的盒模型——弹性盒模型,该模型决定一个盒子在其他盒子中的分布方式以及如何处理可用的空间。这与XUL(火狐使用的用户交互语言)相似,其它语言也使用相同的盒模型,如XAML 、GladeXML。使用该模型,可以很轻松的创建自适应浏览器窗口的流动布局或自适应字体大小的弹性布局。本文的例子使用以下的HTML代码:

复制代码
代码如下:

<body>
<div id="box1">1</div>
<div id="box2">2</div>
<div id="box3">3</div>
</body>

传统的盒模型基于HTML流在垂直方向上排列盒子。使用弹性盒模型可以规定特定的顺序,也可以反转之。要开启弹性盒模型,只需设置拥有子盒子的盒子的display的属性值为box(或inline-box)即可。
display: box;
水平或垂直分布
“box-orient”定义分布的坐标轴:vertical和horizional。这两个值定义盒子如何显示,
复制代码
代码如下:

body{
display: box;
box-orient: horizontal;
}

css3弹性盒模型实例介绍 
反向分布
“box-direction”可以设置盒子出现的顺序。默认情况下,只需定义分布坐标轴——box随html流分布。如果为水平坐标轴,则从左到右分布;垂直坐标轴则从上到下分布。定义“box-direction”的属性值为“reverse”,则反转盒子的排列顺序。
复制代码
代码如下:

body {
display: box;
box-orient: vertical;
box-direction: reverse;
}

css3弹性盒模型实例介绍
具体分布
属性“box-ordinal-group”定义盒子分布的顺序。可以随意的控制其分布顺序。这些组以一个从“1”开始的数字定义,盒模型将首先分布这些组,所有这些盒子将在每个组中。分布将从小到大排列。
复制代码
代码如下:

body {
display: box;
box-orient: vertical;
box-direction : reverse;
}
#box1 {box-flex:1;box-ordinal-group: 2;}
#box2 {box-flex:2;box-ordinal-group: 2;}
#box3 {box-flex:2;box-ordinal-group: 1;}

盒子尺寸
默认情况下,盒子并不具有弹性,如果box-flex的属性值至少为1时,则变得富有弹性。box-flex如何对父容器的宽度进行划分,三个子块分别设置了1、2、2,也就是把这个父容器分成5份,分别占据了父结构宽度的1/5(100px)、2/5(200px)、2/5(200px)。如果盒子不具有弹性,它将尽可能的宽使其内容可见,且没有任何溢出,其大小由“width”和“height”来决定(或min-height、min-width、max-width、max-height)。
HTML / CSS 相关文章推荐
css3中新增的样式使用示例附效果图
Aug 19 HTML / CSS
CSS3条纹背景制作的实战攻略
May 31 HTML / CSS
css3+伪元素实现鼠标移入时下划线向两边展开的效果
Apr 25 HTML / CSS
浅谈css3中calc在less编译时被计算的解决办法
Dec 04 HTML / CSS
CSS3实现多样的边框效果
May 04 HTML / CSS
CSS3 实现弹跳的小球动画
Oct 26 HTML / CSS
用HTML5实现网站在windows8中贴靠的方法
Apr 21 HTML / CSS
HTML5 Video标签的属性、方法和事件汇总介绍
Apr 24 HTML / CSS
有关HTML5中背景音乐的自动播放功能
Oct 16 HTML / CSS
用canvas做一个DVD待机动画的实现代码
Apr 12 HTML / CSS
HTML5 背景的显示区域实现
Jul 09 HTML / CSS
网站性能延迟加载图像的五种技巧(小结)
Aug 13 HTML / CSS
深入CSS3 动画效果的总结详解
May 09 #HTML / CSS
基于CSS3特效之动画:animation的应用
May 09 #HTML / CSS
纯CSS3实现手风琴风格菜单具体步骤
May 06 #HTML / CSS
CSS3——齿轮转动关键代码
May 02 #HTML / CSS
如何利用CSS3制作3D效果文字具体实现样式
May 02 #HTML / CSS
使用JS+CSS3技术:让你的名字动起来
Apr 27 #HTML / CSS
CSS3 绘制BMW logo实的现代码
Apr 25 #HTML / CSS
You might like
PHP与C#分别格式化文件大小的代码
2011/05/14 PHP
如何让CI框架支持service层
2014/10/29 PHP
PHP中addslashes与mysql_escape_string的区别分析
2016/04/25 PHP
PHP unset函数原理及使用方法解析
2020/08/14 PHP
getElementByIdx_x js自定义getElementById函数
2012/01/24 Javascript
js阻止默认事件与js阻止事件冒泡示例分享 js阻止冒泡事件
2014/01/27 Javascript
谈谈JavaScript异步函数发展历程
2015/09/29 Javascript
深入理解JS addLoadEvent函数
2016/05/20 Javascript
ES6中Array.find()和findIndex()函数的用法详解
2017/09/16 Javascript
Angular实现的自定义模糊查询、排序及三角箭头标注功能示例
2017/12/28 Javascript
vue自定义指令directive实例详解
2018/01/17 Javascript
在Vue中使用highCharts绘制3d饼图的方法
2018/02/08 Javascript
angularJS实现动态添加,删除div方法
2018/02/27 Javascript
vue实现城市列表选择功能
2018/07/16 Javascript
深入理解NodeJS 多进程和集群
2018/10/17 NodeJs
详解Vue.js和layui日期控件冲突问题解决办法
2019/07/25 Javascript
解决layer 动态加载select 失效的问题
2019/09/18 Javascript
ng-alain的sf如何自定义部件的流程
2020/06/12 Javascript
[01:08:32]DOTA2-DPC中国联赛 正赛 DLG vs PHOENIX BO3 第二场 1月18日
2021/03/11 DOTA
在Django框架中伪造捕捉到的URLconf值的方法
2015/07/18 Python
python在不同层级目录import模块的方法
2016/01/31 Python
python3.5 tkinter实现页面跳转
2018/01/30 Python
用Python写一段用户登录的程序代码
2018/04/22 Python
Django 多环境配置详解
2019/05/14 Python
利用python numpy+matplotlib绘制股票k线图的方法
2019/06/26 Python
python网络编程:socketserver的基本使用方法实例分析
2020/04/09 Python
Pythonic版二分查找实现过程原理解析
2020/08/11 Python
CSS3为背景图设置遮罩并解决遮罩样式继承问题
2020/06/22 HTML / CSS
四风批评与自我批评范文
2014/10/14 职场文书
2015元旦晚会主持词(开场白+结束语)
2014/12/14 职场文书
原告代理词范文
2015/05/25 职场文书
如何在centos上使用yum安装rabbitmq-server
2021/03/31 Servers
Pytorch 统计模型参数量的操作 param.numel()
2021/05/13 Python
Python机器学习应用之工业蒸汽数据分析篇详解
2022/01/18 Python
java objectUtils 使用可能会出现的问题
2022/02/28 Java/Android
Python内置的数据类型及使用方法
2022/04/13 Python