gsap ScrollTrigger实现滚动翻书动画效果

代码语言:html

所属分类:动画

代码描述:gsap ScrollTrigger实现滚动翻书动画效果

代码标签: 滚动 翻书 动画 效果

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开


<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">

<style>
* {
  box-sizing: border-box;
}
:root {
  --page-count: 20;
  --page-scroll: 25;
  --underline: rgba(64,64,64,0.4);
  --spine: #000;
  --cover: #1a1a1a;
  --bg: #4d4d4d;
  --insert: #d9d9d9;
  --page: #e6e6e6;
}
body {
  width: 100vw;
  height: calc(((var(--page-count) + 2) * var(--page-scroll)) * 1vh);
  background: var(--bg);
  overflow-x: hidden;
}
h1 {
  text-align: center;
  font-size: 1rem;
  margin: 0;
  padding: 0;
}
.page {
  height: 100%;
  width: 100%;
  position: relative;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}
.page .page__number {
  position: absolute;
  color: #808080;
  bottom: 1rem;
  font-size: 1vmin;
}
.page__half--front .page__number {
  right: 1rem;
}
.page__half--back .page__number {
  left: 1rem;
}
.page__half {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  -webkit-transform: rotateY(calc(var(--rotation) * 1deg)) translate3d(0, 0, calc((0.5 * var(--coefficient)) * 1px));
          transform: rotateY(calc(var(--rotation) * 1deg)) translate3d(0, 0, calc((0.5 * var(--coefficient)) * 1px));
  -webkit-clip-path: inset(0 0.5% 0 0.5%);
  clip-path: inset(0 0.5% 0 0.5%);
}
.page__half--front {
  --rotation: 0;
  --coefficient: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  border-radius: 0 5% 5% 0;
}
.page__half--back {
  --rotation: 180;
  --coefficient: 2;
  border-radius: 5% 0 0 5%;
}
.book {
  height: 40vmin;
  position: fixed;
  width: 30vmin;
  min-width: 150px;
  min-height: 200px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) scale(0.5);
          transform: translate(-50%, -50%) scale(0.5);
  -webkit-transform-style: preserve-3d;
         .........完整代码请登录后点击上方下载按钮下载查看

网友评论0