弹性盒模型
特别注意在使用弹性盒模型的时候,父元素必须要加display:-webkit-box 或 display:-webkit-inline-box,否则不起作用
-
方向:-webkit-box-orient定义盒模型的布局方向
- horizontal:水平显示
- vertical:垂直方向(默认)
<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content="text/html; charset=utf-8">
<meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>
<title>CSS3弹性盒模型</title>
</head>
<body>
<style>
*{margin:0px;pading:0px;}
.box{width:1000px;margin:200px auto;border:2px solid #ccc;display: -webkit-box;-webkit-box-orient: horizontal;} /*在使用弹性盒模型的时候必须要给父元素加上display:box;否则不会起作用*/
.box div {width:100px;height:100px;background:red;text-align:center;line-height:100px;font-size:24px;color:rgba(0,137,241,0.7);border:10px solid #fff;}
</style>
<div class="box">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
</div>
</body>
</html>
效果图如下:
-
元素排列顺序:-webkit-box-direction:定义元素排列顺序
<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content="text/html; charset=utf-8">
<meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>
<title>CSS3弹性盒模型</title>
</head>
<body>
<style>
*{margin:0px;pading:0px;}
.box{width:1000px;margin:200px auto;border:2px solid #ccc;display: -webkit-box;-webkit-box-orient: horizontal;-webkit-box-direction:reverse;} /*在使用弹性盒模型的时候必须要给父元素加上display:box;否则不会起作用*/
.box div {width:100px;height:100px;background:red;text-align:center;line-height:100px;font-size:24px;color:rgba(0,137,241,0.7);border:10px solid #fff;}
</style>
<div class="box">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
</div>
</body>
</html>
效果图如下:
-
自定义元素顺序:-webkit-box-ordinal-group 设置元素的具体位置
<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content="text/html; charset=utf-8">
<meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>
<title>CSS3弹性盒模型</title>
</head>
<body>
<style>
*{margin:0px;pading:0px;}
.box{width:1000px;margin:200px auto;border:2px solid #ccc;display: -webkit-box;-webkit-box-orient: horizontal;} /*在使用弹性盒模型的时候必须要给父元素加上display:box;否则不会起作用*/
.box div {width:100px;height:100px;background:red;text-align:center;line-height:100px;font-size:24px;color:rgba(0,137,241,0.7);border:10px solid #fff;}
.box div:nth-of-type(1){-webkit-box-ordinal-group:3;}
.box div:nth-of-type(2){-webkit-box-ordinal-group:5;}
.box div:nth-of-type(3){-webkit-box-ordinal-group:4;}
.box div:nth-of-type(4){-webkit-box-ordinal-group:1;}
.box div:nth-of-type(5){-webkit-box-ordinal-group:2;}
</style>
<div class="box">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
</div>
</body>
</html>
效果图
-
自动算宽度:-webkit-box-flex: 设置元素的弹性空间
<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content="text/html; charset=utf-8">
<meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>
<title>CSS3弹性盒模型</title>
</head>
<body>
<style>
*{margin:0px;pading:0px;}
.box{width:1000px;margin:200px auto;border:2px solid #ccc;display: -webkit-box;-webkit-box-orient: horizontal;} /*在使用弹性盒模型的时候必须要给父元素加上display:box;否则不会起作用*/
.box div {height:100px;background:red;text-align:center;line-height:100px;font-size:24px;color:rgba(0,137,241,0.7);border:10px solid #fff;}
.box div:nth-of-type(1){-webkit-box-flex:1;}
.box div:nth-of-type(2){-webkit-box-flex:2;}
.box div:nth-of-type(3){-webkit-box-flex:3;}
.box div:nth-of-type(4){-webkit-box-flex:4;}
.box div:nth-of-type(5){-webkit-box-flex:5;}
</style>
<div class="box">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
</div>
</body>
<script>
</script>
</html>
效果图
-
水平定位:-webkit-box-pack 设置元素的子元素的水平位置
<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content="text/html; charset=utf-8">
<meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>
<title>CSS3弹性盒模型</title>
</head>
<body>
<style>
*{margin:0px;pading:0px;}
.box{width:1000px;height:500px;margin:200px auto;border:2px solid #ccc;display: -webkit-box;-webkit-box-orient: horizontal;-webkit-box-pack: justify;} /*在使用弹性盒模型的时候必须要给父元素加上display:box;否则不会起作用*/
.box div {height:100px;width:100px;background:red;text-align:center;line-height:100px;font-size:24px;color:rgba(0,137,241,0.7);border:10px solid #fff;}
</style>
<div class="box">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
</div>
</body>
<script>
</script>
</html>
效果图
-
垂直定位:-webkit-box-align 设置元素的子元素的垂直位置
<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content="text/html; charset=utf-8">
<meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>
<title>CSS3弹性盒模型</title>
</head>
<body>
<style>
*{margin:0px;pading:0px;}
.box{width:1000px;height:300px;margin:200px auto;border:2px solid #ccc;display: -webkit-box;-webkit-box-orient: horizontal;-webkit-box-align: center;-webkit-box-pack:center;} /*在使用弹性盒模型的时候必须要给父元素加上display:box;否则不会起作用*/
.box div {height:100px;width:100px;background:red;text-align:center;line-height:100px;font-size:24px;color:rgba(0,137,241,0.7);border:10px solid #fff;}
</style>
<div class="box">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
</div>
</body>
</html>
效果图
-
盒子阴影:box-shadow :[inset] x y blur [spread] color
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>盒模型阴影</title>
<style>
.box {width: 100px; height: 100px; margin: 100px; background: red; box-shadow: 0 0 30px 30px #000, inset 0 0 30px yellow;}
</style>
</head>
<body>
<div class="box"></div>
</body>
</html>
效果图
-
倒影只能谷歌内核用:-webkit-box-reflect 设置元素的倒影
- 参数
- direction : above倒影在上方,below倒影在下方,left倒影在左边,right倒影在右边
- 渐变(可选)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>box-reflect 倒影</title>
<style>
img {display: block; margin: 100px auto; -webkit-box-reflect: above 10px -webkit-linear-gradient(bottom, rgba(0, 0, 0, 1) 0, rgba(0, 0, 0, 0) 70%)}
</style>
</head>
<body>
</body>
</html>
####效果图
![box-reflect.jpg](http://upload-images.jianshu.io/upload_images/3709419-11e4b8c99653d799.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
### [resize 自由缩放]()
* resize:both;水平垂直都可以缩放
* horizontai:水平缩放
* vertical:只可以垂直缩放
* [resize必须配合overflow:auto一起使用]()
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>resize 自由缩放</title>
<style>
.box {width: 100px; height: 100px; background: url('images/ppt.gif'); border: 5px solid red; resize: both; overflow: auto;}
</style>
</head>
<body>
<div class="box"></div>
</body>
</html>
##效果图
![自由拖拽类似浏览器.gif](http://upload-images.jianshu.io/upload_images/3709419-86c6a2ec8d82f78d.gif?imageMogr2/auto-orient/strip)
##[CSS3分栏布局]()
* column-width :栏目宽度
* column-count: 栏目列数
* column-gap: 栏目距离
* column-rule:栏目间隔线
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>box-sizing</title>
<style>
.wrap{width: 900px; border: 1px solid #000; font: 14px/28px "宋体"; color: #000; text-indent: 2em;-webkit-column-count:3;-webkit-column-gap: 20px;-webkit-column-rule:2px dashed #ccc;}
</style>
</head>
<body>
<div class="wrap">
<p>按校科研处部署,我社2014年科研工作量统计工作安排如下:1. 申报者按要求如实填写《个人科研工作量计分表(2014)》(附件1)。2. 成果计分方法和科研工作量考核指标请参照《上海外国语大学科研工作量化标准与奖惩办法》(附件2)。成果奖励标准请参照《上海外国语大学优秀科</p>
<p>按校科研处部署,我社2014年科研工作量统计工作安排如下:1. 申报者按要求如实填写《个人科研工作量计分表(2014)》(附件1)。2. 成果计分方法和科研工作量考核指标请参照《上海外国语大学科研工作量化标准与奖惩办法》(附件2)。成果奖励标准请参照《上海外国语大学优秀科</p>
<p>按校科研处部署,我社2014年科研工作量统计工作安排如下:1. 申报者按要求如实填写《个人科研工作量计分表(2014)》(附件1)。2. 成果计分方法和科研工作量考核指标请参照《上海外国语大学科研工作量化标准与奖惩办法》(附件2)。成果奖励标准请参照《上海外国语大学优秀科</p>
<p>按校科研处部署,我社2014年科研工作量统计工作安排如下:1. 申报者按要求如实填写《个人科研工作量计分表(2014)》(附件1)。2. 成果计分方法和科研工作量考核指标请参照《上海外国语大学科研工作量化标准与奖惩办法》(附件2)。成果奖励标准请参照《上海外国语大学优秀科</p>
<p>按校科研处部署,我社2014年科研工作量统计工作安排如下:1. 申报者按要求如实填写《个人科研工作量计分表(2014)》(附件1)。2. 成果计分方法和科研工作量考核指标请参照《上海外国语大学科研工作量化标准与奖惩办法》(附件2)。成果奖励标准请参照《上海外国语大学优秀科</p>
<p>按校科研处部署,我社2014年科研工作量统计工作安排如下:1. 申报者按要求如实填写《个人科研工作量计分表(2014)》(附件1)。2. 成果计分方法和科研工作量考核指标请参照《上海外国语大学科研工作量化标准与奖惩办法》(附件2)。成果奖励标准请参照《上海外国语大学优秀科</p>
<p>按校科研处部署,我社2014年科研工作量统计工作安排如下:1. 申报者按要求如实填写《个人科研工作量计分表(2014)》(附件1)。2. 成果计分方法和科研工作量考核指标请参照《上海外国语大学科研工作量化标准与奖惩办法》(附件2)。成果奖励标准请参照《上海外国语大学优秀科</p>
<p>按校科研处部署,我社2014年科研工作量统计工作安排如下:1. 申报者按要求如实填写《个人科研工作量计分表(2014)》(附件1)。2. 成果计分方法和科研工作量考核指标请参照《上海外国语大学科研工作量化标准与奖惩办法》(附件2)。成果奖励标准请参照《上海外国语大学优秀科</p>
</div>
</body>
</html>
##效果图
![column.jpg](http://upload-images.jianshu.io/upload_images/3709419-f944c81e5ff8e970.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
***
##[总结]()
* box-orient:代表横向还是纵向
* box-direction:代表元素的顺序
* box-ordinal-group:设置元素的具体位置
* box-flex:元素占了多少份
* box-pack:元素的水平位置
* box-align:元素的纵向位置
* box-shadow:元素的阴影
* box-reflect:倒影
* resize:缩放必须配合overflow:auto一起使用
* column-count:自动分成的列数
* column-width:设置的宽度
* column-grap:栏目的距离
* column-rule:栏目间隔线