在为许多浏览器、移动和桌面开发网站时,我注意到以下 CSS 可以很好地使加载 div 居中。
img.loading1 {
    position:absolute;
    left:50%;
    margin-left:-16px;
    top:50%;
    margin-top:-16px;
    z-index:10
}
.loading2 {
    color:#006BB2;
    position:absolute;
    left:50%;
    margin-left:0px;
    top:40%;
    z-index:5
}
.loading3 {
    position:absolute;
    width:100%;
    height:100%;
    left:0;
    top:0;
    background-color:lightgrey;
    opacity:0.85
}
<div id="container" style="position:relative">
    ...content ommitted...
    <div id="loading" style="display:none">
        <div class="loading3"></div>
        <img class="loading1" src="images/loader-ajax.gif" width="32" height="32">
        <span class="loading2" id="getting">Getting your request...</span>
    </div>
    ...content ommitted...
div 的显示设置为“阻止”,3 个项目居中。
但是,在移动屏幕上,虽然水平是正确的,但垂直位置可能会在屏幕外,具体取决于“包含”div 的高度。
是否可以使用 Javascript 找到屏幕的中心并定位图像并跨越那里?
编辑 1:加载 div 的高度是否必须设置为屏幕高度才能正常工作?