(自分用めも)背景画像の無限スクロールをCSSアニメーションでつくる
この手の話題はいろいろなところで既出だとは思いますが、自分用にメモをば。
CSSアニメーションをつかって背景画像の無限スクロールをする方法です。画像の横スクロールをしたくなったのですが、以下のようにしてみました。
CSSアニメーションのキーフレームに background-position
(背景画像のオフセット量)を設定して、背景画像を3秒で画像1枚分だけ横スクロールさせます。
.toppage-header__bg { width: 100%; height: 1000px; background-image: url('images/top_bg.png'); animation-name: scroll-header-bg; animation-duration: 3s; /*3秒で画像1枚分スクロールする*/ animation-timing-function: linear; /*再生速度を一定にする*/ animation-iteration-count: infinite; /*アニメーションの無限再生*/ } @keyframes scroll-header-bg { 0% { background-position: 0 0; /*初期値を設定する*/ } 100% { background-position: -2464px 0; /*画像サイズに合わせて変更する(負号で左スクロール)*/ } }
CSSアニメーションとかトランジションとか、毎度プロパティ名とか忘れちゃうのですよね。というわけでメモしてみたのでした。 ただいまみんなでつくるダンジョンの紹介ページを作っているのですが、CSSアニメーションをちょいちょいと使ってみようと思っています。アニメーションを入れるのは楽しいなぁ。
ではでは。