今天去面试,HR随意出了几个问题,其中就有如何实现div的居中。
我当时想,水平居中我是会的
<!DOCTYPE >
<html lang="zh-CN">
<head>
<style>
body {
height: 100%;
padding: 0;
margin: 0;
}
#container {
width: 800px;
height: 600px;
background-color:#12eeed;
margin: 0 auto;
}
</style>
</head>
<body>
<div id="container"></div>
</body>
</html>
但是垂直居中,没整过啊,后来一想可以用相对定位或者决定定位啊,多余的用margin值来补充。
<!DOCTYPE >
<html lang="zh-CN">
<head>
<style>
body {
height: 100%;
padding: 0;
margin: 0;
}
#container {
width: 800px;
height: 600px;
background-color:#12eeed;
margin-left:-400px;
margin-top:-300px;
position:relative;
top:50%;
left:50%;
}
</style>
</head>
<body>
<div id="container"></div>
</body>
</html>
这样就可以了,只不过要注意的是,使用position属性时,如果有百分比,百分比相对于父级元素,此处是以body作为父级元素。