如果没有div父盒子相对定位,子盒子绝对定位是会相对于html的。所以直接设置子盒子绝对定位,高左50%,上左外边距负的自身高宽一半即可。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>1center</title>
<style>
div {
/* 把每个特性用场景来吃透! */
position: absolute;
top: 50%;
left: 50%;
margin-top:-150px;
margin-left: -150px;
width: 300px;
height: 300px;
background-color: red;
}
</style>
</head>
<body>
<div></div>
</body>
</html>