CSS3でアニメーションを作ってみた
動機
今年の頭にニコ動を徘徊してたら下記動画のアニメーション部分が面白い事してるなーと思って眺めてたところ、これのフェードイン、フェードアウトのエフェクト程度ならCSS3の技術使ってできるんじゃないかなーと思って試しに実装してみたのがきっかけ。
出来たもの
jsdo.it(http://jsdo.it/aroma_black/AtQj)に投下したものの横幅の関係で同じ色が縦一列に並ばないのでZIPを置いておきます。
動作はChrome(ver 10.0.642.2 dev)のMac, Win, Linux版で確認しています。
同じWebkitのSafariでも動くと思ったらclassList()メソッドが実装されていないらしく動きませんでした。
仕組み
ただ単にsetIntervalでクラス追加を行ってそのクラスにアニメーションを行う定義をしているだけです。
終了時にイベントでひろってアニメーションのクラスを外すという事をしています。
動画との違い
見た目では、
- 元動画はフェードイン時の四角の色が少し明るい色になっている
- 四角の中身が固定(ニコ動のは歌詞とアイコンが表示される)
- 四角が消えるまでの時間がランダム(たぶん)
- 元動画は6行7列
ぐらいですかね?
アイコンは適当なものが無かったため、先日公開されたW3CのCSS3のものを使ってみましたw