水平垂直居中常见方式总结

html结构为:

<div class="parent">
    <div class="child"></div>
</div>

 

(1)父元素相对定位,子元素关键在于设置为绝对定位,margin:auto

.parent{
    width:400px;
    height:400px;
    background:#afa;
    position:relative;
}
.child{
    position:absolute;
    left:0;
    bottom:0;
    right:0;
    top:0;
    margin:auto;
    background:yellow;
    width:100px;
    height:100px;
}

(2)父元素相对定位,子元素绝对定位,且设置transform:translate(-50%,-50%)

.parent{
    width:400px;
    height:400px;
    background:#afa;
    position:relative;
}
.child{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    background:yellow;
    width:100px;
    height:100px;
}

(3)父元素设置为display:flex;justify-content:center;align-items:center

.parent{
    width:400px;
    height:400px;
    display:flex;
    justify-content:center;
    align-items:center;
    background:#afa;
}
.child{
    width:100px;
    height:100px;
    background:yellow;
}

 (4)设置父元素display:table-cell;text-align:center;vertical-align:center;子元素:display:inline-block;

.parent{
    display:table-cell;
    width:400px;
    height:400px;
    background:#afa;
    text-align:center;
    vertical-align: middle;
}
.child{
    display:inline-block;
    width:100px;
    height:100px;
    background:yellow;
}

 

                                                 

posted on 2016-09-19 23:23  木槿惜年  阅读(133)  评论(0编辑  收藏  举报