2.center居中排列方式
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
*{
margin: 0px;
padding: 0px;
}
.box{
width: 100%;
/* vh是视口高度 */
height: 100vh;
background-color: skyblue;
display: flex;
/* x轴的排列方式 */
/* center居中排列方式 */
justify-content: center;
}
.inner-box{
width: 50px;
height: 30px;
border: 1px red solid;
}
/* 鼠标移入效果hover */
.inner-box:hover{
color: red;
}
</style>
</head>
<body>
<div class="box">
<div class="inner-box">1</div>
<div class="inner-box">2</div>
<div class="inner-box">3</div>
<div class="inner-box">4</div>
</div>
</body>
</html>
结果:

justify-content: center; 通过这行代码,我们可以看到四个inner-box都在最中间。
3.flex-end末尾排列方式
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
*{
margin: 0px;
padding: 0px;
}
.box{
width: 100%;
/* vh是视口高度 */
height: 100vh;
background-color: skyblue;
display: flex;
/* x轴的排列方式 */
/* flex-end末尾排列方式 */
justify-content: flex-end;
}
.inner-box{
width: 50px;
height: 30px;
border: 1px red solid;
}
/* 鼠标移入效果hover */
.inner-box:hover{
color: red;
}
</style>
</head>
<body>
<div class="box">
<div class="inner-box">1</div>
<div class="inner-box">2</div>
<div class="inner-box">3</div>
<div class="inner-box">4</div>
</div>
</body>
</html>
结果:

justify-content: flex-end; 通过这行代码,我们可以看到四个inner-box都在最右边。
4.space-between均匀排列方式, 首个元素放置于起点, 末尾元素放
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
*{
margin: 0px;
padding: 0px;
}
.box{
width: 100%;
/* vh是视口高度 */
height: 100vh;
background-color: skyblue;
display: flex;
/* x轴的排列方式 */
/* space-between均匀排列方式, 首个元素放置于起点, 末尾元素放置于终点 */
justify-content: space-between;
}
.inner-box{
width: 50px;
height: 30px;
border: 1px red solid;
}
/* 鼠标移入效果hover */
.inner-box:hover{
color: red;
}
</style>
</head>
<body>
<div class="box">
<div class="inner-box">1</div>
<div class="inner-box">2</div>
<div class="inner-box">3</div>
<div class="inner-box">4</div>
</div>
</body>
</html>
结果:

justify-content: space-between; 通过这行代码,我们可以看到四个inner-box的中间间隔的距离一样, 而且第一个inner-box贴在浏览器的最左边, 第四个inner-box贴在浏览器的最右边。
5.space-evenly均匀排列方式, 每个元素之间的间隔相等
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
*{
margin: 0px;
padding: 0px;
}
.box{
width: 100%;
/* vh是视口高度 */
height: 100vh;
background-color: skyblue;
display: flex;
/* x轴的排列方式 */
/* space-evenly均匀排列方式, 每个元素之间的间隔相等 */
justify-content: space-evenly;
}
.inner-box{
width: 50px;
height: 30px;
border: 1px red solid;
}
/* 鼠标移入效果hover */
.inner-box:hover{
color: red;
}
</style>
</head>
<body>
<div class="box">
<div class="inner-box">1</div>
<div class="inner-box">2</div>
<div class="inner-box">3</div>
<div class="inner-box">4</div>
</div>
</body>
</html>
结果:

justify-content: space-evenly; 通过这行代码,我们可以看到四个inner-box的中间间隔的距离一样, 而且第一个inner-box贴在浏览器的最左边, 第四个inner-box贴在浏览器的最右边, 但和justify-content: space-between; 的区别是, justify-content: space-evenly; 结果出来第一个和最后一个box-inner没有贴在浏览器旁边, 而是在浏览器中间。
6.space-around均匀排列方式, 每个元素周围分配相同的空间
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
*{
margin: 0px;
padding: 0px;
}
.box{
width: 100%;
/* vh是视口高度 */
height: 100vh;
background-color: skyblue;
display: flex;
/* x轴的排列方式 */
/* space-around均匀排列方式, 每个元素周围分配相同的空间 */
justify-content: space-around;
}
.inner-box{
width: 50px;
height: 30px;
border: 1px red solid;
}
/* 鼠标移入效果hover */
.inner-box:hover{
color: red;
}
</style>
</head>
<body>
<div class="box">
<div class="inner-box">1</div>
<div class="inner-box">2</div>
<div class="inner-box">3</div>
<div class="inner-box">4</div>
</div>
</body>
</html>
结果:

justify-content: space-around; 的效果, 在图中, 已用红色线条展示出来了。均匀排列方式, 每个元素周围分配相同的空间!
y轴的排列方式用到的属性:
align-items: 属性值;
以y轴为排列方式, 通常的属性值有:
1.start(或flex-start)默认排列方式, 元素位于容器的起始位置
2.center中间排列方式, 元素位于容器的中心
3.end(或flex-end)末尾排列方式, 元素位于容器的末尾位置
1.start(或flex-start)默认排列方式, 元素位于容器的起始位置
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
*{
margin: 0px;
padding: 0px;
}
.box{
width: 100%;
/* vh是视口高度 */
height: 100vh;
background-color: skyblue;
display: flex;
/* x轴的排列方式 */
/* center居中排列方式 */
justify-content: center;
/* y轴的排列方式 */
/* start(或flex-start)默认排列方式, 元素位于容器的起始位置 */
align-items: flex-start;
}
.inner-box{
width: 50px;
height: 30px;
border: 1px red solid;
}
/* 鼠标移入效果hover */
.inner-box:hover{
color: red;
}
</style>
</head>
<body>
<div class="box">
<div class="inner-box">1</div>
<div class="inner-box">2</div>
<div class="inner-box">3</div>
<div class="inner-box">4</div>
</div>
</body>
</html>
结果:

align-items: flex-start; 这个属性的设置让四个inner-box在浏览器的最上方。
2.center中间排列方式, 元素位于容器的中心
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
*{
margin: 0px;
padding: 0px;
}
.box{
width: 100%;
/* vh是视口高度 */
height: 100vh;
background-color: skyblue;
display: flex;
/* x轴的排列方式 */
/* center居中排列方式 */
justify-content: center;
/* y轴的排列方式 */
/* center中间排列方式, 元素位于容器的中心 */
align-items: center;
}
.inner-box{
width: 50px;
height: 30px;
border: 1px red solid;
}
/* 鼠标移入效果hover */
.inner-box:hover{
color: red;
}
</style>
</head>
<body>
<div class="box">
<div class="inner-box">1</div>
<div class="inner-box">2</div>
<div class="inner-box">3</div>
<div class="inner-box">4</div>
</div>
</body>
</html>
结果:

align-items: center;这个属性的设置让四个inner-box在浏览器的正中间。
3.end(或flex-end)末尾排列方式, 元素位于容器的末尾位置
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
*{
margin: 0px;
padding: 0px;
}
.box{
width: 100%;
/* vh是视口高度 */
height: 100vh;
background-color: skyblue;
display: flex;
/* x轴的排列方式 */
/* flex-end末尾排列方式 */
justify-content: center;
/* y轴的排列方式 */
/* end(或flex-end)末尾排列方式, 元素位于容器的末尾位置 */
align-items: flex-end;
}
.inner-box{
width: 50px;
height: 30px;
border: 1px red solid;
}
/* 鼠标移入效果hover */
.inner-box:hover{
color: red;
}
</style>
</head>
<body>
<div class="box">
<div class="inner-box">1</div>
<div class="inner-box">2</div>
<div class="inner-box">3</div>
<div class="inner-box">4</div>
</div>
</body>
</html>
结果:

align-items: flex-end; 这个属性的设置让四个inner-box在浏览器的最下方。
常见的有:
1.block(块级元素)
2.inline(行内元素)
1.block(块级元素)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
div{
height: 50px;
background-color: red;
/* 块级元素(默认), 占一整行空间 */
display: block;
}
</style>
</head>
<body>
<!-- span, 一左一右(行内元素), 都是在一行里面排列的(左右排列), 但不能调整大小 -->
<span>我是文字</span>
<span>我是文字</span>
<!-- div一般默认都是块级元素, 块级元素, 都是占用一整行空间的, 但是可以挑战大小 -->
<div>我是div</div>
<div>我是div</div>
</body>
</html>
结果:

我们可以看到有两个红色的方框, 以上下排列, 因为div的display属性默认值是block, 块级元素, 是占用一整行空间的, 所以第二个div会跟在第一个div下面
2.inline(行内元素)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
div{
height: 50px;
background-color: red;
/* 行内元素, 左右排列, 都在同一行 */
display: inline;
}
</style>
</head>
<body>
<!-- span, 一左一右(行内元素), 都是在一行里面排列的(左右排列), 但不能调整大小 -->
<span>我是文字</span>
<span>我是文字</span>
<!-- div一般默认都是块级元素, 块级元素, 都是占用一整行空间的, 但是可以挑战大小, 不过我们在这里把div设置成了inline(行内元素) -->
<div>我是div</div>
<div>我是div</div>
</body>
</html>
结果:

我们可以看到有两个红色的方框, 以左右排列, 因为div的display属性默认值是inline, 行内元素, 所有的元素都在一行空间里面, 所以第二个div会跟在第一个div右边(左右排列)
比如:
/* 鼠标移入效果hover */
.inner-box:hover{
color: red;
}

当我鼠标指在方框上面的时候, 方框里面的文字, 会变色
当我们鼠标离开方框的时候, 方框里面的文字, 又会变为原来的颜色。
实战:
实现以下界面:

先尝试着自己做下, 只要吧网站里面的界面效果做出来就行哦, 不一定要和图片里面的一模一样哦。
由于字数的原因, 答案这里写不下了, 给大家带来了不便, 敬请谅解!!!