web前端vue之CSS过渡效果示例


Posted in Javascript onJanuary 10, 2018

过渡效果在交互体验中的重要性不言而喻。以往我们使用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 相关文章推荐
js函数使用技巧之 setTimeout(function(){},0)
Feb 09 Javascript
jquery+json实现的搜索加分页效果
Mar 31 Javascript
ASP.NET中AJAX 调用实例代码
May 03 Javascript
cookie在javascript中的使用技巧以及隐私在服务器端的设置
Dec 03 Javascript
js toFixed()方法的重写实现精度的统一
Mar 06 Javascript
jQuery实现类似老虎机滚动抽奖效果
Aug 06 Javascript
JavaScript jquery及AJAX小结
Jan 24 Javascript
AngularJS入门(用ng-repeat指令实现循环输出
May 05 Javascript
Bootstrap modal 多弹窗之叠加关闭阴影遮罩问题的解决方法
Feb 27 Javascript
深入探究angular2 UI组件之primeNG用法
Jul 26 Javascript
angularjs 页面自适应高度的方法
Jan 17 Javascript
Vue如何实现验证码输入交互
Dec 07 Vue.js
Vue.js分页组件实现:diVuePagination的使用详解
Jan 10 #Javascript
利用ECharts.js画K线图的方法示例
Jan 10 #Javascript
微信小程序实现图片上传功能实例(前端+PHP后端)
Jan 10 #Javascript
微信小程序实现传参数的几种方法示例
Jan 10 #Javascript
React中常见的动画实现的几种方式
Jan 10 #Javascript
使用async-validator编写Form组件的方法
Jan 10 #Javascript
基于casperjs和resemble.js实现一个像素对比服务详解
Jan 10 #Javascript
You might like
ThinkPHP实现跨模块调用操作方法概述
2014/06/20 PHP
php实现批量压缩图片文件大小的脚本
2014/07/04 PHP
PHP判断来访是搜索引擎蜘蛛还是普通用户的代码小结
2015/09/14 PHP
实现51Map地图接口(示例代码)
2013/11/22 Javascript
详解JavaScript中的异常处理方法
2015/06/16 Javascript
Bootstrap实现下拉菜单效果
2016/04/29 Javascript
JavaScript 函数的执行过程
2016/05/09 Javascript
jQuery实现的右下角广告窗体跟随效果示例
2016/09/16 Javascript
微信小程序 Nginx环境配置详细介绍
2017/02/14 Javascript
Angular.JS中select下拉框设置value的方法
2017/06/20 Javascript
node.js通过axios实现网络请求的方法
2018/03/05 Javascript
react中fetch之cors跨域请求的实现方法
2018/03/14 Javascript
JS动态显示倒计时效果
2019/12/12 Javascript
初步介绍Python中的pydoc模块和distutils模块
2015/04/13 Python
机器学习python实战之决策树
2017/11/01 Python
Python简单实现网页内容抓取功能示例
2018/06/07 Python
Python DataFrame 设置输出不显示index(索引)值的方法
2018/06/07 Python
Python Sympy计算梯度、散度和旋度的实例
2019/12/06 Python
python实现Pyecharts实现动态地图(Map、Geo)
2020/03/25 Python
Django Admin设置应用程序及模型顺序方法详解
2020/04/01 Python
python获取系统内存占用信息的实例方法
2020/07/17 Python
弄清Pytorch显存的分配机制
2020/12/10 Python
卡骆驰新加坡官网:Crocs新加坡
2018/06/12 全球购物
如何获取某个日期是当月的最后一天
2013/12/05 面试题
说一下mysql, oracle等常见数据库的分页实现方案
2012/09/29 面试题
社团活动总结范文
2014/04/26 职场文书
英语故事演讲稿
2014/04/29 职场文书
活动总结报告格式
2014/05/09 职场文书
学习经验演讲稿
2014/05/10 职场文书
英文演讲稿
2014/05/15 职场文书
任命书格式
2014/06/05 职场文书
上课迟到检讨书300字
2014/10/15 职场文书
文明旅游倡议书
2015/04/28 职场文书
Python利用folium实现地图可视化
2021/05/23 Python
pandas中DataFrame检测重复值的实现
2021/05/26 Python
postgresql 删除重复数据案例详解
2021/08/02 PostgreSQL