2017-04-18 8 views
5

この質問が繰り返されているとお詫び申し上げますが、StackOverflowで適切な答えが見つかりませんでした。scrollTopはCSSでoverflow:autoプロパティでは機能しません

は、私は私のCSSクラスで次のプロパティを使用します。私はトップにページをスクロールする$('body').animate({scrollTop: 10}, 500); jQueryの関数を使用する場合、それは動作しません

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

。 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をラッパーにラップして使用します。私はあなたのコードを取り、このコードペンで自分自身を追加しました。唯一の違いは、ラッパーが追加され、それに応じて適応されることです。トップに戻る表示されますボタンを見つけるために下に

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

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

スクロール、あなたはCSSはあなたの例で掲示たものと同じであることに注意しましょう。私はこれが役立つことを願っています

関連する問題