方法不唯一,此处只列出七种方式
文章目录
第一种方法:利用margin
前提:父元素和子元素都设置了宽高
给父元素设置border避免外边距合并问题;
margin-top/margin-bottom = (父height-子height)/2;
margin-left/margin-right = (父width-子width)/2或者为auto;
<div class="outer">
<div class="inner">aaa</div>
</div>
.outer {
width: 500px;
height: 500px;
background-color: pink;
border: 1px solid red;
}
.inner {
width: 100px;
height: 200px;
background-color: skyblue;
margin: 150px 200px;
}
第二种方法:利用定位:子绝父相
前提:父元素和子元素都设置了宽高
给父元素设置position:relative;
子元素设置position:absolute
子元素设置偏移量:top、bottom、left、right都为0
子元素设置margin:auto
<div class="outer">
<div class="inner">aaa</div>
</div>
.outer {
width: 500px;
height: 500px;
background-color: pink;
position: relative;
}
.inner {
width: 100px;
height: 200px;
background-color: skyblue;
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
margin: auto;
}</