CSS水平垂直居中

水平垂直居中的布局解决方案有很多,本文仅仅列出三种。

在浏览器里的显示效果:

第一种:利用flex来布局,也是最方便的方式:

.container{
    width: 400px;
    height: 300px;
    background: blue;
    display: flex;
    justify-content: center;
    align-items: center;
}
.center{
    width: 200px;
    height:  100px;
    background: green;
}

第二种:绝对定位加CSS3的2D转换的方式。

.container{
    width: 400px;
    height: 300px;
    background: blue;
    position: relative;
}
.center{
    width: 200px;
    height:  100px;
    background: green;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
}

第三种:绝对定位并使四个方向上均为0加margin:auto;具体代码如下:

.container{
     400px;
    height: 300px;
    background: blue;
    position: relative;
}
.center{
     200px;
    height:  100px;
    background: green;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

以上三种方案的HTML部分:

<section class="container">
    <div class="center"></div>
</section>
原文地址:https://www.cnblogs.com/PeriHe/p/8278504.html