【CSS】scrollを促すアニメーションの作り方
        今回はWEBサイトのファーストビューでよく見られるscrollを促すアニメーションの作り方を紹介します。
コピペできるので、是非真似してコーディングしてみてください!
目次
【CSS】scrollを促すアニメーションの作り方
完成形はこちら。
See the Pen 
Untitled by webis (@webis-co)
on CodePen.
scrollを促すアニメーションがあることで、ユーザーに下へスクロールできることを伝えることができます。
それでは早速作っていきましょう!
HTML
<!-- 背景画像 -->
<div class="first-v">
    <div class="scroll">
        <a href="">scroll</a>
    </div>
</div>
CSS
/* 背景画像 */
.first-v {
    position: relative;
    overflow: hidden;
    background-color: pink;
    height: 100vh;
}
/* scroll */
.scroll {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 15px;
    min-width: 15px;
    margin: 0 auto;
}
.scroll a {
    display: inline-block;
    letter-spacing: normal;
    font-size: 1.8rem;
    color: #fff;
    writing-mode: vertical-lr;
    margin: 0 auto;
    text-decoration: none;
}
.scroll a::before {
    content: "";
    display: block;
    position: absolute;
    top: 85px;
    right: 0;
    left: 50%;
    transform: translateX(-50%);
    margin: 0 auto;
    width: 3px;
    height: 100px;
    background-color: #fff;
    animation: scroll 1.5s cubic-bezier(1, 0, 0, 1) infinite;
}
/* scrollアニメーション */
@keyframes scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}
◎2行目〜7行目
背景画像を高さ100vhにして、背景画像をつけます。
◎9行目〜17行目
scroll要素に対して「position: absolute;」を指定して絶対配置にします。
◎18行目〜26行目
aタグをインラインブロック要素にします。
そして「writing–mode: vertical–lr;」でscrollの文字を縦にします。
◎27行目〜40行目
擬似要素でアニメーションの線を実装していきます。
そしてanimationプロパティでscrollといった名前のアニメーションを指定します。
scrollのアニメーションは後で作成していきます。
◎43行目〜60行目
scrollといった名前のアニメーションを作成しました。
0%・50%・50.1%・100%の時の挙動をCSSで細かく指定していきます。
まとめ
以上が、scrollを促すアニメーションの作り方でした。




