Rubber banding doesn't respect linear-gradient, shows white instead
Reported by
btkal...@gmail.com,
Jun 10 2016
|
|||||
Issue descriptionUserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36 Example URL: http://output.jsbin.com/jugaxococo Steps to reproduce the problem: http://output.jsbin.com/jugaxococo shows the problem, but basically if you have body { background: linear-gradient(to bottom, red 0%, yellow 50%); } (or any other colors) and the body over-scrolls so that OSX rubber-banding kicks in. What is the expected behavior? top/bottom rubber-banding should be the top/bottom of the gradient, respectively. E.g. in the example, over-scrolling at the top should be red, and over-scrolling at the bottom should be yellow. What went wrong? It's white on both top/bottom. Contrast this to setting a (non-gradient) background color, which does show in the rubber-banding. Does it occur on multiple sites: Yes Is it a problem with a plugin? No Did this work before? N/A Does this work in other browsers? No Safari has a similar bug, but it reverses the top/bottom rather than showing white Chrome version: 50.0.2661.102 Channel: stable OS Version: OS X 10.11.3 Flash Version: Shockwave Flash 21.0 r0 The workaround I'm using is to watch the onscroll event and change background-color depending on scroll position - but (a) it's a shame adding a scroll event, (b) especially since it gets throttled so the color switching doesn't kick in early enough, and (c) testing scroll height causes relayout (?).
,
Jun 13 2016
Moving into compositing/scroll components for triage.
,
Jun 13 2016
,
Jun 14 2017
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue. Sorry for the inconvenience if the bug really should have been left as Available. If you change it back, also remove the "Hotlist-Recharge-Cold" label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Jun 22 2017
While I can repro and agree that the behavior is broken, Safari suffers the same issue and I think fixing this properly would be difficult. For example, how do we handle repeating gradients? The only way to do this correctly would be to extend the background layer (ensuring that we do actually create a separate layer for the background) enough that we stay within its bounds for rubber banding. We'd have to make some assumptions about how we treat the CSS for cases like in the jsbin example. All in all, I think this would be a lot of work with possible negative performance implication for little gain and a loss of interop. For those reasons, I'm going to mark this as WontFix. Sorry. |
|||||
►
Sign in to add a comment |
|||||
Comment 1 by btkal...@gmail.com
, Jun 10 2016