如何阻止滚动直到加载程序显示 none?
How can I block scrolling until the loader displays none?
我想知道是否有办法阻止滚动条,直到 div 及其加载器到达显示点 none。我不知道这是否可以仅使用 html 或 css 来完成。有什么建议吗?
#loader {
background: #eeeeee;
bottom: 0;
height: 100%;
left: 0;
right: 0;
top: 0;
width: 100%;
display:block;
margin: 0 auto;
position: relative;
overflow: hidden;
z-index: 9999;
}
#loaderInner {
background:#eeeeee url(https://dl.dropboxusercontent.com/s/asdfghfdsas/loader.gif) center center no-repeat;
background-size: 250px 250px;
position: absolute;
height: 250px;
width: 250px;
display:block;
margin: 0 auto;
top: 50%;
left: 50%;
margin: -125px 0px 0px -125px;
}
body#layout #loader {
display:none;
overflow: scroll;
}
您可以使用一些简单的 CSS 来防止页面滚动。但是您需要使用 JS 来处理何时应用此 class.
CSS
body.loading {
overflow: hidden;
}
另一种解决方案是将加载器 div 放置在固定位置,因此无需隐藏滚动条(这会导致奇怪的用户体验):
#loader {
position: fixed;
top: 0;
left: 0;
...
}
div滚动时会显示
在这种情况下,您不需要 "body.loading" 规则。
加载器由于定位而滚动,所以我们可以通过将位置css更改为position:fixed来轻松去除滚动;
它将 100% 工作......
#loader {
position: fixed;
background: #eeeeee;
bottom: 0;
height: 100%;
left: 0;
right: 0;
top: 0;
width: 100%;
display:block;
margin: 0 auto;
overflow: hidden;
z-index: 9999;
}
对我来说,这是在显示 de Loader 时删除滚动条的最佳解决方案
html, body.loader {
overflow: hidden !important;
}
我想知道是否有办法阻止滚动条,直到 div 及其加载器到达显示点 none。我不知道这是否可以仅使用 html 或 css 来完成。有什么建议吗?
#loader {
background: #eeeeee;
bottom: 0;
height: 100%;
left: 0;
right: 0;
top: 0;
width: 100%;
display:block;
margin: 0 auto;
position: relative;
overflow: hidden;
z-index: 9999;
}
#loaderInner {
background:#eeeeee url(https://dl.dropboxusercontent.com/s/asdfghfdsas/loader.gif) center center no-repeat;
background-size: 250px 250px;
position: absolute;
height: 250px;
width: 250px;
display:block;
margin: 0 auto;
top: 50%;
left: 50%;
margin: -125px 0px 0px -125px;
}
body#layout #loader {
display:none;
overflow: scroll;
}
您可以使用一些简单的 CSS 来防止页面滚动。但是您需要使用 JS 来处理何时应用此 class.
CSS
body.loading {
overflow: hidden;
}
另一种解决方案是将加载器 div 放置在固定位置,因此无需隐藏滚动条(这会导致奇怪的用户体验):
#loader {
position: fixed;
top: 0;
left: 0;
...
}
div滚动时会显示
在这种情况下,您不需要 "body.loading" 规则。
加载器由于定位而滚动,所以我们可以通过将位置css更改为position:fixed来轻松去除滚动; 它将 100% 工作......
#loader {
position: fixed;
background: #eeeeee;
bottom: 0;
height: 100%;
left: 0;
right: 0;
top: 0;
width: 100%;
display:block;
margin: 0 auto;
overflow: hidden;
z-index: 9999;
}
对我来说,这是在显示 de Loader 时删除滚动条的最佳解决方案
html, body.loader {
overflow: hidden !important;
}