【Vue】基礎系列(九)動畫與過渡-trasition-enter-leave
theme: vue-pro highlight: a11y-dark
嗨!~ 大家好,我是YK菌 🐷 ,一個微系前端 ✨,愛思考,愛總結,愛記錄,愛分享 🏹,歡迎關注我呀 😘 ~ [微信號:
yk2012yk2012
,微信公眾號:ykyk2012
]
「這是我參與11月更文挑戰的第22天,活動詳情查看:2021最後一次更文挑戰」
今天我們主要來學習Vue中的動畫與過渡
1. vue動畫的理解
操作css的trasition
或animation
vue會給目標元素添加/移除特定的class
2. 基本過渡動畫的編碼
-
在目標元素外包裹
<transition name="xxx">
-
定義class樣式
- 指定過渡樣式: transition
- 指定隱藏時的樣式: opacity/其它
3. 過渡的類名
xxx-enter-active
: 指定顯示的transitionxxx-leave-active
: 指定隱藏的transitionxxx-enter
: 指定隱藏時的樣式
過渡代碼示例
```css / 顯示/隱藏的過渡效果 / .xxx-enter-active, .xxx-leave-active{ transition: opacity 0.5s; } / 隱藏時的樣式 / .xxx-enter, .xxx-leave-to{ opacity: 0; }
.move-enter-active { transition: all 1s; } .move-leave-active { transition: all 3s; } .move-enter, .move-leave-to { opacity: 0; transition: translateX(20px); } ```
```html
YK菌學前端
YK菌天天學前端
<div>
<button @click="isShow = !isShow">顯示/隱藏</button>
<transition-group name="hello" appear>
<h1 v-show="!isShow" key="1">你好啊!</h1>
<h1 v-show="isShow" key="2">尚硅谷!</h1>
</transition-group>
</div>
```
動畫代碼示例
css
.bounce-enter-active {
animation: bounce-in .5s;
}
.bounce-leave-active {
animation: bounce-in .5s reverse;
}
@keyframes bounce-in {
0% {
transform: scale(0);
}
50% {
transform: scale(1.5);
}
100% {
transform: scale(1);
}
}
```html
YK菌一直在學前端
```
```html
```
使用第三方動畫庫
https://animate.style/
```html
```
總結
作用:在插入、更新或移除 DOM元素時,在合適的時候給元素添加樣式類名。
寫法:
-
準備好樣式:
- 元素進入的樣式:
- v-enter:進入的起點
- v-enter-active:進入過程中
- v-enter-to:進入的終點
- 元素離開的樣式:
- v-leave:離開的起點
- v-leave-active:離開過程中
- v-leave-to:離開的終點
- 元素進入的樣式:
-
使用
<transition>
包裹要過度的元素,並配置name屬性:
html
<transition name="hello">
<h1 v-show="isShow">你好啊!</h1>
</transition>
- 備註:若有多個元素需要過渡,則需要使用:
<transition-group>
,且每個元素都要指定key
值。
最後,歡迎關注我的專欄,和YK菌做好朋友
- 【TS】快速上手(四)配置選項 - 編譯選項compilerOptions
- 【LeetCode】圖解反轉鏈表 - 迭代 - 遞歸
- 【LeetCode】最大子序和從O(N^3)到O(N) - 暴力初探 - 分而治之 - 在線處理
- 【JS】JavaScript基礎知識自我檢查大過關(第三關)函數定義與調用
- 【Vue】高級系列(六)Vue-cli配置代理 -demo3-GitHub用户查詢-axios
- 【Vue】高級系列(五)組件間通信
- 【Vue】高級系列(四)Vue模塊化實戰-demo2-任務清單todoList
- 【TS】快速上手(二)類型聲明
- 【Vue】高級系列(三)Vue模塊化實戰-demo1-動態評價頁面
- 【Vue】高級系列(二)Vue相關小知識
- 【Vue】高級系列(一)Vue組件定義與使用 - 非單文件組件 - 單文件組件 - VueComponent
- 【Vue】基礎系列(十一)Vue指令-常用內置指令-自定義指令-全局指令-局部指令
- 【Vue】基礎系列(九)動畫與過渡-trasition-enter-leave
- 【Vue】基礎系列(八)生命週期 - 初始化顯示 - 更新狀態 - 死亡狀態 - 父子組件
- 【Vue】基礎系列(七)v-model - 自動收集數據 - 表單數據自動更新
- 【Vue】基礎系列(六)事件處理 - 綁定監聽 - 事件修飾符 - 按鍵修飾符
- 【Vue】基礎系列(四)樣式綁定 - class - style
- 【Vue】基礎系列(二)模板語法 - 插值語法 - 指令語法 - | v-bind | v-model | v-on | v-if | v- show
- 【Vue】實戰項目:電商後台管理系統(九)項目優化 上線
- 【Vue】實戰項目:電商後台管理系統(八)數據統計模塊