ドキュメントの全体的な高さを縮小する div (ページの下部) を非表示にしています。
div を非表示にする前にページの一番下までスクロールすると、Chrome はドキュメントの下部をウィンドウの下部に正しく調整します。
完全に下にスクロールせずに、div を非表示にする前にウィンドウの下端から少なくとも 1 ピクセル下に残すと、Chrome はドキュメントの下部をウィンドウの下部に合わせません。代わりに、ドキュメントが縮小され、Chrome の灰色のファブリックの背景が表示されます。次に、ページを少なくとも 1 ピクセルスクロールするとすぐに、Chrome はドキュメントをウィンドウに再び合わせます。
これは、Chrome の Dev Tools を使用して任意の Web サイトで再現できます。ほぼ (!) 一番下までスクロールし、任意の要素を選択してdisplay:none
またはを設定しheight:0
ます。
OS X 10.8.4 で Chrome 29 を使用しています。これは既知のバグですか?
回避策は、要素を非表示にした後、jQuery の scrollTop 関数を使用してピクセルを上にスクロールすることです。その後、Chrome はドキュメントを調整します。
var y = $(window).scrollTop();
$(window).scrollTop(y-1);
ここで、jQuery の slideToggle() を使用して要素を非表示にしたい場合は注意が必要です。何か案は?