Skip to content


Choose a tag to compare
@hakimel hakimel released this 27 Oct 13:58
· 22 commits to master since this release

Scroll view

reveal.js 5.0 comes with a groundbreaking new feature; scroll view! (#3482)

Slide decks are a great format for giving presentations, but scrollable web pages are easier for viewers to read on their own.

The scroll view gives you the best of both worlds—without any extra effort. Present in the format best suited for presenting, share in the format best suited for consumption.

Here's what it looks in action:


Want to try it out yourself? Check out the announcement deck I put together for 👉

How to use it

The scroll view is enabled by initializing reveal.js with view: "scroll" or by appending ?view=scroll to a deck URL.

Reveal.initialize({ view: 'scroll' });

It's possible to fine tune this view through multiple new config options. Full documentation available at

Breaking change

The scroll view is automatically enabled for viewports below 435px wide. This is done because I believe the scroll view to be a superior way to browse any deck on a mobile device. If you want to revert this behavior and always paginate between slides, see scrollActivationWidth:

Reveal.initialize({ scrollActivationWidth: null })


  • The PDF print view can now be activated via config Reveal.initialize({ view: 'print' }) (@hakimel in #3482)
  • The new URL query for activating the print view is ?view=print. It used to be ?print-pdf, which is still supported for backwards compatibility. (@hakimel in #3482)


  • Notes from data-notes were not working on the slide-level (@skyboyer in #3477)
  • Add 'wheel' event listener, remove deprecated mousewheel & 'DOMMouseScroll` (@quochuy in #3489)

Full Changelog: 4.6.0...5.0.0