[Vue.js] transitionタグによるアニメーション効果

Vue.jsにはtransitionという機能があり、これを使うと簡単にアニメーションを実装することができます。ボタンを押したときのコンテンツの表示・非表示などのアニメーションで活躍します。

transitionの書式(HTML)

基本的な使い方はアニメーションを設定したい要素を<transition>タグで囲みます。

[要素がひとつの場合]

[要素が複数の場合]

HTMLを作成したら、CSSを設定します。

transitionの書式(CSS)

transitionではCSSの設定が用意されています。出現時と消滅時に3つずつ決められたclass名があります。その他、移動中のCSSも用意されています。アニメーション実行時にHTMLに自動的にclass名が付くので、それに対するCSSを指定すればOKです。

出現時のCSS

消滅時のCSS

移動中のCSS

transitionによるアニメーション実例

表示切り替えのボタンを押すと文字が出現・消滅する機能を実装してみます。transitionでアニメーション効果を付けています。

[表示部分HTML]

div id名appで全体を囲みます。

ボタンを作成します。
<button @click=”show=!show”>の@clickはv-on:clickと同じ意味です。@の書き方は短く書くことができるのでVueでは多く使われます。
show=!showの書き方は表示・非表示を実装する時に良く使われます。trueとfalseの2つの切替のとき、showに逆を代入するという意味です。

<transition>
<div v-if=”show”>
transitionによるアニメーション
</div>
</transition>

がアニメーションをさせたい部分になります。

[Vueインスタンス]
こちらは定番のソースです。data:にはshow:trueを指定しておきます。

[CSS]
ここで出現時と消滅時の設定をしています。

これでボタンをクリックすると文字がフワッと現れたり消えたりします。

[表示例]
2020-04-30_23h47_38



Author: webmaster