CSS Scroll-Driven Animations サンプル

スクロールして各デモを体験してください

← 記事に戻る

実例1: スクロール進捗プログレスバー

画面上部のバーに注目

ページをスクロールすると、上部の青いバーが伸びていきます。ページの読了率を視覚的に表示しています。

animation-timeline: scroll(root) で、ページ全体のスクロール量に連動させています。

↓ スクロールしてください ↓

実例2: 要素のフェードイン(view())

カード 1

この要素はビューポートに入ると、下からフェードインします。animation-timeline: view()animation-range: entry を使っています。

カード 2

IntersectionObserverを使わなくても、CSSだけでスクロール連動のフェードインが実現できます。

カード 3

非対応ブラウザでは @supports によるフォールバックで、アニメーションなしの状態が表示されます。

カード 4

GPU描画(transform + opacity)なので、パフォーマンスも良好です。メインスレッドをブロックしません。

カード 5

スクロールを上に戻すとアニメーションも巻き戻ります。これもCSS Scroll-Driven Animationsの特徴です。

↓ パララックスセクションへ ↓

実例3: パララックス風の演出

下のセクションでは背景とテキストが異なる速度でスクロールします。背景は -20% から 20%、テキストは 10% から -10% に移動しています。

パララックスセクション

背景がゆっくりスクロールします

まとめ

このページで紹介した3つのデモは、すべてJavaScriptを一切使わずにCSSだけで実装しています。