所以我在页面中间有一个div,它是一个按钮和一个搜索框,另一个位于搜索结果显示位置的下方。一切正常,但搜索结果显示在居中的div后面。
我希望它们都被堆叠起来,这样当结果显示时,顶部div向上移动以腾出空间。有小费吗?
HTML
int32_t
顶级div的CSS:
<div class="container-fluid">
<div class="row">
<h4 class="title">Wikipedia Viewer</h4>
<h4 class="port">by l-emi</h4>
</div>
<div id="aligner">
<div class="row">
<div id="centbox">
<div class="row">
<button type="button" class="butoni" id="randy">Random article</button>
<input type="text" name="search" placeholder="Or search!" class="butoni" id="searchy">
</div>
</div>
</div>
<div id="resultati">
<ul id="output">
</ul>
</div>
</div>
</div>
对于结果区域
#centbox {
overflow: auto;
position: fixed;
display: inline-block;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
z-index: 1;
display: table;
text-align: center;
}
修改
修正了它!将#resultati {
background-color: #e3e1df;
padding: 5px;
margin-top: 3.5em;
width: 50%;
position: fixed;
display: inline-block;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
更改为position: fixed;
,然后将position: absolute;
用于顶部div,将$('#centbox').css("top", "14%");
用于结果div。
谢谢大家!
答案 0 :(得分:1)
输出前置后,您可以重写顶部定位,将其推到顶部:
$('#centbox').css("top", "25%");
答案 1 :(得分:0)
我建议使用它:
document.getElementById("centbox").style.top = "28%";
答案 2 :(得分:0)
试试这个:
public function getAreEventsAvailableStringMultiple() {
$availability = [];
foreach ($this->getAreEventsAvailable() as $eventAvailable) {
$availability[] = $eventAvailable ? 'Spaces still available' : 'Sold Out';
}
return implode(' <br/> ', $availability);
}
答案 3 :(得分:0)
你不需要固定的位置。我建议你将盒子与按钮和结果垂直对齐。
如果没有结果,带按钮的方框将位于中间;只有结果,按钮仍然在中间,你仍然会得到你需要的结果(不太明显的空白页)。