CSS3实现垂直居中


CSS实现垂直居中的常用方法

  在前端开发过程中,盒子居中是常常用到的。其中 ,居中又可以分为水平居中和垂直居中。水平居中是比较容易的,直接设置元素的margin: 0 auto就可以实现;

但是垂直居中相对来说是比较复杂一些的。下面我们一起来讨论一下实现垂直居中的方法。

HTML代码:
<div class="parent">
    <div class="child"></div>
</div>  

方法一、

.parent {
    width:800px;
    height:500px;
    border:2px solid #000;
    position:relative;
}
.child {
    width:200px;
    height:200px;
    margin: auto;
    position: absolute;
    top: 0; left: 0; bottom: 0; right: 0;
    background-color: red;
} 

方法二、

.parent {
    width:800px;
    height:500px;
    border:2px solid #000;
    display:table-cell;
    vertical-align:middle;
    text-align: center;
}
.child {
    width:200px;
    height:200px;
    display:inline-block;
    background-color: red;
}
方法三、
.parent {
    width:800px;
    height:500px;
    border:2px solid #000;
    display:flex;
    justify-content:center;
    align-items:center;
}
.child {
    width:200px;
    height:200px;
    background-color: red;
}
方法四、
.parent {
    width:800px;
    height:500px;
    border:2px solid #000;
    position:relative;
}
.child {
    width:300px;
    height:200px;
    margin:auto;
    position:absolute;/*设定水平和垂直偏移父元素的50%,再根据实际长度将子元素上左挪回一半大小*/
    left:50%;
    top:50%;
    margin-left: -150px;
    margin-top:-100px;
    background-color: red;
}

  

 

 




 

 


posted @ 2017-06-30 16:51  Keva  阅读(631)  评论(0编辑  收藏  举报