Node.insertBefore causes scrolling if scrollTop > 0
Reported by
bee.roc...@gmail.com,
Feb 23 2017
|
||||
Issue descriptionUserAgent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36 Steps to reproduce the problem: 1. Open test page https://jsfiddle.net/zx5r4m6h/ 2. Scroll the div down slightly; 3. Click the button to insert another child element. What is the expected behavior? Elements should be inserted without triggering a scroll. What went wrong? Scroll is triggered when inserting an element. Other major browsers don't trigger a scroll in this situation (tested in Firefox 51.0.1 and IE 11.0.9600). Did this work before? N/A Chrome version: 56.0.2924.87 Channel: stable OS Version: 6.1 (Windows 7, Windows Server 2008 R2) Flash Version: Shockwave Flash 24.0 r0 While this behaviour might be desirable in some scenarios, in the context of our web app it becomes an undesirable side effect of replacing data grid cells. Workaround: Cache scroll position and reinstate after insert operation.
,
Feb 23 2017
I could not reproduce on M57 Linux. Could test please check the M56 behavior?
,
Feb 24 2017
Also behaves this way in Chrome 58.0.3022.0 canary.
,
Feb 25 2017
I am seeing this issue on Latest Canary#58.0.3022.0, Dev#58.0.3018.3, Beta#57.0.2987.74 & Stable#56.0.2924.87 versions of Chrome for 'Win7 64-bit OS' & 'Linux Ubuntu 14.04'. Good Build# 56.0.2889.0 Bad Build# 56.0.2900.0 Here is the per-revision bisect: ================================= You are probably looking for a change made after 426336 (known good), but no later than 426337 (first known bad). CHANGELOG URL: --------------- https://chromium.googlesource.com/chromium/src/+log/bf2f3855e7e22042ad5d11e785b13d6e7c84127a..6d380ba3ab246a15d6269a75328f481336b53ee1 skobes@, can you please look into this? Thank you!
,
Feb 25 2017
This is the intended behavior of the scroll anchoring feature, which launched in Chrome 56. For more information about scroll anchoring, see the explainer at: https://github.com/WICG/ScrollAnchoring/blob/master/explainer.md To disable scroll anchoring, set CSS "overflow-anchor: none" on the scrollable element. |
||||
►
Sign in to add a comment |
||||
Comment 1 by schenney@chromium.org
, Feb 23 2017