Vue.js的動畫庫提供了許多不同類型的動畫。其中之一是bounce in動畫,它可以實現元素以一組“彈跳”效果出現。
<transition name="bounce-in"> <div v-show="show">這里是元素內容</div> </transition>
在上面的代碼中,動畫名稱為“bounce-in”,并且將其應用于了一個div元素。在Vue實例中,show的值來控制元素的出現和隱藏。
接下來,我們需要在CSS中定義這個動畫。
.bounce-in-enter-active, .bounce-in-leave-active { animation: bounce-in 0.5s; } @keyframes bounce-in { 0% { transform: scale(0.3); } 50% { transform: scale(1.05); } 70% { transform: scale(0.9); } 100% { transform: scale(1); } }
在這段CSS代碼中,我們定義了兩個類:.bounce-in-enter-active和.bounce-in-leave-active,它們會在元素進入或離開時應用。我們還定義了一個名為“bounce-in”的動畫,并設置了其持續時間。動畫的核心是在keyframes中定義的四個不同的變換狀態。通過用transform屬性來扭曲元素的大小和位置,實現元素以一組“彈跳”的方式出現的效果。
最后,當我們在Vue實例中設置show為true時,元素就會以bounce-in動畫的形式出現。反之,當我們將show設置為false時,元素將以相反的方式離開,具有相同的彈跳效果。