web前端vue之CSS过渡效果示例
过渡效果在交互体验中的重要性不言而喻。以往我们使用js或Jquery添加或移除元素的类(class),搭配CSS中定义好的样式,再引用一些javascript库之后,可以做作出非常复杂,惊艳的动态效果,不过这套方法还是太繁琐。
vue.js内置了一套过渡系统,可以在元素从DOM中插入或移除时自动应用过渡效果。vue会在是党的时机触发css过渡或者动画,你也可以提供相应的javascript钩子函数在过渡过程中执行自定义的DOM操作。
每个过渡效果,都需要在目标元素上使用transition特性。
<div v-if="show" transition="my-style">显示</div>
transition的特性可以与以下指令一起搭配使用:
1.v-if 2.v-show 3.v-for 4.动态组件
还有其它的一些指令或资源,大家可以自行查找。
完整代码实例如下:
<div v-if="show" :transition="expand"></div> // expand必需事先定义好,expand后面写样式要用(关键) <transition name="expand"><div v-if="show">显示</div></transition>这样的嵌套也可以 .expand-transition { // 必需写 transition: all .3s ease; height: 30px; padding: 10px; background-color: #eee; overflow: hidden; } .expand-enter{ //开始进入过渡,元素被插入生效 transition:opacity .5s; } .fade-leave-active { // 结束状态 opacity:0; }
当然有开始肯定是有结束的状态,它其实是有四个(CSS类)名在enter/leave的状态中切换。
1.v-enter:定义进入过渡的开始状态,在元素被插入的时生效,在下一个帧移除
2.v-enter-active:定义进入过渡的结束状态,在元素被插入的时候生效,在transition/animation完成之后移除
3.v-leave:定义离开过渡的开始状态,在离开过渡被触发时生效,在下一帧移除
4.v-leave-active:定义离开过渡的开始状态,在离开过渡被触发时生效,在下一个帧移除
根据以上四个状态,就可以完整的写好一个css的一个过渡效果,比如页面从窗口左侧划入进场,这样是不是很酷啊?
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- windows下搭建spark测试环境
- 微信小程序实时语音识别实践
- 轻量安全的部署方案
- 阿里2020.7.31笔试
- 聊聊dubbo-go的PrometheusReporter
- 聊聊dubbo-go的apolloConfiguration
- 看了这篇,关于浏览器缓存你还有哪些疑问?
- 深入分析Volatile的实现原理
- Java Collection Framework : List
- String类的equals方法
- 必须同时重写hashcode和equals方法的原因
- Springboot中使用Redis的发布/订阅模式
- Java 几种排序算法 与时间空间复杂度
- JAVA程序员必须要学会的网络知识
- 计算机网络学习--数据链路层