0

I have three sections on my site, I want to reveal sections one by one by scrolling. Now the issue is that when I trigger animation with section 2 it's fine for the first two sections while when I trigger animation with section result is not expected what I want. please check my code and correct me on what I have done wrong

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <link rel="stylesheet" href="style.css" />
    <script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.11.3/gsap.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.11.3/ScrollTrigger.min.js"></script>
  </head>
  <body>
    <div class="upper-container">
      <span>(OUR AWARDS)</span>
      <h1>
        NOT FOR OUR EGOS, BUT BECAUSE AWARDS ARE A MEASURE OF CREATIVITY,
        ORIGINALITY AND QUALITY. AIMING FOR AWARDS PUSHES US TO THINK DEEPER, GO
        FURTHER AND HAVE MEANINGFUL CONVERSATIONS ABOUT WHAT CREATIVITY IS.
      </h1>
    </div>
    <div class="section2">
      <div class="upper-container2-left">
        <h1>OUR AWARDS 1</h1>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam
          voluptates, quod, quia, voluptate quae voluptatem quas quibusdam
          accusantium quidem voluptatum quos. Quisquam, quae. Quisquam, quae.
          Quisquam, quae. Quisquam, quae.
        </p>
        <button>SEE ALL AWARDS</button>
      </div>
      <div class="upper-container2-right">
        <div class="upper-container2-right-top">
          <div class="upper-container2-right-top-left">
            <h1>OUR AWARDS</h1>
            <p>
              Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam
              voluptates, quod, quia, voluptate quae voluptatem quas quibusdam
              accusantium quidem voluptatum quos. Quisquam, quae. Quisquam,
              quae. Quisquam, quae. Quisquam, quae.
            </p>
            <button>SEE ALL AWARDS</button>
          </div>
          <div class="upper-container2-right-top-right">
            <h1>OUR AWARDS</h1>
            <p>
              Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam
              voluptates, quod, quia, voluptate quae voluptatem quas quibusdam
              accusantium quidem voluptatum quos. Quisquam, quae. Quisquam,
              quae. Quisquam, quae. Quisquam, quae.
            </p>
            <button>SEE ALL AWARDS</button>
          </div>
        </div>
        <div class="upper-container2-right-bottom">
          <div class="upper-container2-right-bottom-left">
            <h1>OUR AWARDS</h1>
            <p>
              Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam
              voluptates, quod, quia, voluptate quae voluptatem quas quibusdam
              accusantium quidem voluptatum quos. Quisquam, quae. Quisquam,
              quae. Quisquam, quae
            </p>
          </div>
        </div>
      </div>
    </div>

    <div class="section3">
      <div class="upper-container2-left">
        <h1>OUR AWARDS</h1>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam
          voluptates, quod, quia, voluptate quae voluptatem quas quibusdam
          accusantium quidem voluptatum quos. Quisquam, quae. Quisquam, quae.
          Quisquam, quae. Quisquam, quae.
        </p>
        <button>SEE ALL AWARDS</button>
      </div>
      <div class="upper-container2-right">
        <div class="upper-container2-right-top">
          <div class="upper-container2-right-top-left">
            <h1>OUR AWARDS</h1>
            <p>
              Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam
              voluptates, quod, quia, voluptate quae voluptatem quas quibusdam
              accusantium quidem voluptatum quos. Quisquam, quae. Quisquam,
              quae. Quisquam, quae. Quisquam, quae.
            </p>
            <button>SEE ALL AWARDS</button>
          </div>
          <div class="upper-container2-right-top-right">
            <h1>OUR AWARDS</h1>
            <p>
              Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam
              voluptates, quod, quia, voluptate quae voluptatem quas quibusdam
              accusantium quidem voluptatum quos. Quisquam, quae. Quisquam,
              quae. Quisquam, quae. Quisquam, quae.
            </p>
            <button>SEE ALL AWARDS</button>
          </div>
        </div>
        <div class="upper-container2-right-bottom">
          <div class="upper-container2-right-bottom-left">
            <h1>OUR AWARDS</h1>
            <p>
              Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam
              voluptates, quod, quia, voluptate quae voluptatem quas quibusdam
              accusantium quidem voluptatum quos. Quisquam, quae. Quisquam,
              quae. Quisquam, quae
            </p>
          </div>
        </div>
      </div>
    </div>

    <script src="/script.js"></script>
  </body>
</html>
gsap.registerPlugin(ScrollTrigger);
gsap
  .timeline({
    scrollTrigger: {
      trigger: ".section2",
      pin: true,
      start: "top top",
      end: "+=300%",
      scrub: 1,
    },
    defaults: {
      ease: "none",
    },
  })
  .to(
    document.body,
    {
      delay: 0.2,
      backgroundColor: "#f0f0f0",
    },
    "start"
  )

  // upper container
  .to(
    ".upper-container ",
    {
      scale: 0,
    },
    "start"
  )
  .to(
    ".upper-container",
    {
      opacity: 0,
    },
    "start"
  )

  // section2
  .to(
    ".section2",
    {
      scale: 1,
      top: 0,
    },
    "start"
  )
  .to(
    ".section2",
    {
      opacity: 1,
    },
    "start"
  )
  // section3
  .to(
    ".section3",
    {
      scale: 1,
      top: 0,
    },
    "start"
  )
  .to(
    ".section3",
    {
      opacity: 1,
    },
    "start"
  );
body {
  margin: 0;
  padding: 0;
  font-family: "Open Sans", sans-serif;
  background: #f1bdbd;
  box-sizing: border-box;
  overflow-x: hidden;
}
* {
  padding: 0;
  margin: 0;
}
/* ::-webkit-scrollbar {
  display: none;
} */
.upper-container {
  height: 100vh;
  position: fixed;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  background-color: royalblue;
  /* background-image: url("./visiontabsbg.png"); */
}
.upper-container span,
.upper-container h1 {
  padding: 10px 50px;
  color: #fff;
}

.section2 {
  background-color: rgb(146, 118, 118);
  position: relative;
  height: 100vh;
  width: 100%;
  transform: scale(0);
  opacity: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.section3 {
  background-color: rgb(197, 71, 71);
  position: relative;
  height: 100vh;
  width: 100%;
  transform: scale(0);
  opacity: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

0 Answers0