詳解vue2.0 transition 多個元素嵌套使用過渡
在做vue的demo的時候遇到一個問題,多個嵌套的元素如何設(shè)置transition?
我的代碼:
<div id='demo'>
<button @click="show = !show">按鈕</button>
<transition name='move'>
<div class="v-d" v-show="show">
<div class='in in_move'></div>
</div>
</transition>
</div>
//css
.v-d{
width:50px;
height:50px;
padding:10px;
transition: all 0.4s linear
}
.v-d .in{
width:30px;
height:30px;
background:#000;
transition: all 0.4s linear
}
.move-enter-active, .move-leave-active{
transition: all 0.4s linear
}
.move-enter, .move-leave-active{
opacity: 0;
transform: translateX(30px);
}
.move-enter, .move-leave-active .in{
transform: rotate(45deg)
}
//js
window.onload = function(){
new Vue({
el: '#demo',
data: {
show: false
}
})
}
運行代碼后發(fā)現(xiàn)這個類名的過渡:
.move-enter, .move-leave-active .in{
transform: rotate(180deg)
}
沒起作用,我開始以為這種嵌套的寫法不支持,但是后來經(jīng)過多次嘗試后發(fā)現(xiàn),原來transition 應(yīng)用的類名不能和基本樣的類名一樣,也就是.in這個類必須換名才能起作用,所以在改動下面代碼:
<transition name='move'>
<div class="v-d">
<div class='in in_move'></div>
</div>
</transition>
.move-enter, .move-leave-active .in_move{
transform: rotate(180deg)
}
改完運行就ok了,實現(xiàn)了元素旋轉(zhuǎn)和位移。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Vue-Cli如何在index.html中進行環(huán)境判斷
這篇文章主要介紹了Vue-Cli如何在index.html中進行環(huán)境判斷問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-03-03
vue+element-ui JYAdmin后臺管理系統(tǒng)模板解析
這篇文章主要介紹了vue+element-ui JYAdmin后臺管理系統(tǒng)模板解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07
element-ui配合node實現(xiàn)自定義上傳文件方式
這篇文章主要介紹了element-ui配合node實現(xiàn)自定義上傳文件方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-09-09

