2017-04-18 32 views
5

如果您發現此問題重複,請致歉,但無法在StackOverflow上找到正確的答案。scrollTop不適用於溢出:css中的自動屬性

我使用以下屬性在我的CSS類:

.panel{ 
    background: rgba(203, 203, 210, 0.15); 
    position: relative; 
    float: right; 
    ... 
    overflow: auto; 
} 

當我使用$('body').animate({scrollTop: 10}, 500); jQuery函數滾動頁面頂部,這是行不通的。當我將auto值替換爲'visible'或'inherit'之類的東西時,它就可以工作。雖然頁面的結構需要溢出屬性。

有什麼想法?

+4

添加一些html和截圖。 –

+0

哪個瀏覽器?並添加更多的HTML ...我可以編寫一個簡單的案例,它可以正確地處理CSS位置,浮點和溢出,因此您還可以指定其他內容。 – pbuck

+1

請添加所需的html/css/jquery以複製當前不起作用的行爲。 –

回答

0

我可以克服這個問題與overflow:auto的唯一途徑是增加頁面暫時的高度和高度重置爲初始值,如下所示:

$('.panel').css({"min-height":"200%"}); 
$('body').animate({scrollTop: 10}, 500); 
$('.panel').css({"min-height":"100%"}); 
0

要在不刪除溢出值的情況下符合您的規範,可以將可滾動.panel包裝在包裝中並使用它。我已經拿到了你的代碼,並在代碼筆中添加了我自己的代碼,唯一的區別是添加了包裝器並相應地調整了js。

https://codepen.io/c0un7z3r0/pen/Emgdbr

$(".button").click(function(){ 
    $("html, body").animate({ scrollTop: 0 }, "slow"); 
}); 

滾動至底部找到一個按鈕,帶您回到頂端,你會注意到的CSS是一樣張貼在你的榜樣。我希望這有幫助。