我遇到類似的問題此用戶while showing a div it's always showing at top of page。爲什麼.show()使目標div出現在頁面頂部?
我想獲得一個div來顯示在適當的位置,但目前當我單擊.show()的活動鏈接時,div出現,但它出現在頁面頂部重疊的一切。
這裏是我的.js:
$(document).ready(function() {
$(".hiddenreviewform").hide();
$('.exposeform').click(function() {
$(".hiddenreviewform").show();
return false;
});
});
這裏是隱藏的div的CSS:
.hiddenreviewform{
height: 486px;
margin: 0 auto;
border-radius: 3px;
width: 556px;
margin-left:244px;
}
什麼是很奇怪對我來說,如果我刪除js和刪除顯示:隱藏div上沒有,當我刷新頁面時,它顯示在正確的位置。然而,如果我隱藏div然後使用jquery顯示它,它會出現在頁面的頂部。我嘗試添加位置:相對於隱藏的div,這並沒有解決問題。
這正是我的代碼的出現方式,無論出於什麼原因,它都可以在codepen中工作,但不在我的本地計算機上工作。 http://codepen.io/donnaloia/pen/raxjbb
唯一的區別在於整個codepen例如嵌套在多個父div的(我無法複製和粘貼的休息,因爲CSS的微細化以及我不知道如何複製並粘貼相關來自該文件的代碼)。那麼我是否假設父div的設置方式影響了show()中隱藏div的位置?
任何答案或指針在正確的方向將不勝感激。
您是否檢查了瀏覽器中的元素以確定沒有意外的CSS正在被應用? – isherwood 2014-12-07 00:13:08
由於負邊距,我甚至無法點擊鏈接。我會嘗試在沒有它們的情況下創建你的佈局。 – isherwood 2014-12-07 00:16:39
我剛剛檢查過,我看到element.style {position:absolute}這是什麼原因造成的?我認爲這是壓倒位置:我設定的那個div。 – stephan 2014-12-07 00:18:26