<div class="docScroller">
    <div class="page one">
      <div class="inside">
      </div>
    </div>
    <div class="page two">
      <div class="inside">
      </div>
    </div>
    <div class="page three">
      <div class="inside">
      </div>
    </div>
    <div class="page four">
      <div class="inside">
      </div>
    </div>
</div>
.page {
  float: left;
  width: 100vw;
  height: 100vh;
}

.docScroller {
  overflow-x: hidden;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  scroll-snap-points-y: repeat(100%);
  scroll-snap-type: mandatory;
  scroll-snap-destination: 100% 0%;
}

.inside {
  background: yellow;
  opacity: 0.3;
  width: 80vw;
  margin: 10vh 0 0 10vw;
  height: 80vh;
}

.one {
  background: blue;
}
.two {
  background: purple;
}
.three {
  background: red;
}
.four {
  background: orange;
}

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

  1. https://s3-us-west-2.amazonaws.com/s.cdpn.io/4273/scroll-snap-polyfill.js