scroll-timelineとは?CSSだけでスクロール連動アニメーションを作る方法
スポンサーリンク

こんにちは!静岡県浜松市でWEBデザイナーをしています小瀧です。

近年のWebデザインでは、スクロールに応じて動くアニメーションが人気です!
これまではJavaScriptを使って制御するのが一般的でしたが、最新のCSSでは 「scroll-timeline」 というプロパティを使うことで CSSだけでスクロール連動アニメーションを実装 できるようになりました。

今回は、「scroll-timeline」の使い方と具体的な実装例を詳しく解説します!


scroll-timelineとは?

scroll-timelineの基本

「scroll-timeline」は、要素のスクロール量をアニメーションのタイムラインとして扱うことができるCSSの新しいプロパティです。 今まではJavaScriptのScrollイベントを使ってアニメーションを制御するのが一般的でしたが、このプロパティを使えば CSSだけで簡単にスクロール連動のアニメーション を作成できます。

scroll-timelineの主な特徴

  • JavaScriptを使わずにスクロールアニメーションを制御できる
  • CSSの @keyframes と組み合わせて簡単にアニメーションを作成
  • パフォーマンスが向上し、スムーズな動作が可能

scroll-timelineの基本的な使い方

scroll-timelineの基本構文

まずは、 @scroll-timeline を定義し、アニメーションに適用する方法を見てみましょう。

@scroll-timeline my-timeline {
 source: selector(#scroll-container); 
 orientation: block;
 } 
@keyframes fade-in { 
 from { opacity: 0; } to { opacity: 1; } 
} 
.target-element {
 animation: fade-in linear forwards; animation-timeline: my-timeline;
 } 

コードの解説

  • @scroll-timeline my-timeline でスクロールのタイムラインを作成
  • source: selector(#scroll-container);で対象のスクロール要素を指定
  • animation-timeline: my-timeline; でアニメーションに適用

scroll-timelineの実践例

スクロールでフェードインするアニメーション

以下の例では、スクロールに応じて要素がフェードインするアニメーションを作成します。

See the Pen
Untitled
by 小瀧賢 (@ekwwawpb-the-styleful)
on CodePen.

実装ポイント

  • #scroll-container のスクロールをトリガーにしてtarget-elementopacity を変化
  • CSSだけでスクロールに連動したフェードインを実現
  • JavaScript不要で軽量なアニメーション

scroll-timelineのメリットとデメリット

メリット

  • JavaScript不要で簡単にスクロール連動アニメーションを実装できる
  • ブラウザの最適化が効きやすく、スムーズな動作が可能
  • CSSのみで制御できるため、コードの管理がしやすい

デメリット

  • まだすべてのブラウザでサポートされていない
  • JavaScriptに比べてカスタマイズの自由度が低い

まとめ

CSSだけでスクロール連動アニメーションが可能に!

「scroll-timeline」を活用すれば、CSSだけでスクロールに応じたアニメーションを実装できます。
特に 軽量でパフォーマンスの高いアニメーションを作りたい場合に最適です。
「Webサイトにスクロールアニメーションを導入したい」「Web制作を相談したい」という方は、静岡県浜松市の「satokotadesign」にお気軽にご相談ください!

 

satokotadesignキャンペーン実施中!

浜松市の飲食店限定|ホームページ無料作成サービス
ぶっちゃけ無料相談会!ホームページ制作の悩み話してみませんか?
satokotadesign4周年記念キャンペーン

静岡県浜松市でホームページ制作ならsatokotadesign
静岡県浜松市でホームページ制作ならsatokotadesign

スポンサーリンク
おすすめの記事