弹性盒子是 CSS3 的一种新的布局模式。,特别适合移动端。
- 弹性盒-容器设置
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>弹性盒</title>
<style>
.box{
width: 500px;
height: 500px;
border: 2px solid black;
margin: 100px auto;
/* 设置弹性盒 */
display: flex;
/*
1.子元素默认横向排列
2.如果子元素是行内元素,则会变成块元素
3.如果只有一个子元素,对其加margin:auto;时,该子元素会水平垂直居中
*/
/* 设置主轴方向 */
flex-direction: row;
/*
row, 横向,从左到右(默认)
column, 纵向,从上到下
row-reverse, 横向反转,从右到左
column-reverse 纵向反转,从下到上
*/
/* 设置主轴排列方式 */
justify-content: flex-start;
/*
flex-start 左对齐(默认)
flex-end 右对齐
center 居中
space-between 两端对齐
space-around 距离环绕
*/
/* 设置侧轴排列方式 */
align-items: flex-start;
/*
flex-start 上对齐(默认)
flex-end 下对齐
center 居中
*/
/* 折行 */
flex-wrap: wrap;
/* 设置折行后,在侧轴方向上的排列方式 */
align-content: space-around;
/*
flex-start
flex-end
center
space-between
space-around
*/
}
.box span{
width: 100px;
height: 100px;
border: 1px dashed red;
}
</style>
</head>
<body>
<div class="box">
<span>1111</span>
<span>2222</span>
<span>3333</span>
<span>4444</span>
<span>5555</span>
<span>6666</span>
<span>7777</span>
<span>8888</span>
<span>9999</span>
<span>0000</span>
</div>
</body>
</html>
- 弹性盒-项目设置
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
*{
margin: 0;
padding: 0;
}
.box{
width: 500px;
height: 500px;
border: 2px solid pink;
margin: 100px auto;
display: flex;
}
.box > div{
width: 100px;
height: 100px;
border: 1px solid pink;
box-sizing: border-box;
}
.d2{
/* 设置弹性元素自身在侧轴方向上的对齐方式。 */
align-self: center;
/*
flex-start
flex-end
center
*/
/* 设置弹性元素自身的排列顺序 */
/* 用整数值来定义排列顺序,数值小的排在前面。可以为负值。 */
order: -1;
/* 设置弹性元素如何分配空间。 */
/* div2占满剩余宽度 */
flex: 1;
}
</style>
</head>
<body>
<div class="box">
<div class="d1">111</div>
<div class="d2">222</div>
<div class="d3">333</div>
</div>
</body>
</html>