CSS3弹性盒模型

弹性盒模型

特别注意在使用弹性盒模型的时候,父元素必须要加display:-webkit-box 或 display:-webkit-inline-box,否则不起作用

<!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>

效果图如下:

2017-05-05_114601.jpg
<!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>

效果图如下:

2017-05-05_115526.jpg
<!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>

效果图

2017-05-05_140952.jpg
<!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>

效果图

flex.jpg
<!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>

效果图

box-pack.jpg
<!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-align.jpg
<!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>

效果图

box-shadow.jpg
  • 倒影只能谷歌内核用:-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:栏目间隔线

推荐阅读更多精彩内容