如何在 html 表格上方叠加 div?
How to overlay div above html form?
我想在用户提交搜索时显示动画加载图标。
我正在寻找的事件顺序:
- 用户提交了搜索
- 使加载图标可见
- 搜索完成后隐藏加载图标
我面临的问题主要是 css。
- 首先,加载图标似乎在表单元素后面。
- 其次,我无法将 div (searchEngineForm) 的大小增加到与表单相同的大小。
- 最后,我无法将 div (searchEngineForm) 宽度设置为 100%。它超出了形式。
这是我的代码:
HTML:
<form action="setJobFields" method="POST">
<div id="searchEngineForm" style="display: none;">
<div class="loader">
</div>
</div>
...
</form>
CSS:
#searchEngineForm{
position: absolute;
/* width: 100%; */
}
.loader {
border: 16px solid #f3f3f3;
border-radius: 50%;
border-top: 16px solid #3498db;
width: 120px;
height: 120px;
-webkit-animation: spin 2s linear infinite; /* Safari */
animation: spin 2s linear infinite;
}
/* Safari */
@-webkit-keyframes spin {
0% { -webkit-transform: rotate(0deg); }
100% { -webkit-transform: rotate(360deg); }
}
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
要将 html 元素设置为高于其他元素,您可以将其 Z-index 设置为比其周围元素更高的数字。
例如,假设您想在页面其余部分的前面显示您的加载符号。您可以将整个页面包含在单个 div 中,为了参数我们给它一个 class 的“页面”,我们可以将其设置为:
.page{ z-index: -1 ;}
加载程序为
.loader{ z-index: 1; }
然后,要定位到你想要的位置,你可以设置position为absolute,然后用top和left属性左右移动,比如
.loader{ z-index:1; position: absolute; top: 50%; left: 50%; }
我想在用户提交搜索时显示动画加载图标。
我正在寻找的事件顺序:
- 用户提交了搜索
- 使加载图标可见
- 搜索完成后隐藏加载图标
我面临的问题主要是 css。
- 首先,加载图标似乎在表单元素后面。
- 其次,我无法将 div (searchEngineForm) 的大小增加到与表单相同的大小。
- 最后,我无法将 div (searchEngineForm) 宽度设置为 100%。它超出了形式。
这是我的代码:
HTML:
<form action="setJobFields" method="POST">
<div id="searchEngineForm" style="display: none;">
<div class="loader">
</div>
</div>
...
</form>
CSS:
#searchEngineForm{
position: absolute;
/* width: 100%; */
}
.loader {
border: 16px solid #f3f3f3;
border-radius: 50%;
border-top: 16px solid #3498db;
width: 120px;
height: 120px;
-webkit-animation: spin 2s linear infinite; /* Safari */
animation: spin 2s linear infinite;
}
/* Safari */
@-webkit-keyframes spin {
0% { -webkit-transform: rotate(0deg); }
100% { -webkit-transform: rotate(360deg); }
}
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
要将 html 元素设置为高于其他元素,您可以将其 Z-index 设置为比其周围元素更高的数字。
例如,假设您想在页面其余部分的前面显示您的加载符号。您可以将整个页面包含在单个 div 中,为了参数我们给它一个 class 的“页面”,我们可以将其设置为:
.page{ z-index: -1 ;}
加载程序为
.loader{ z-index: 1; }
然后,要定位到你想要的位置,你可以设置position为absolute,然后用top和left属性左右移动,比如
.loader{ z-index:1; position: absolute; top: 50%; left: 50%; }