在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书籍资料
网友评论