我想要做一個組合類似的東西,我需要在輸入上方對齊div。javascript:將絕對div對齊到另一個div上
我該如何計算正確的bottom css property
的列表才能在輸入上方顯示?
示例代碼:
HTML
<div style="position:absolute;top:150px; left:150px;">
<input/><span class="btn">V</span>
</div>
<div class="list" style="display:none;">
<ul>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
<li>Item 4</li>
</ul>
</div>
CSS
.btn {
width: 10px;
height:10px;
background-color: black;
cursor: pointer;
}
.list {
position: absolute;
border: solid 1px black;
}
JS
$('.btn').click(function(){
var list = $('.list');
list.show();
var inputOffset = $('input').offset();
list.css({
bottom: inputOffset.top,
left: inputOffset.left
});
});
注: 的投入將工作就像一個過濾器,這樣列表的高度將發生變化。 我想讓瀏覽器保持列表對齊。這就是爲什麼我想在列表中設置正確的bottom
值。
如何糾正任何錯誤?請閱讀您自己的問題並更正。 – spender 2014-09-26 13:55:25
所以你試圖讓列表直接出現在輸入和按鈕之上? – sma 2014-09-26 13:57:25