最新文章專題視頻專題問(wèn)答1問(wèn)答10問(wèn)答100問(wèn)答1000問(wèn)答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問(wèn)答文章1 問(wèn)答文章501 問(wèn)答文章1001 問(wèn)答文章1501 問(wèn)答文章2001 問(wèn)答文章2501 問(wèn)答文章3001 問(wèn)答文章3501 問(wèn)答文章4001 問(wèn)答文章4501 問(wèn)答文章5001 問(wèn)答文章5501 問(wèn)答文章6001 問(wèn)答文章6501 問(wèn)答文章7001 問(wèn)答文章7501 問(wèn)答文章8001 問(wèn)答文章8501 問(wèn)答文章9001 問(wèn)答文章9501
當(dāng)前位置: 首頁(yè) - 科技 - 知識(shí)百科 - 正文

Vue.js之css實(shí)現(xiàn)過(guò)度動(dòng)畫(huà)

來(lái)源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 20:01:12
文檔

Vue.js之css實(shí)現(xiàn)過(guò)度動(dòng)畫(huà)

Vue.js之css實(shí)現(xiàn)過(guò)度動(dòng)畫(huà):這次給大家?guī)?lái)Vue.js之css實(shí)現(xiàn)過(guò)度動(dòng)畫(huà),Vue.js的css實(shí)現(xiàn)過(guò)度動(dòng)畫(huà)注意事項(xiàng)有哪些,下面就是實(shí)戰(zhàn)案例,一起來(lái)看一下。transition 動(dòng)畫(huà)<template> <div> <button @click="show = !show">Togg
推薦度:
導(dǎo)讀Vue.js之css實(shí)現(xiàn)過(guò)度動(dòng)畫(huà):這次給大家?guī)?lái)Vue.js之css實(shí)現(xiàn)過(guò)度動(dòng)畫(huà),Vue.js的css實(shí)現(xiàn)過(guò)度動(dòng)畫(huà)注意事項(xiàng)有哪些,下面就是實(shí)戰(zhàn)案例,一起來(lái)看一下。transition 動(dòng)畫(huà)<template> <div> <button @click="show = !show">Togg

這次給大家?guī)?lái)Vue.js之css實(shí)現(xiàn)過(guò)度動(dòng)畫(huà),Vue.js的css實(shí)現(xiàn)過(guò)度動(dòng)畫(huà)注意事項(xiàng)有哪些,下面就是實(shí)戰(zhàn)案例,一起來(lái)看一下。

transition 動(dòng)畫(huà)

<template>
 <div>
 <button @click="show = !show">Toggle</button>
 <div class="ab">
 <transition name="adc">
 <p v-show="show">I am show</p>
 </transition>
 </div>
 </div></template><script>
 export default {
 data () { return { show: true
 }
 }
 }</script><style>
 .adc-enter-active, .adc-leave-active { transition: all 2s ease-out;
 } .adc-enter, .adc-leave-to { opacity: 0;
 }</style>

css-transform動(dòng)畫(huà)

<template> <div> <button @click="show = !show">Toggle</button> <div class="ab"> <transition name="my-trans"> <p v-show="show">I am show</p> </transition> </div> </div></template><script> export default { data () { return { show: true } } }</script><style> .my-trans-enter-active, .my-trans-leave-active { transition: all .5s ease-out; } .my-trans-enter { transform: translateY(-100px); opacity: 0; } .my-trans-leave-active { transform: translateY(100px); }</style>

css-transform動(dòng)畫(huà)

動(dòng)態(tài)組件

<template>
 <div>
 <button @click="onToggle">Toggle</button>
 <div class="ab">
 <transition name="fade">
 //動(dòng)態(tài)組件 <div :is="componentView"></div>
 </transition>
 </div>
 </div></template><script>
 import comA from './components/a.vue'
 import comB from './components/b.vue'
 export default { components: {comA, comB},
 data () { return { componentView: 'com-a'
 }
 }, methods: {
 onToggle () { if (this.componentView === 'com-a') { this.componentView = 'com-b'
 } else { this.componentView = 'com-a'
 }
 }
 }
 }</script><style>
 .fade-enter-active, .fade-leave-active { transition: all 2s ease-out;
 } .fade-enter, .fade-leave-to { opacity: 0;
 }</style>

動(dòng)態(tài)組件,mode為默認(rèn)

同時(shí)生效的進(jìn)入和離開(kāi)的過(guò)渡不能滿足所有要求,所以 Vue 提供了 過(guò)渡模式
in-out: 新元素先進(jìn)行過(guò)渡,完成之后當(dāng)前元素過(guò)渡離開(kāi)。
out-in: 當(dāng)前元素先進(jìn)行過(guò)渡,完成之后新元素過(guò)渡進(jìn)入。
默認(rèn)情況下是in-out

上述動(dòng)畫(huà),如果設(shè)置mode="out-in"

<transition name="fade" mode="out-in"> <div :is="componentView"></div></transition>
mode="out-in"

注意:如果兩個(gè)標(biāo)簽名相同,是不會(huì)執(zhí)行動(dòng)畫(huà)的,若想執(zhí)行動(dòng)畫(huà),需要給標(biāo)簽設(shè)置不同的key來(lái)加以區(qū)分

<template>
 <div>
 <button @click="show = !show">Toggle</button>
 <div class="ab">
 <transition name="fade" mode="out-in">
 <p v-if="show" >i am show</p>
 <p v-else >not in show</p>
 </transition>
 </div>
 </div></template>

兩個(gè)標(biāo)簽名相同的動(dòng)畫(huà),未設(shè)置不同的key

如果設(shè)置了不同的key,就可以執(zhí)行動(dòng)畫(huà)了

<template>
 <div>
 <button @click="show = !show">Toggle</button>
 <div class="ab">
 <transition name="fade" mode="out-in">
 //設(shè)置不同的key <p v-if="show" key="1">i am show</p>
 <p v-else key="2">not in show</p>
 </transition>
 </div>
 </div></template>

相信看了本文案例你已經(jīng)掌握了方法,更多精彩請(qǐng)關(guān)注Gxl網(wǎng)其它相關(guān)文章!

推薦閱讀:

Vue.js的計(jì)算屬性和數(shù)據(jù)監(jiān)聽(tīng)

Vue.js的事件綁定 - 內(nèi)置事件綁定、自定義事件綁定

聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

Vue.js之css實(shí)現(xiàn)過(guò)度動(dòng)畫(huà)

Vue.js之css實(shí)現(xiàn)過(guò)度動(dòng)畫(huà):這次給大家?guī)?lái)Vue.js之css實(shí)現(xiàn)過(guò)度動(dòng)畫(huà),Vue.js的css實(shí)現(xiàn)過(guò)度動(dòng)畫(huà)注意事項(xiàng)有哪些,下面就是實(shí)戰(zhàn)案例,一起來(lái)看一下。transition 動(dòng)畫(huà)<template> <div> <button @click="show = !show">Togg
推薦度:
  • 熱門(mén)焦點(diǎn)

最新推薦

猜你喜歡

熱門(mén)推薦

專題
Top