如何让元素在父元素中水平或垂直居中:
行内元素:
text-align:center;
line-height:height;
块级元素:
1.给父元素设置display:flex伸缩盒布局;
并且设置:
align-items:center;
justify-content:center;
2.给父元素一个定位属性,子元素使用绝对定位,并且使用配合属性left:50%;top:50%;让子元素左上角移动到父元素中心位置;然后再让子元素使用margin-left:-width/2;margin-top:-height/2;
3.给父元素一个定位属性,给子元素一个绝对定位。然后给子元素的所有配合属性设置为0px(top/left/top/bottom)并且给子元素设置margin:auto
4.给父元素设置一个display:flex;子元素设置margin:auto
方法2代码案例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
*{
margin: 0px;
padding: 0px;
}
div{
width: 500px;
height: 500px;
background-color: blue;
position: relative;
}
div p{
width: 100px;
height: 100px;
background-color: red;
position: absolute;
left: 50%;
top: 50%;
margin-top: -50px;
margin-left: -50px;
}
</style>
</head>
<body>
<div>
<p></p>
</div>
</body>
</html>