大盒子内的小盒子常见居中方式
最初盒子样式
大小盒子嵌套关系
<body>
<div class="box1">
<div class="box2">子盒子</div>
</div>
</body>
大盒子样式块
.box1 {
position: relative;
width: 300px;
height: 300px;
background-color: pink;
}
原理图
当前效果图
之后还需要向左移动自身宽度的50%,再向上移动自身高度的50%
1.当子盒子的大小是固定时
可以使用子绝父相,子盒子使用绝对定位,父盒子使用相对定位,再使用margin来实现子盒子的水平垂直居中。
.box2 {
position: absolute;
left: 50%;
top: 50%;
margin-left: -50px;
margin-top: -50px;
width: 100px;
height: 100px;
background-color: yellowgreen;
}
2.当子盒子的大小非固定时
使用子绝父相加位移来完成
.box2 {
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%,-50%);
width: 100px;
height: 100px;
background-color: yellowgreen;
}
还可以使用特殊方法 子绝父相 将四个方位设置0后,margin:auto auto来实现居中
.box2 {
position: absolute;
left: 0;
top: 0;
bottom: 0;
right: 0;
margin: auto auto;
width: 100px;
height: 100px;
background-color: yellowgreen;
}
最终三种方法实现的效果图(即完成大盒子中的小盒子水平垂直居中)
三种方式推荐第二种方式,使用子绝父相加位移来完成大盒子中的小盒子水平垂直居中。
本文若有不当之处,请指正。
发布评论