- From: Majid Valipour <majidvp@chromium.org>
- Date: Thu, 10 Nov 2016 16:27:23 +0000
- To: www-style@w3.org
- Message-ID: <CAB8RdXuTpcLzys4y=zkVH=X=ctGp-Q=G1erk2aF=PCGbrf50ww@mail.gmail.com>
> On Tue, Sep 23, 2014 at 7:21 AM, Rick Byers <rbyers@chromium.org> wrote: > > IE has -ms-scroll-chaining for precisely this problem. Does that do > > everything you'd want? > Yes, that's the ticket. One note: -ms-scroll-chaining only applies to > touch-based devices. I'd hope this would apply to mouse-based browsers as > well. I think the proposal here make sense. Rick was concerned that this may need to be limited to statefull scroll input (touch/touchpad) but I don't see any reason why that should be a problem given that -ms-scroll-chaining is limited to scrolls propagating upward to the nearest scrollable parent. So I propose to adopt -ms-scroll-chaining with the following changes: 1. scroll-chaining should apply to all user input scrolls including mouse, touch, keyboard. Programmatic scroll APIs such as Element::scrollIntoView are not affected by this. 2. Introduce long hands syntax scroll-chaining-{x,y} to allow scroll chaining to be controlled independently for each axis. For example a component which does not overflow horizontally should not prevent propagation on that axis if it only needs to prevent the vertical propagation. Optional 3. Define what happens if scroll-chaining is disabled on the viewport. I think a sensible choice here is to take it as meaning to prevent user-agent default overscroll actions such as overscroll swipe navigations and pull-to-refresh. I have proposed to do this as part of viewport meta [1] but this may be an even better solution. I have a more detailed proposal with some additional suggestions on WICG [1] but some of the suggestions there are slightly off topic for this thread. Thanks Majid [1] https://github.com/w3c/csswg-drafts/issues/455 [2] https://discourse.wicg.io/t/generic-scroll-chaining-prevention-mechanism-or-expand-standardize-ms-scroll-chaining/1811
Received on Thursday, 10 November 2016 16:28:07 UTC