スクロールするとふわっと現れる ScrollReveal
よく見かけるコンテンツのパーツごとにふわっとフェードインさせるアニメーションです。
ScrollRevealの使い方
CDNよりスクリプトを読み込み、アニメーションを設定します。
<script src="https://unpkg.com/scrollreveal"></script> <script> window.sr = ScrollReveal({ reset: true ,mobile: true}); sr.reveal( '.left', { origin: 'left' , distance: '100%', duration: 1500 , scale: 0, delay :500 ,opacity: 0,}); sr.reveal( '.right', { origin: 'right' , distance: '100%', duration: 1500 , scale: 1.0, delay :500 ,opacity: 0.5,}); </script> </body>
オプション一覧
origin: どの方向から表れるかを設定する項目:値は’bottom’, ‘left’, ‘top’, ‘right’
distance: どれぐらいの距離からアニメーションを開始するか:値は50%など数値で単位は%,em,px,vwなど
duration: アニメーションが完了するまでの速度:値は100など数値。単位はミリ秒
delay: アニメーション開始までの待機時間:値は100など数値。単位はミリ秒
scale: 何倍のサイズから表れるか設定する項目:値は0〜、基準値は1で等倍
opacity: アニメーション開始時の透明度:値は0.5など。0で透明、1で不透明になる。
mobile: モバイル時でもアニメーションを適用するか
reset: 要素が見えるたびにアニメーション表示させるか
useDelay: delayで設定したアニメーションを適用するタイミング
viewFactor: 要素自身の高さの何%がビューポートに入ったらアニメーションを開始するか:値は1の場合100%を意味する。
オプション使用例
<script> window.sr = ScrollReveal(); sr.reveal('.parallax', { easing: 'ease', //イージング('ease' 'ease-in' 'ease-out' 'ease-in-out'など) origin: 'bottom', //アニメーションの基点 duration: 500, //アニメーションの時間 distance: '50px', //アニメーションの距離 delay: 0, //アニメーションの遅延 useDelay: 'always', //遅延の条件('always' 'once' 'onload') opacity: 0, //アニメーション開始時の透明度 scale: 0.8, //アニメーション開始時のスケール container: '.fooContainer', //アニメーションを実装するコンテナ rotate: { x: 0, y: 0, z: 0 }, //アニメーション開始時の傾き mobile: true, //falseにするとモバイルでのアニメーション停止 reset: false, //trueにすると表示の度にアニメーション再生 viewFactor: 0.2, //アニメーションを開始するために必要な要素の表示割合 viewOffset: { top: 0, right: 0, bottom: 0, left: 0 } //要素のオフセット。固定ヘッダーなどがある場合に指定 }); </script>
html内の各タグにclassを設定する
<div class="left"> ふわっ動かしたいコンテンツ </div>