CSSのanimationプロパティにある「steps()」を使って画像をアニメーションさせる方法を紹介します。イメージとしてはパラパラ漫画のような感じで動きをつけていきます。

画像アニメーションの作り方

stepsを使って画像をアニメーションさせるには、実際に表示させる幅と高さを1コマとして必要なコマ数だけ作成し、それを1つの画像として書き出します。画像は縦、横どちらに並べても大丈夫です。

アニメーションさせる画像を作成する

アニメーション方法

作成した画像をアニメーションさせるには、背景画像として読み込ませます。

.img-anime {
  width: 100px;
  height: 100px;
  background: url(furiko.png) no-repeat;
  animation: furiko .5s steps(5) infinite;
}

animationプロパティで指定している「steps()」によって画像を動かすことができます。カッコ内の数字がコマ数になります。サンプルでは5つのコマを用意しているので「steps(5)」と指定をしています。アニメーション時間に関してはお好みで設定をすれば良いですが、時間が短い方が滑らかな動きになります。

あとは、keyframesを使って背景画像の位置をずらしていけば完成です。

@keyframes furiko {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -355px 0;
  }
}
 

GIFアニメーションなどもありますが、CSSのstepsを使うだけでも画像をアニメーションさせることができますので、試しにいろいろ作ってみてください。

その他の記事