[useScrollLock] Fix jump with scroll-behavior
style
#1343
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #1340
Unfortunately
body { scroll-behavior: smooth }
still jumps (when I tried to add the same technique), although it fixes thehtml
case.A couple of options are possible:
scroll-behavior
should be put onhtml
instead ofbody
. This isn't going to work nicely if Base UI is used as an extension since they can't control third party sites.react-aria
hook (+ maybe warn still). This isn't straightforward due to the fact the react-aria lock is disabled onopen
notmounted
, so aposition: fixed
element (e.g. dialog) shifts while closing if it has an exit animation when the body has inset scrollbars. A bunch of extra code is necessary to ensure this works correctly