「要素の中心から拡大するようなアニメーション作ってください」さてどうする
どういうことかというと、
CSS3を使えばtransform-orignを50% 50%にすることで
変形の中心点をすらすことができるので、
これとtransitionやanimationプロパティを組み合わせれば
簡単に実現出来ますね!
「IEで動きませけんど…」
そうでした。
IEを忘れていました。
transitionやanimationはIE10からしか使うことができませんので、
動かすことが必須の場合はこの方法では利用できませんね。
JavaScriptの力を借りましょう
jQueryにはshow()やanimate()という便利なメソッドが用意されています。
これらを使いましょう。
今回は、CSSで予めdisplay:none、widthとheightを0にしておいて、 animation()でもとのサイズに戻しましょう。
やったできました!
「中心点から」ですよ…話聞いてます?
えっ。ははは、いやだなーごませるなんて思ってないですよー
右下に拡大しているのであれば初期位置をずらせばいい
つまり
右下に拡大されているのであれば、
最初の位置を拡大分右下に配置しておいて、
アニメーション終了時に元の位置に戻す、
といったことを行なってあげれば擬似的ではありますが
中心点から拡大しているようにみせることが可能になります。
今回の場合はposition:relativeを設定して、
要素の半分の50pxをtopとleftプロパティに設定して、
それらをanimationで0まで戻してあげるようにしました。
$(function(){
$('.box').show().animate({
top: 0,
left: 0,
width: '100px',
height: '100px'
}, 500);
});