1.常见父项属性
一下6个属性是对父元素设置的
- flex-direction:设置主轴的方向
- justify-content: 设置主轴的子元素排列方式
- flex-wrap:设置子元素是否换行
- align-content:设置侧轴上的子元素排列方式(多行)
- align-items:设置侧轴上的子元素排列方式(单行)
- flex-flow: 复合属性,相当于同时设置了flex-direction和flex-wrap
2.flex-direction设置主轴的方向
- 1.主轴与侧轴
在flex布局中,是分为主轴和侧轴两个方向,同样的叫法有:行和列、x轴和y轴
- 默认主轴方向就是x轴方向,水平向右
- 默认侧轴的方向就是y轴方向,水平向下
2.1.2 属性值
flex-direction 属性决定主轴的方向(即项目的排列方向)
注意:
主轴和侧轴是会变化的,就看flex-direction设置谁为主轴,剩下就是侧轴,而我们的子元素就是跟着主轴来排列的
元素跟着主轴x排列:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
div{
/* 给父级添加flex属性 */
display: flex;
width:800px;
height:300px;
background-color: pink;
/* 默认的主轴式x轴 行 row 那么侧轴就是y轴*/
/* 我们的元素是跟着主轴来排列的 */
flex-direction:row;
}
div span{
width:150px;
height:100px;
background-color: aqua;
}
</style>
</head>
<body>
<div>
<span>1</span>
<span>2</span>
<span>3</span>
</div>
</body>
</html>
把主轴设置为y轴:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
div{
/* 给父级添加flex属性 */
display: flex;
width:800px;
height:300px;
background-color: pink;
/* 默认的主轴式x轴 行 row 那么侧轴就是y轴*/
/* 我们的元素是跟着主轴来排列的 */
/* flex-direction:row; */
/* 简单了解翻转 */
flex-direction:row-reverse;
}
div span{
width:150px;
height:100px;
background-color: aqua;
}
</style>
</head>
<body>
<div>
<span>1</span>
<span>2</span>
<span>3</span>
</div>
</body>
</html>