一、什么是flex布局
Flexible Box的缩写,意为”弹性布局”,用来为盒状模型提供最大的灵活性。不管什么容器都可以进行flex布局
二、flex布局中的部分父项属性
1.flex-direction
flex-direction 设置主轴的方向
其中:
row | 默认值从左到右 |
---|---|
row-reverse | 从右到左 |
column | 从上到下 |
column-reverse | 从下到上 |
代码演示:
<style>
div {
display: flex;
width: 800px;
height: 400px;
background-color: pink;
/* 默认的主轴是x轴 行row 那么y就是侧轴 */
/* 我们的元素是跟着主轴来排列的 */
/* flex-direction: row; */
/* 可以把主轴变成y轴,x轴变为了侧轴 */
flex-direction: column;
}
div span {
width: 150px;
height: 100px;
background-color: purple;
margin: 10px;
}
</style>
</head>
<body>
<div>
<span>1</span>
<span>2</span>
<span>3</span>
</div>
</body>
2.justify-content
justify-content 设置主轴的子元素排列方式
其中:
flex-start | 默认值,从头部开始 如果主轴是x轴,则从左到右 |
---|---|
flex-end | 从尾部开始排列 |
center | 在主轴居中对齐(如果主轴是x轴则水平居中) |
space-around | 平分剩余空间 |
space-between | 先两边贴边再平分剩余空间 |
代码演示
<style>
div {
display: flex;
width: 500px;
height: 300px;
background-color: pink;
flex-direction: row;
/* justify-content设置主轴上子元素的排列方式 */
/* justify-content: flex-start; */
/* justify-content: flex-end; */
/* justify-content: center; */
/* justify-content: space-around; */
justify-content: space-between;
}
div span {
width: 150px;
height: 100px;
background-color: purple;
}
</style>
</head>
<body>
<div>
<span>1</span>
<span>2</span>
<span>3</span>
</div>
</body>
其中最重要的是space-between,很多布局都会用到。
3.flex-wrap
flex-wrap 设置子元素是否换行
其中:
nowrap | 默认 不换行 |
---|---|
wrap | 换行 |
代码演示:
div {
display: flex;
width: 600px;
height: 400px;
background-color: pink;
/* justify-content: center; */
/* justify-content: space-between; */
flex-wrap: wrap;
}
div span {
width: 150px;
height: 100px;
background-color: purple;
margin: 10px;
}
</style>
</head>
<body>
<div>
<span>1</span>
<span>2</span>
<span>3</span>
<span>4</span>
<span>5</span>
<span></span>
</div>
</body>
总结
flex布局很简单但一直要注意
1.父项上添加 display:flex
2.不管是行内元素还是块元素都可以使用flex布局