CSSで徐々に変化させるアニメーション効果をつける
CSSで、マウスオーバー時に、徐々に色が変化したり、形が変化するようなアニメーション効果を付ける方法です。
CSS3で実現
例えば、マウスオーバー時に色を徐々に変化させたい場合には、以下のように書きます。
a{
transition:all 0.8s ease;
color:#000;
}
a:hover{
color:#fff;
}
transitionは時間的な変化を指定するCSS3のプロパティです。
本来は、
・transition-property(変化を適用するプロパティを,で指定。allですべてのプロパティ)
・transition-duration(変化が完了するまでの時間:1sで1秒)
・transition-timing-function(変化の進行割合)
・transition-delay(変化を開始する時間)
の4つのプロパティをまとめて指定するプロパティです。
この中で分かりにくいのはtransition-timimg-functionです。
これは、変化が起こる時間帯を、はじめの方に急激に起こすか、終わりの方に急激に起こすか、一定した変化にするか、といったことを決めるものです。
値には、
・ease(開始と官僚を滑らかに:初期値)
・linear(一定速度)
・ease-in(ゆっくり始まる)
・ease-out(ゆっくり終わる)
・ease-in-out(ゆっくり始まり、ゆっくり終わる)
・cubic-bezier(数値,数値,数値,数値)
があります。
上記の例ではtransition-delayは省略しています。
黒い文字が、マウスオーバーで徐々に白くなります。
関連記事