美文网首页Web前端之路让前端飞程序员
CSS实现元素垂直居中若干方法

CSS实现元素垂直居中若干方法

作者: 提小莫 | 来源:发表于2017-10-29 09:55 被阅读64次

    CSS元素垂直居中一直都是一个让人头疼的问题,这里总结了4种方法,当然通过改变定位可以有6种甚至更多。

    1.position配合margin

    这个基本可以说是烂大街的方法了,好处就是兼容性好,直接上代码。

    .content{

    position:absolute;

    width:550px;

    height:364px;

    top:50%;

    left:50%;

    margin-left:-275px;

    margin-top:-182px;

    background:url("images/love.jpg");

    }

    2.position配合margin改进

    IE6-9不兼容,使用CSS3函数calc()

    .content{

    position:absolute;

    top: calc(50% -182px);    // top移动的距离其实就是(总高度-容器高度)/2,有没有觉得这个思路很酷?

    left: calc(50% -275px);  

    width:550px;

    height:364px;

    background:url("images/love.jpg");

    }

    3.position配合transform(对于不定宽高容器同样适用)

    同样还是不支持IE6-IE9,因为transform为CSS3新属性。

    .content{

    position:absolute;

    top:50%;

    left:50%;

    width:550px;

    height:364px;   

    transform:translate(-50%,-50%);

    background:url("images/love.jpg");

    }

    4.flex配合margin  (对于不定宽高容器同样适用)

    同样还是不支持IE6-IE9,因为flex为CSS3新属性。

    body{   //父元素

    display:flex;

    height:500px;

    }

    .content{  //子元素

    margin:auto;

    background:url("images/love.jpg");

    }

    相关文章

      网友评论

        本文标题:CSS实现元素垂直居中若干方法

        本文链接:https://www.haomeiwen.com/subject/darkpxtx.html