問題
6スクロールスナップを実装しよう
スクロールスナップとは、スクロールした時に、特定の画面領域でぴったりスクロールが止まる動きのことを言います。 最近のWebサイトではよく使われている技術なので実装できるようにしておきましょう。
HTML/CSSの問題に挑戦しよう!
問題
「スクロールスナップを実装しよう」
お洒落なサイトなどで実装されているスクロールスナップを実装してみましょう。
画像につきましては https://ninjacode.work/assets/img/kv.png こちらを使用して大丈夫です。
見本を動画を参考に作成してください。
期待する画面
解答と解説(スクロールスナップを実装しよう)
解説
※ご登録後トークルーム下部にあるメニュー内
「無料問題集※解答付き」を押すと
解答閲覧用URLが届きます
スクロールさせる際はまず親要素に対して
overflow: auto; と scroll-snap-type: y mandatory; を付与します。
その際に横にスクロールさせたい場合は、scroll-snap-type: x mandatory; としましょう。
中に入ったリスト要素に対してheight: 100vhを付与し画像を浮かして真ん中にすれば出来上がりです。
補足
スナップスクロールを実装する場合、うまく機能させる為にoverflow: auto; と scroll-snap-type: y mandatory; は必ずセットで付与するように覚えておきましょう。
リスト要素は高さを100vhと指定することで、画面の高さいっぱいに要素が広がってくれます。
そこにscroll-snap-align: start;を付与することで、スナップスクロールが実現されます。