This page tests the stable operation of a module that fixes viewport height units (lvh, svh) in certain iOS in-app browsers, Firefox, and Arc Browser.
Some browsers treat lvh, svh, and dvh values identically or with incorrect values during initial loading.
Specifically, svh values cannot be parsed at load time and are accurately calculated only when the first touch scroll begins.
Left boxes: Use browser default 100lvh and 100svh values. In problematic iOS browsers, they behave like dvh with variable heights.
Right boxes: Use CSS variables --fvh, --lvh and --svh for height settings. The module is applied to maintain stable scroll positions.
Screen flickering in some browsers appears to be a rendering (painting) issue rather than actual scroll position changes.
Currently distinguishes between touch and mouse scrolling by inference, which may not be perfect. Non-touch scrolling assumes viewport size doesn't change.







