如何使DIV垂直居中

这里就整理一下如何使div居中吧!http://www.cnblogs.com/dojo-lzz/p/4419596.html

① 对div添加:
table-cell需要有一个父级div1,一个子集div2,子集的子集div3即:

<div class="div1">
    <div class="div2">
        <div class="div2">
        </div>
    </div>
</div>

css样式:

.div1{
    display:table;
}
.div2{
    display:table-cell;
    vertical-align:middle;
}
.div3{
    display:block;
}

② ????当width、height的单位是%的时候,由于继承关系,可以设置

margin:50% 0 0 0;//这里的百分比是按照父级标签的height算的。

③如果要让整个div在他的父级居中,可以对div设置:(兼容性最好!)

position:relative;//或者absolute,根据情况选择
top:50%;
left:50%;
margin: -(height/2)px 0 0 -(width/2)px;

④flex(将来的主流)

<div class="div1">
    <div class="div2">
    </div>
</div>

css样式

.div1{
    display:flex;
    height:100%;
    justify-content:center;
    align-items:center;
}
.div2{
    width:200px;
    height:200px;
    border:4px #000 solid;
}

⑤inline-block

  • absolute和inline-block都具有包裹性,不在自适应width

    div{

    display:inline-block;
    

    }