色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

css動畫在vue沒變化

錢琪琛2年前12瀏覽0評論

CSS動畫在Vue中出現沒有變化的可能是因為CSS屬性沒有渲染完成。Vue的渲染周期是異步的,如果沒有等到Vue實例渲染完成,那么CSS動畫也不能正常顯示。

// 錯誤用法
<template>
<div class="container">
<span class="text">Hello world!</span>
</div>
</template>
<style scoped>
.container {
animation: move 1s linear;
}
@keyframes move {
0% {
transform: translateX(-100px);
opacity: 0;
}
100% {
transform: translateX(0);
opacity: 1;
}
}
</style>
// 正確用法
<template>
<div class="container" ref="container">
<span class="text">Hello world!</span>
</div>
</template>
<style scoped>
.container {
animation: move 1s linear;
}
@keyframes move {
0% {
transform: translateX(-100px);
opacity: 0;
}
100% {
transform: translateX(0);
opacity: 1;
}
}
</style>
<script>
export default {
mounted() {
this.$nextTick(() =>{
this.$refs.container.offsetHeight; // 強制重繪
});
},
};
</script>

上面的代碼中有兩種寫法,如果使用錯誤的寫法,CSS動畫是不能正常顯示的。我們可以使用正確的寫法來解決這個問題,使用this.$nextTick()方法來等待渲染完成,然后使用強制重繪的方法來解決CSS動畫不能正常顯示的問題。