我正在使用以下HTML / CSS在我正在处理的网站上覆盖一个方框。我希望盒子在屏幕中居中,而不是基于已经进行的居中开始。所以基本上白框应该在页面的中心,而不是文本测试
.loading {
position: fixed;
z-index: 999;
height: 2em;
width: 2em;
overflow: show;
margin: auto;
top: 0;
left: 0;
bottom: 0;
right: 0;
}
/* Transparent Overlay */
.loading:before {
content: '';
display: block;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(0,0,0,0.3);
}
.centrediv {
height: 200px;
width: 800px;
background-color: white;
border: 1px solid black;
}

<div class="loading"><div class="centrediv">Test</div></div>
&#13;
答案 0 :(得分:1)
在transform: translate(-50%, -50%)
上使用top: 50%
,left: 50%
和.centreDiv
将其水平和垂直居中。
.loading {
position: fixed;
z-index: 999;
height: 2em;
width: 2em;
overflow: visible;
margin: auto;
top: 0;
left: 0;
bottom: 0;
right: 0;
}
/* Transparent Overlay */
.loading:before {
content: '';
display: block;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.3);
}
.centrediv {
position: absolute;
height: 100px;
width: 200px;
background-color: white;
border: 1px solid black;
transform: translate(-50%, -50%);
top: 50%;
left: 50%;
}
&#13;
<div class="loading">
<div class="centrediv">Test</div>
</div>
&#13;