![](https://kekenta-it-blog.com/wp-content/uploads/2023/07/キリッ-150x150.jpg)
こんにちは! ケケンタです。
この記事では、
メインビジュアル下までスクロールすると固定ヘッダーの背景画像がふわっと浮かび上がる実装
についてご紹介をしていきます。
具体的な動き
See the Pen Untitled by ケケンタ (@lgshifbg-the-looper) on CodePen.
目次
ヘッダー背景をフワッと浮かび上がらせるのにはひと手間必要
ヘッダーに限らず、背景画像をフワッと浮かび上がらせるのは、簡単なようで少し手間がかかります。
その理由は
です。
したがって、「フワッ」とやわらかく背景画像を出現させるためには、background以外の要素へtransitionやanimationを適用する必要があります。
解説
![](https://kekenta-it-blog.com/wp-content/uploads/2023/07/キリッ-150x150.jpg)
「background-imageはanimationやtransitionを使用して動かすことができない」という事情を踏まえた上で、今回の実装では主に以下の仕様とすることで「ヘッダーの背景画像をフワッと浮かび上がらせる動き」を実現しています。
- ヘッダーの疑似要素(after)に背景画像を設定する
- ヘッダーの疑似要素に初期値としてopacity: 0;を指定し、透過させておく
- ヘッダーの疑似要素にtransitionを設定しておく(デモでは0.5を設定)
- メインビジュアル(濃いグレー)の下までスクロールしたら、ヘッダーの疑似要素のopacityを1にする=ヘッダーの背景画像を可視化する
- メインビジュアル(濃いグレー)の上へ戻ったら、ヘッダーの疑似要素を再び透過する=ヘッダーの背景画像を透過する
このように、ヘッダーそのものではなくヘッダーの疑似要素に背景画像を設定し、疑似要素をtransitionでコントロールすることで、ヘッダーの背景画像がフワッと浮かび上がっているような演出が実現可能です。
![](https://kekenta-it-blog.com/wp-content/uploads/2023/07/キリッ-150x150.jpg)
解説は以上となります!
この記事がお役に立ったなら何よりです。
コメント