CSS3でマウスオーバーすると画像がぽよんっと動くアニメーション

CSS3でマウスオーバーすると画像がぽよんっと動くアニメーション

CSS3でマウスオーバーすると画像がぽよんっと動くアニメーション


jQueryで簡単に実装できることもあり
どんどんどんどん多様化しているマウスオーバー時のアクションですが、
今回はマウスオーバーすると、ぽよんっ!ぽよよんっ!と動くものを
jQueryではなく、CSS3のアニメーションを使ってつくってみたいと思います。

DEMO
別ウィンドウで開く

上の丸にマウスオーバーしてみてください。
ぽよんっ!

では、さっそく作り方です。
まずは動かす画像を用意します。
今回はこの丸をぽよんっ!とさせます。

sample

HTML

div.boxは真ん中に表示させるために
囲んでいるだけなので必須ではないです。
div.animBallが今回動かすボールを入れる箱となります。

CSS

ベンダープレフィックス ((-webkit-や-moz-など拡張機能であることを明示するための識別子)) のせいで、長くて少しうわーってなってしまいそうなので、ラフに少しだけ解説をしてみます。

animation: animScale 0.4s ease-out;
ここには、アニメーションをどんな風にしてほしいか書いてあります。
今回の場合は、
「animScaleっていうのを使って、0.4秒間で実行してね!動きはease-outな感じでお願いします!」
と注文しています。

「そんなこと言われても、animScaleって何なのサ?」ということで、
@keyframes animScale
の中に、動きを書いていきます。

見た目から想像出来るかと思いますが、
0%, 40%, …というのは、先ほど指定した時間(今回は0.4s)× n%後の状態を表しています。
(ex: 0.4s × 40%(0.4) = 0.16s)
その指定した時間における状態をCSSで書いてあげると、それに間に合うように「あっ大きくならなきゃ!」「今度は小さく!!」というようにぽよぽよします。

ぽよぽよアニメーションさせしたいときは、ぜひ使ってみてください。
何か間違っている点などありましたら、ご指摘ください!

こちらを参考にさせていだきました。

CSS3アニメーションで心地良いモーションを作る|1 pixel|サイバーエージェント公式クリエイターズブログ

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">