1.弹性盒子
<style>
.box {
display: flex;
justify-content: center;
align-items: center; /* 单行 */
width: 100px;
height: 100px;
}
</style>
2.flex
<style>
.box {
display: flex;
width: 100px;
height: 100px;
background-color: red;
}
.son {
margin: auto;
background-color: blue;
}
</style>
3.表格单元格table-cell
<style>
.box {
width: 300px;
height: 300px;
background-color: red;
display: table-cell;
text-align: center;
vertical-align: middle;
}
.son {
background-color: skyblue;
display: inline-block;
}
</style>
4.网格grid
<style>
.box {
display: grid;
place-content: center;
width: 300px;
height: 300px;
background-color:red;
}
.son {
background-color: blue;
display: inline-block;
}
</style>
5.grid
<style>
.box {
display: grid;
width: 300px;
height: 300px;
background-color: red;
}
.son {
margin: auto;
background-color: blue;
display: inline-block;
}
</style>
6.伪元素
<style>
.box {
width: 300px;
height: 300px;
background-color: red;
text-align: center;
}
.box::after {
content: '';
line-height: 300px;
}
.son {
background-color: blue;
display: inline-block;
}
</style>
7.
<style>
.box {
width: 200px;
height: 200px;
background-color: orange;
position: relative;
}
.son {
width: 100px;
height: 40px;
position: absolute;
left: 0;
top: 0;
right: 0;
bottom: 0;
margin: auto;
background-color: blue;
}
</style>
8.定位
<style>
.box {
position: relative;
width: 400px;
height: 400px;
background-color: orange;
}
.son {
position: absolute;
transform: translate(-50%, -50%);
top: 50%;
left: 50%;
background-color: skyblue;
}
</style>