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+jq创作含苞待放的荷花
Feb 20 HTML / CSS
使用css3实现的windows8开机加载动画
Dec 09 HTML / CSS
利用CSS3的线性渐变linear-gradient制作边框的示例
Jun 02 HTML / CSS
10分钟理解CSS3 FlexBox弹性布局
Dec 20 HTML / CSS
canvas学习笔记之2d画布基础的实现
Feb 21 HTML / CSS
html5 button autofocus 属性介绍及应用
Jan 04 HTML / CSS
使用分层画布来优化HTML5渲染的教程
May 08 HTML / CSS
详解HTML5中ol标签的用法
Sep 08 HTML / CSS
详解html5 canvas常用api总结(二)--绘图API
Dec 14 HTML / CSS
手摸手教你用canvas实现给图片添加平铺水印的实现
Aug 20 HTML / CSS
iframe与window.onload如何使用详解
May 07 HTML / CSS
html5移动端禁止长按图片保存的实现
Apr 20 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 接入微信扫码支付总结(总结篇)
2016/11/03 PHP
解决安装WampServer时提示缺少msvcr110.dll文件的问题
2017/07/09 PHP
JavaScript 新手24条实用建议[TUTS+]
2009/06/21 Javascript
jQery使网页在显示器上居中显示适用于任何分辨率
2014/06/09 Javascript
jquery JSON的解析方式示例介绍
2014/07/27 Javascript
Nodejs如何复制文件
2016/03/09 NodeJs
jQuery实现指定区域外单击关闭指定层的方法【经典】
2016/06/22 Javascript
Listloading.js移动端上拉下拉刷新组件
2016/08/04 Javascript
微信小程序去哪里找 小程序到底如何使用(附小程序名单)
2017/01/09 Javascript
详解RequireJS按需加载样式文件
2017/04/12 Javascript
JS实现的新闻列表自动滚动效果示例
2019/01/30 Javascript
微信小程序合法域名配置方法
2019/05/06 Javascript
微信小程序实现日期格式化和倒计时
2020/11/01 Javascript
turn.js异步加载实现翻书效果
2019/07/25 Javascript
vue element upload实现图片本地预览
2019/08/20 Javascript
微信小程序 拍照或从相册选取图片上传代码实例
2019/08/28 Javascript
js判断鼠标移入移出方向的方法
2020/06/24 Javascript
[02:27]《DAC最前线》之附加赛征程
2015/01/29 DOTA
[01:30:55]VG vs Mineski Supermajor 败者组 BO3 第三场 6.6
2018/06/07 DOTA
用实例说明python的*args和**kwargs用法
2013/11/01 Python
python网络编程之TCP通信实例和socketserver框架使用例子
2014/04/25 Python
python中nan与inf转为特定数字方法示例
2017/05/11 Python
python+opencv实现动态物体识别
2018/01/09 Python
使用python存储网页上的图片实例
2018/05/22 Python
Python3.6简单反射操作示例
2018/06/14 Python
python3+requests接口自动化session操作方法
2018/10/13 Python
python怎么判断模块安装完成
2020/06/19 Python
Python手动或自动协程操作方法解析
2020/06/22 Python
神经网络训练采用gpu设置的方式
2021/03/03 Python
New Era英国官网:美国棒球帽品牌
2018/03/21 全球购物
德国领先的大尺码和超大尺码男装在线零售商:Bigtex
2019/06/22 全球购物
幼儿园教师培训方案
2014/02/04 职场文书
品质主管岗位职责
2014/03/16 职场文书
2014年乡镇民政工作总结
2014/12/02 职场文书
如何利用Python实现n*n螺旋矩阵
2022/01/18 Python
用Python可视化新冠疫情数据
2022/01/18 Python