## Smooth Scroll

Product: Monogram - Personal Portfolio WordPress Theme
URL: https://hub.jkdevstudio.com/docs/monogram/advanced-features/smooth-scroll
Updated: 2026-09-06

Monogram includes a smooth scrolling engine powered by **GSAP ScrollSmoother**. Instead of the default browser scroll, the page content follows your scroll input with a graceful, cinematic easing - giving your site a polished, premium feel.

Smooth scroll is **desktop-only**. On mobile and touch devices the theme falls back to native browser scrolling for the best performance and user experience. It is also automatically disabled inside the Elementor editor so it does not interfere with your page-building workflow.

## How It Works

When enabled, ScrollSmoother wraps your page content in a special container and translates it with GSAP instead of relying on the browser built-in scroll. The result is a buttery-smooth motion where the page catches up to your scroll position at a controlled speed.

The engine automatically refreshes its calculations after lazy-loaded images, fonts, and other deferred content finish loading. This prevents layout shifts from throwing off scroll positions.

## Settings

Navigate to **Appearance &gt; Customize &gt; Smooth Scroll** to configure the feature.

### General Tab

<table style="min-width:100px;"><colgroup><col style="min-width:25px;"><col style="min-width:25px;"><col style="min-width:25px;"><col style="min-width:25px;"></colgroup><tbody><tr><th colspan="1" rowspan="1"><p>Setting</p></th><th colspan="1" rowspan="1"><p>Type</p></th><th colspan="1" rowspan="1"><p>Default</p></th><th colspan="1" rowspan="1"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1"><p><strong>Enable Smooth Scroll</strong></p></td><td colspan="1" rowspan="1"><p>Toggle</p></td><td colspan="1" rowspan="1"><p>On</p></td><td colspan="1" rowspan="1"><p>Master switch. When off, the site uses native browser scrolling.</p></td></tr><tr><td colspan="1" rowspan="1"><p><strong>Scroll Smoothness</strong></p></td><td colspan="1" rowspan="1"><p>Slider (0.5-3.0)</p></td><td colspan="1" rowspan="1"><p>1.75</p></td><td colspan="1" rowspan="1"><p>Controls how smooth the scroll feels on desktop. Higher values create a more cinematic, floaty scroll but may feel less responsive. A range of 1.0-1.5 is recommended for most sites.</p></td></tr><tr><td colspan="1" rowspan="1"><p><strong>Touch Smoothness</strong></p></td><td colspan="1" rowspan="1"><p>Slider (0-1.0)</p></td><td colspan="1" rowspan="1"><p>0.1</p></td><td colspan="1" rowspan="1"><p>Smoothing factor for touch devices. Keep this low (0.05-0.2) so touch scrolling still feels natural.</p></td></tr></tbody></table>

### Advanced Tab

<table style="min-width:100px;"><colgroup><col style="min-width:25px;"><col style="min-width:25px;"><col style="min-width:25px;"><col style="min-width:25px;"></colgroup><tbody><tr><th colspan="1" rowspan="1"><p>Setting</p></th><th colspan="1" rowspan="1"><p>Type</p></th><th colspan="1" rowspan="1"><p>Default</p></th><th colspan="1" rowspan="1"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1"><p><strong>Effects Selector</strong></p></td><td colspan="1" rowspan="1"><p>Text</p></td><td colspan="1" rowspan="1"><p><code>.jkd-smooth</code></p></td><td colspan="1" rowspan="1"><p>CSS selector for elements that receive scroll-based parallax effects. Any element matching this selector can use ScrollSmoother speed and lag attributes.</p></td></tr><tr><td colspan="1" rowspan="1"><p><strong>Wrapper Selector</strong></p></td><td colspan="1" rowspan="1"><p>Text</p></td><td colspan="1" rowspan="1"><p><code>#site-content</code></p></td><td colspan="1" rowspan="1"><p>The outer wrapper element that ScrollSmoother needs. You should not change this unless you have customized the theme HTML structure.</p></td></tr><tr><td colspan="1" rowspan="1"><p><strong>Content Selector</strong></p></td><td colspan="1" rowspan="1"><p>Text</p></td><td colspan="1" rowspan="1"><p><code>#content-inner</code></p></td><td colspan="1" rowspan="1"><p>The inner scrollable content element. Like the wrapper, leave this at the default unless you have modified the theme markup.</p></td></tr></tbody></table>

## Tips

- If your page feels too "floaty," lower the **Scroll Smoothness** value toward 1.0.
- To add parallax effects to an element, give it the class matching your **Effects Selector** (`.jkd-smooth` by default) and add a `data-speed` attribute (e.g., `data-speed="0.8"` to scroll slower than the page).
- You can temporarily disable smooth scroll for testing by adding `?smooth_scroll_enabled=false` to any page URL.

<div data-callout="info">

Smooth scroll requires GSAP ScrollSmoother, which is bundled with the theme. No additional plugins are needed.

</div>