スクロールアニメーションを実装|JavaScriptとCSSで簡単に

スクロールアニメーションは、ユーザーがページを下にスクロールした際に、要素がフェードインしたりスライドインする動きを加えることで、Webサイトをより魅力的にする技術です。

この記事では、JavaScriptとCSSを使ったシンプルなスクロールアニメーションの実装方法を解説します。初心者でも理解しやすいコード例を用意していますので、ぜひ参考にしてください!


スクロールアニメーションとは?

スクロールアニメーションは、ページのスクロール位置に応じて、要素が動的に表示される効果です。以下のような場面で使用されます:

  • サービス紹介ページでのテキストのスライドイン。
  • 商品リストのフェードイン。
  • ポートフォリオページの視覚的なインパクトを強調。

メリット:

  • 視覚効果でユーザーの注目を集める。
  • サイトの動きを加えて、退屈さを軽減。
  • ユーザーのスクロールを促進。

実装手順

1. HTMLを構築する

基本的なHTMLの構造を以下のように記述します。

2. CSSでスタイルを設定する

CSSを使って、初期状態とアニメーションを定義します。

3. JavaScriptでスクロールを監視する

JavaScriptでスクロールイベントを検知し、要素にアニメーションを適用します。


See the Pen フェード by masakazuimai (@masakazuimai) on CodePen.


コードの動作説明

  1. HTML:
    • .box クラスを持つ要素がスクロールアニメーションの対象です。
  2. CSS:
    • 初期状態(非表示・下に配置)とアニメーション状態を定義。
    • .show クラスが付与されると、要素が表示され、元の位置にスライドします。
  3. JavaScript:
    • getBoundingClientRect() で各要素の位置を計算。
    • スクロール位置に応じて .show クラスを動的に付与。

カスタマイズアイデア

  • アニメーションの種類を増やす:
    • フェードイン、回転、ズームなどを追加。
  • スクロール量の調整:
    • 表示タイミングを細かく調整。
  • アニメーションの遅延:
    • 各要素に異なる遅延を設定して、連続的に表示させる。

まとめ

今回の記事では、CSSとJavaScriptを使ったスクロールアニメーションの基本的な実装方法を解説しました。シンプルなコード例を元に、自分のプロジェクトでカスタマイズしてみてください。

スクロールアニメーションを加えることで、より魅力的でインタラクティブなWebサイトを作ることができます!

✪ 画像素材がないものはランダムで表示されるようになっています。フリー素材などでご用意ください。

おすすめChromeプラグイン一覧

プラグイン名特徴
GoFullPageウェブページ全体のスクリーンショットを簡単に取得できるブラウザ拡張機能です。
ColorZilla色を抽出するための拡張機能です。
WhatFontウェブページ上のフォントの情報を簡単に確認できるブラウザ拡張機能です。
PerfectPixelデザイナーが作成したデザインと実際にコーディングされたウェブページがどの程度一致しているかを確認・調整するためのブラウザ拡張機能です。

模写の手順

ステップ内容
ステップ 1構図を手書きか全画面スクショ(Go full page等)した後、ペイントツールで四角で囲い、大まかなclass,命名規則をあらかじめ決める。
ステップ 2HTMLの基本構造を作成する
ステップ 3CSSでレイアウトを模写する
ステップ 4 中級〜JavaScriptを追加して動きを再現する
ステップ 5最終調整を行い、検証ツールやPerfectPixel(chromeプラグイン)などで完成を確認する。