$('#abc').addClass('slideout').removeClass('slidein').delay(200).css('display','none');
执行以上语句,slideout
效果显示了,但是 display:none
也执行了,但后又显示了。。。
.slidein .major {
-webkit-animation: fcl-in 200ms linear;
animation: fcl-in 200ms linear;
}
.slideout {
-webkit-animation: slideout-null 200ms;
animation: slideout-null 200ms;
}
.slideout .major {
-webkit-animation: fcl-out 200ms linear;
animation: fcl-out 200ms linear;
}
@keyframes fcl-in {
from {
-webkit-transform: translate3d(100%, 0, 0);
transform: translate3d(100%, 0, 0);
}
to {
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
}
@keyframes fcl-out {
from {
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
to {
-webkit-transform: translate3d(100%, 0, 0);
transform: translate3d(100%, 0, 0);
}
}
@keyframes slideout-null {
0% {
opacity: 1;
}
100% {
opacity: 1;
}
}
可以在浏览器控制台里面元素那一栏看下
选中对应的元素 然后看右边的样式 看看生效的那个display:block 是哪个类名带来的
基本就知道问题了