html+css,让div水平垂直居中的几种方式

2020-07-28  本文已影响0人  dingFY

在web前端开发中经常需要使用到让div进行水平和垂直居中的技术,现在我们就来谈谈如何实现div水平垂直居中(如下图所示)

div元素在屏幕上水平垂直居中的三种方法


HTML中有个class为box的div元素,通过修改css样式让box元素在页面水平垂直居中显示

<body>
    <div class="box">

    </div> 
</body>

方法一(margin: auto实现绝对定位元素的居中)

.box {
    width: 200px;
    height: 200px;
    background: burlywood;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

方法二(margin负间距) 注意:margin-top和margin-left的取值是根据元素宽高值除以2所得到的

.box {
    width: 200px;
    height: 200px;
    background: burlywood;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -100px;
    margin-left: -100px;
}

方法三 (tansform平移法) 注意:IE8以下浏览器不支持

.box {
    width: 200px;
    height: 200px;
    background: burlywood;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

div元素在父元素中水平垂直居中的两种方法


<body>
    <div class="boxWrap">
        <div class="box">

        </div> 
    </div> 
</body>

方法一(利用css3新增属性table-cell,vertical-aligen: middel)

.boxWrap {
     width: 200px;
     height: 200px;
     display: table-cell;
     vertical-align: middle;
}
.box {
    width: 50px;
    height: 50px;
    background: burlywood;
    margin: auto;
}

方法二(在父元素上使用flexbox弹性布局)

.boxWrap {
     width: 200px;
     height: 200px;
     display: flex;
     justify-content: center;
     align-items: center;
}
.box {
    width: 50px;
    height: 50px;
    background: burlywood;
}

文章每周持续更新,可以微信搜索「 前端大集锦 」第一时间阅读,回复【视频】【书籍】领取200G视频资料和30本PDF书籍资料

上一篇 下一篇

猜你喜欢

热点阅读