css实现任意元素水平垂直居中

要求: 元素尺寸改变, 无需修改css样式

center.png

html结构


<div class="container">
    <div>
        我不知道我的宽度和高是多少,我要实现水平垂直居中。
    </div>  
</div>

方案一: flex布局

.container{
    display: flex;
    justify-content: center; /*子元素水平居中*/
    align-items: center; /*子元素垂直居中*/
    height: 600px;
    border:1px solid red;
}
.container>div{
    text-align: center;
    width: 500px;
    height: 300px;
    background: orange;
    color: #fff;
}

方案二 : transform:translate(-50%,-50%);

.container{
    position: relative;
    height: 600px;
    border:1px solid red;
}
.container>div{
    position: absolute;
    left:50%;
    top:50%;
    text-align: center;
    background: orange;
    color: #fff;
    width: 500px;
    height: 300px;
    transform:translate(-50%,-50%); 
}

方案三

.container{
    position:relative;
    border:1px solid red;
    height: 600px;
}
.container>div{
    position:absolute;
    background: orange;
    text-align: center;
    width: 500px;
    height: 300px;
    margin:auto;
    top:0;
    bottom:0;
    left:0;
    right:0;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 收听音频,戳链接,旧号itclan已暂停使用,欢迎关注微信itclanCoder公众号可收听更多音频 前言 关于网...
    itclanCoder阅读 12,530评论 3 30
  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    wzhiq896阅读 5,800评论 0 2
  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    love2013阅读 6,835评论 0 11
  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,681评论 1 92
  • A、家有厉母型 或许他是一个不错的结婚对象,他也没有什么特别让人难以忍受的毛病,称不上渣男,但他很有可能有一个很厉...
    运安阁主阅读 2,795评论 0 0