组件引用:

  <rain  :rainNumber="20" :rotateDeg="40" :w="1" :h="140"></rain>
 rotateDeg:代表方向,w代表宽,h代表长度      具体的代码如下封装

效果:

封装一个组件:

<template><div class="rain"><divv-for="(item,index) in rainNumber":key="index"class="rain-item"ref="rain-item":style="`transform:rotate(${rotateDeg}deg);width:${w}px;height:${h}px;`"><div class="line" :style="`animationDelay:${index*100}ms`"></div></div></div>
</template><script>
export default {props: {rainNumber: {type: Number,default: 0,},rotateDeg: {type: Number,default: 0,},w: {type: Number,default: 0,},h: {type: Number,default: 0,},},mounted() {this.randomRain();},methods: {randomRain() {let rainArr = this.$refs["rain-item"];// console.log(rainArr);rainArr.forEach((item) => {// console.log(item.children);item.style.top = Math.floor(Math.random() * 0 + 1) + "px";item.style.left = Math.floor(Math.random() * 2000 + 1) + "px";});},},
};
</script><style lang='less' scoped>
.rain {width: 100%;height: 100vh;position: relative;.rain-item {position: absolute;width: 2px;height: 30px;display: inline-block;.line {animation: raining 2s infinite linear;position: absolute;content: "";top: -30px;left: 0;width: 100%;height: 100%;box-shadow: 0px 5px 20px 0px #fcfcfc;background: linear-gradient(to top,rgb(249, 249, 249),rgba(11, 36, 66, 0.1));}}
}
@keyframes raining {0% {top: -0;opacity: 0;}10% {top: 10;opacity: 0.5;}25% {top: 200;opacity: 0.5;}50% {top: 400px;opacity: 1;}75% {top: 600px;opacity: 0.5;}100% {top: 800px;opacity: 0;}
}
</style>

vue页面特效:雨滴、流星相关推荐

  1. vue动画特效-渐变动画和@keyframes

    vue动画特效-渐变动画和@keyframes 过渡 原理 实现 @keyframes动画 使用animated.css 同时使用过渡和@keyframes动画 动画时长的问题 今天学习vue的动画的 ...

  2. php加载外部html,VUE页面加载外部HTML实例详解

    前后端分离,后端提供了接口.但有一部分数据,比较产品说明文件,是存在其他的服务器上的.所以,在页面显示的时候,如果以页面内嵌的形式显示这个说明文件.需要搞点事情以达到想要的效果.本文主要和大家介绍了V ...

  3. vue 页面闪烁的问题_vue页面加载闪烁问题的解决方法

    v-if 和 v-show 的区别 v-if只会在满足条件时才会编译,而v-show不管是否满足条件始终会编译,v-show的显示与隐藏只是简单的切换CSS的display属性. 也就是说,在使用v- ...

  4. vue页面跳转后返回原页面初始位置

    vue页面跳转到新页面之后,再由新页面返回到原页面时候若想返回调出原页面的初始位置,怎么来解决这个问题呢?首先我们应该在跳出页面时候记录下跳出的scrollY,返回原页面的时候在设置返回位置为记录下的 ...

  5. SAP Cloud Application Programming bookshop 例子 Vue页面不能正常显示的原因分析

    我在本地用cds run 命令启动 SAP Cloud Application Programming 应用后,访问如下 url: http://localhost:4004/vue/index.ht ...

  6. Vue页面骨架屏(一)

    在开发webapp的时候总是会受到首屏加载时间过长的影响,主流的解决方法是在载入完成之前显示loading图效果,而一些大公司会配置一套服务端渲染的架构来解决这个问题.考虑到ssr所要解决的一系列问题 ...

  7. Vue 页面如何利用生命周期函数监听用户预览时长

    最近的业务中涉及到这样一个需求,在线培训的系统需要知道用户对某个在线预览的页面追踪用户的预览时长.初步我们首先想到借助 Vue 页面的生命周期函数 mounted 和 destroyed,分别在其中加 ...

  8. Vue 页面如何监听用户预览时间

    最近的业务中涉及到这样一个需求,在线培训的系统需要知道用户对某个在线预览的页面追踪用户的预览时长.初步我们首先想到借助 Vue 页面的生命周期函数 mounted 和 destroyed,分别在其中加 ...

  9. Vue页面跳转后不显示问题

    Vue页面跳转后不显示问题 必须要添加 path前面要有/

最新文章

  1. linux撤销以硬件时钟作为UTC,linux时钟基本概念、CST与UTC、以及NTP简单设置
  2. Xcode升级后插件失效的原理与修复办法
  3. 在VC++中创建DLL文件并加载
  4. 使用javabean类用户注册
  5. mac 多java环境变量配置_java_Mac安装多个JDK版本并设置环境变量
  6. python怎么使用int四舍五入_使用Python 3的数字格式可以将数字四舍五入到成百上千个...
  7. 使用sonar-ws-client-4.2.jar 获取sonar数据
  8. Chapter 5 Blood Type——24
  9. mysql5.7.11无法启动_macos - mysql 5.7.11 启动报错
  10. element js 包含字符_携程春招题目字符串截取和数组升维
  11. 音乐搜索器 多站合一_分享一堆可以免费听音乐的良心网站!赶紧码住哦
  12. Jenkins与Docker的自动化CI/CD实战
  13. DB2 INTERSECT、EXCEPT、UNION集合操作测试
  14. 数据结构与算法笔记总结
  15. Windows 10/11 最新版 jupyter notebook 更改配置默认路径
  16. [Java] - 项目中的防止同用户异地登录问题
  17. SDN概述,SDN是什么?
  18. Python基于OpenCV&YOLO台球击球路线规划系统(源码&部署教程)
  19. 2.8 复习 定语从句 将来进行时 将来完成时
  20. 公有云、私有云和混合云介绍

热门文章

  1. git生成SSH秘钥
  2. python医院自动化抢号脚本
  3. 音频信号转为开关控制信号_盘点模拟量信号和开关量信号区别与应用
  4. 数据库 Table is marked as crashed and should be repaired 解决办法
  5. 网络工程师加入德云社说相声,他还骑摩托车环球旅行!!
  6. 网站商务通与百度商桥的区别
  7. 【专家访谈】性能架构师 - 贾江兵
  8. mysql常用函数整理
  9. 中设智控牵手欧派,助力欧派提升设备管理水平
  10. windows开启远程桌面,防火墙拦截:只允许特定IP远程