Merge pull request #3172 from huanghong1125/fix-popper
解决dropdown弹出动画异常
This commit is contained in:
commit
57ad07f2ea
6 changed files with 37 additions and 4 deletions
|
@ -20,7 +20,7 @@
|
|||
<Icon type="arrow-down-b" :class="[prefixCls + '-arrow']"></Icon>
|
||||
</slot>
|
||||
</div>
|
||||
<transition name="slide-up">
|
||||
<transition name="transition-drop">
|
||||
<Drop
|
||||
v-show="visible"
|
||||
:class="{ [prefixCls + '-transfer']: transfer }"
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
></i-input>
|
||||
</slot>
|
||||
</div>
|
||||
<transition :name="transition">
|
||||
<transition name="transition-drop">
|
||||
<Drop
|
||||
@click.native="handleTransferClick"
|
||||
v-show="opened"
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
@mouseenter="handleMouseenter"
|
||||
@mouseleave="handleMouseleave">
|
||||
<div :class="[prefixCls + '-rel']" ref="reference" @click="handleClick"><slot></slot></div>
|
||||
<transition :name="transition">
|
||||
<transition name="transition-drop">
|
||||
<Drop
|
||||
:class="dropdownCls"
|
||||
v-show="currentVisible"
|
||||
|
|
|
@ -46,6 +46,12 @@
|
|||
computeStyle:{
|
||||
gpuAcceleration: false,
|
||||
}
|
||||
},
|
||||
onCreate:()=>{
|
||||
this.resetTransformOrigin();
|
||||
},
|
||||
onUpdate:()=>{
|
||||
this.resetTransformOrigin();
|
||||
}
|
||||
});
|
||||
});
|
||||
|
@ -64,6 +70,10 @@
|
|||
}
|
||||
}, 300);
|
||||
}
|
||||
},
|
||||
resetTransformOrigin() {
|
||||
let placement = this.popper.popper.getAttribute('x-placement').split('-')[0];
|
||||
this.popper.popper.style.transformOrigin = placement==='bottom'?'center top':'center bottom';
|
||||
}
|
||||
},
|
||||
created () {
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
<Icon type="arrow-down-b" :class="[prefixCls + '-arrow']" v-if="!remote"></Icon>
|
||||
</slot>
|
||||
</div>
|
||||
<transition :name="transitionName">
|
||||
<transition name="transition-drop">
|
||||
<Drop
|
||||
:class="dropdownCls"
|
||||
v-show="dropVisible"
|
||||
|
|
|
@ -9,11 +9,34 @@
|
|||
}
|
||||
}
|
||||
|
||||
.slide-motion(transition-drop, ivuTransitionDrop);
|
||||
.slide-motion(slide-up, ivuSlideUp);
|
||||
.slide-motion(slide-down, ivuSlideDown);
|
||||
.slide-motion(slide-left, ivuSlideLeft);
|
||||
.slide-motion(slide-right, ivuSlideRight);
|
||||
|
||||
@keyframes ivuTransitionDropIn {
|
||||
0% {
|
||||
opacity: 0;
|
||||
transform: scaleY(0.8);
|
||||
}
|
||||
100% {
|
||||
opacity: 1;
|
||||
transform: scaleY(1);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes ivuTransitionDropOut {
|
||||
0% {
|
||||
opacity: 1;
|
||||
transform: scaleY(1);
|
||||
}
|
||||
100% {
|
||||
opacity: 0;
|
||||
transform: scaleY(0.8);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes ivuSlideUpIn {
|
||||
0% {
|
||||
opacity: 0;
|
||||
|
|
Loading…
Add table
Reference in a new issue