前端面试
2017-07-29 本文已影响0人
zzj_alpaca
怎样让一个不知道大小的盒子居中
.box {
width: 300px;
height: 200px;
background-color: red;
position: absolute;
left: 0;
right: 0;
top: 0;
bottom: 0;
margin: auto;
}
原理是:让未定义宽高的div上下左右距离都为0.然后给一个margin自适应。可以想象成一个盒子,给了四个方向的相同的力,这样就会形成一种相对的均衡力量让其停留在中间位置了。
- 利用css3属性
.box {
width: 300px;
height: 200px;
background-color: red;
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
}
<style>
.box {
width: 800px;
height: 500px;
border: 1px solid #c35;
margin: 50px auto;
display: flex;
background: #ccc;
justify-content: center;
align-items: center;
}
.inner_box {
width: 290px;
height: 300px;
background: #c35;
}
</style>
</head>
<body>
<div class="box">
<div class="inner_box"></div>
</div>
</body>