
Security News
How Enterprise Security Is Adapting to AI-Accelerated Threats
Socket CTO Ahmad Nassri discusses why supply chain attacks now target developer machines and what AI means for the future of enterprise security.
solid-prevent-scroll
Advanced tools
SolidJS utility that prevents scrolling outside of a given DOM element. Works by preventing events that else would lead to scrolling.
SolidJS utility that prevents scrolling outside of a given DOM element. Works by preventing events that else would lead to scrolling.
By default, it also hides the scrollbar of the body element and adds padding to it to prevent the page from jumping. This behavior can be disabled and modified with the hideScrollbar, preventScrollbarShift, and preventScrollbarShiftMode props.
It also adds the CSS variable --scrollbar-width to the body element, indicating the width of the currently removed scrollbar. You can use this variable to add padding to fixed elements, like a topbar.
import createPreventScroll from 'solid-prevent-scroll'
const DialogContent: Component<{
open: boolean
}> = (props) => {
const [ref, setRef] = createSignal(null)
createPreventScroll({
element: ref,
enabled: () => props.open, // default = true
hideScrollbar: true, // default
preventScrollbarShift: true, // default
preventScrollbarShiftMode: 'padding', // default, `padding` or `margin`
restoreScrollPosition: true, // default
allowPinchZoom: false, // default
})
return (
<Show when={props.open()}>
<div ref={setRef}>Dialog</div>
</Show>
)
}
Use the --scrollbar-width CSS variable to add padding to fixed elements to prevent the content from shifting when the scrollbar is removed:
<header
class="fixed top-0 inset-x-0 z-50"
style={{
'padding-right': 'var(--scrollbar-width, 0)',
}}
>
Header
</header>
This utility is from the maintainers of corvu, a collection of unstyled, accessible and customizable UI primitives for SolidJS. It is also documented in the corvu docs under Prevent Scroll.
FAQs
SolidJS utility that prevents scrolling outside of a given DOM element. Works by preventing events that else would lead to scrolling.
The npm package solid-prevent-scroll receives a total of 58,929 weekly downloads. As such, solid-prevent-scroll popularity was classified as popular.
We found that solid-prevent-scroll demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Socket CTO Ahmad Nassri discusses why supply chain attacks now target developer machines and what AI means for the future of enterprise security.

Security News
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.

Security News
Experts push back on new claims about AI-driven ransomware, warning that hype and sponsored research are distorting how the threat is understood.