How can I create a step-by-step guide for making a Horizontal Scrolling Website with functional scroll-wheel using Webflow?

TL;DR
  • Create a flex row Horizontal Wrapper with overflow hidden, containing 100vw-wide panels stacked side-by-side and 100vh in height.  
  • Set body height to match total scroll area (e.g., 300vh for 3 panels), and use page scroll interactions to animate the wrapper’s horizontal X movement as the user scrolls vertically.

To create a horizontal scrolling website in Webflow that reacts to the mouse scroll wheel, you can follow these step-by-step instructions using native Webflow interactions and layout settings.

---

1. Set Up Site Structure and Sections

  • Create a new page or use your existing page.
  • Add a parent div block and name it something like “Horizontal Wrapper”.
  • Set this wrapper’s display to flex (horizontal) and overflow to hidden.
  • Inside the wrapper, add sections or div blocks for each horizontal content panel.

Example:

  • Horizontal Wrapper
  • Panel 1 (Set width: 100vw)
  • Panel 2 (Set width: 100vw)
  • Panel 3 (Set width: 100vw)

Each panel should have height: 100vh to fill the screen vertically.

---

2. Set Layout for Horizontal Scrolling

  • Select the Horizontal Wrapper.
  • Set Display: FlexDirection: Row.
  • Ensure Overflow: Hidden on the parent to prevent normal vertical scrolling.
  • Give each panel width: 100vw, so they line up side-by-side.

---

3. Apply Scroll Wheel Interactions

Webflow doesn’t directly convert mouse wheel to horizontal scroll, but you can achieve this with a Page load scroll interaction + horizontal scrolling using Webflow interactions.

To do this:

  • Set the body height to match the total length of your horizontal content. For example, if you have 3 horizontal panels, set body height to 300vh.
  • Set the position of the Horizontal Wrapper to sticky or fixed (depending on your approach) and limit the vertical area it occupies.
  • Configure a Page Scroll Interaction:
  • Go to Page Trigger > While Page is Scrolling.
  • Set a horizontal transform (move) on the Horizontal Wrapper.
  • As the page scrolls (vertically), animate horizontal movement of the panels to the left.
  • For instance:
  • Scroll % 0 → Move X: 0%
  • Scroll % 100 → Move X: -200% (to shift two full widths left)

---

4. Turn Off Default Scrolling Scenes

To avoid over-scrolling:

  • On the Horizontal Wrapper, use overflow: hidden.
  • Adjust page height carefully to ensure it matches the number of horizontal panels.
  • Optionally, use custom code (outside of Webflow) to prevent rapid scroll if needed, though not strictly necessary.

---

5. Preview and Publish

  • Use Preview Mode to test the scrolling behavior.
  • Verify:
  • Vertical scroll converts to horizontal movement.
  • Sections stay within the viewport.
  • Publish your site to see if scrolling works properly on live device browsers.

---

Summary

To build a horizontal scrolling site with scroll-wheel support in Webflow, lay out panels side-by-side using flex row, simulate horizontal motion with vertical scroll using page scroll interactions, and control layout with fixed or sticky positioning. Horizontal movement is animated by translating the wrapper on X-axis relative to scroll position.

Rate this answer

Other Webflow Questions