如何在Vue中外链CSS样式?
在Vue中,可以使用`` 标签来写内部样式,也可以使用外部样式。如果需要外链CSS样式表,我们需要使用`` 标签,将CSS单独写在一个文件里,然后在HTML模板中引入CSS文件。
我们可以在HTML文件中的``标签内部加入以下代码:
<head>
<link rel=\"stylesheet\" type=\"text/css\" href=\"your_style.css\">
</head>
这里的 `href` 指的是样式文件的路径。
Vue中CSS动画是如何实现的?
Vue提供了内置的过渡封装组件,以动画库的形式给用户提供了仓库。动画效果在数据改变时触发,它们可以通过 v-bind 来进行绑定,变化的同时发生的动画过渡效果
我们可以使用Vue的 `transition` 组件包裹需要添加动画的组件。这个组件有 several hooks ,包括`before-enter`、`enter` 、`after-enter`、`leave`、`after-leave`等。
<template>
<div v-if=\"showBox\">
<transition
v-on:before-enter=\"beforeEnter\"
v-on:enter=\"enter\"
v-on:leave=\"leave\"
>
<div class=\"box\"/>
</transition>
</div>
</template>
<script>
export default {
data: function () {
return {
showBox: false
}
},
methods: {
beforeEnter: function (el) {
el.style.opacity = 0
},
enter: function (el, done) {
anime({
targets: el,
opacity: 1,
duration: 1000,
complete: done
})
},
leave: function (el, done) {
anime({
targets: el,
opacity: 0,
duration: 1000,
complete: done
})
}
}
}
</script>
在上面的Vue组件中,当`showBox`为真时,`<div>`标签后面的内容将会触发动画。 为了能够添加自定义的CSS动画,我们分别定义了`beforeEnter`、`enter`和`leave`函数。 这里,我们使用了非Vue的JS库`anime.js`来管理animation元素的过渡。 完整的demo如下所示: