流星特效案例代码

实际效果,代码下载即可使用

流星图片

<!--

描述: 流星特效

作者: Jack GUO

日期: 20230727

-->

<template>

<div class="wrap-container sn-container">

<div class="pd-main-left">

<div class="yun-container">

<div class="yun-tree"></div>

<div class="line-fs"></div>

<div class="line-fs"></div>

<div class="line-fs"></div>

<div class="line-fs"></div>

<div class="line-fs"></div>

<div class="line-fs"></div>

<div class="line-fs"></div>

<div class="line-fs"></div>

<div class="line-fs"></div>

</div>

</div>

</div>

</template>

<script>

export default {

name: "flashCloud",

data() {

return {

}

},

mounted() {

},

methods: {

},

beforeDestroy() {

}

};

</script>

<style lang="scss" scoped>

.wrap-container {

position: absolute;

overflow: hidden;

display: block;

cursor: default;

z-index: 0;

left: 0;

top: 0;

width: 500px;

height: 300px;

background-color: black;

}

.sn-container {

left: 512px;

top: 78px;

width: 432px;

height: 400px;

.pd-main-left {

position: relative;

width: 310px;

height: 335px;

transform: rotate(45deg);

.yun-container {

width: 100%;

height: 100%;

>div {

&:nth-child(2) {

height: 90%;

-webkit-animation-duration: 2s;

-moz-animation-duration: 2s;

-o-animation-duration: 2s;

animation-duration: 2s;

-webkit-animation-delay: 1.5s;

-moz-animation-delay: 1.5s;

-o-animation-delay: 1.5s;

animation-delay: 1.5s;

bottom: 0;

left: 51px;

}

&:nth-child(3) {

height: 100%;

-webkit-animation-duration: 3s;

-moz-animation-duration: 3s;

-o-animation-duration: 3s;

animation-duration: 3s;

-webkit-animation-delay: 0s;

-moz-animation-delay: 0s;

-o-animation-delay: 0s;

animation-delay: 0s;

bottom: 32px;

left: 89px;

}

&:nth-child(4) {

height: 100%;

-webkit-animation-duration: 2.5s;

-moz-animation-duration: 2.5s;

-o-animation-duration: 2.5s;

animation-duration: 2.5s;

-webkit-animation-delay: 1s;

-moz-animation-delay: 1s;

-o-animation-delay: 1s;

animation-delay: 1s;

bottom: 3px;

left: 179px;

-webkit-filter: hue-rotate(180deg);

filter: hue-rotate(180deg);

}

&:nth-child(5) {

height: 90%;

-webkit-animation-duration: 2s;

-moz-animation-duration: 2s;

-o-animation-duration: 2s;

animation-duration: 2s;

-webkit-animation-delay: 2s;

-moz-animation-delay: 2s;

-o-animation-delay: 2s;

animation-delay: 2s;

bottom: 42px;

left: 229px;

}

&:nth-child(6) {

height: 100%;

-webkit-animation-duration: 2.5s;

-moz-animation-duration: 2.5s;

-o-animation-duration: 2.5s;

animation-duration: 2.5s;

-webkit-animation-delay: 0.5s;

-moz-animation-delay: 0.5s;

-o-animation-delay: 0.5s;

animation-delay: 0.5s;

bottom: 11px;

right: 48px;

}

&:nth-child(7) {

height: 90%;

-webkit-animation-duration: 3s;

-moz-animation-duration: 3s;

-o-animation-duration: 3s;

animation-duration: 3s;

-webkit-animation-delay: 2.5s;

-moz-animation-delay: 2.5s;

-o-animation-delay: 2.5s;

animation-delay: 2.5s;

bottom: -22px;

right: 174px;

-webkit-filter: hue-rotate(180deg);

filter: hue-rotate(180deg);

}

&:nth-child(8) {

height: 90%;

-webkit-animation-duration: 3s;

-moz-animation-duration: 3s;

-o-animation-duration: 3s;

animation-duration: 3s;

-webkit-animation-delay: 1.5s;

-moz-animation-delay: 1.5s;

-o-animation-delay: 1.5s;

animation-delay: 1.5s;

bottom: -22px;

right: 100px;

}

&:nth-child(9) {

height: 100%;

-webkit-animation-duration: 2.5s;

-moz-animation-duration: 2.5s;

-o-animation-duration: 2.5s;

animation-duration: 2.5s;

-webkit-animation-delay: 2s;

-moz-animation-delay: 2s;

-o-animation-delay: 2s;

animation-delay: 2s;

bottom: -10px;

right: 220px;

}

&:nth-child(10) {

height: 95%;

-webkit-animation-duration: 2s;

-moz-animation-duration: 2s;

-o-animation-duration: 2s;

animation-duration: 2s;

-webkit-animation-delay: 1s;

-moz-animation-delay: 1s;

-o-animation-delay: 1s;

animation-delay: 1s;

bottom: -41px;

right: 182px;

}

}

.yun-tree {

width: 100%;

height: 100%;

mix-blend-mode: screen;

}

.line-fs {

width: 14px;

height: 100%;

background-image: url(../../assets/line-fs.png);

background-repeat: no-repeat;

background-position: 50% 150%;

position: absolute;

z-index: -1;

-webkit-animation: fs 3s cubic-bezier(1, 0, 0.6, 0.6) infinite;

-moz-animation: fs 3s cubic-bezier(1, 0, 0.6, 0.6) infinite;

-o-animation: fs 3s cubic-bezier(1, 0, 0.6, 0.6) infinite;

animation: fs 3s cubic-bezier(1, 0, 0.6, 0.6) infinite;

}

}

}

}

@-webkit-keyframes fs {

0% {

background-position: 50% 150%;

}

50% {

background-position: 50% -132%;

}

100% {

background-position: 50% -264%;

opacity: 0;

}

}

@-moz-keyframes fs {

0% {

background-position: 50% 150%;

}

50% {

background-position: 50% -132%;

}

100% {

background-position: 50% -264%;

opacity: 0;

}

}

@-o-keyframes fs {

0% {

background-position: 50% 150%;

}

50% {

background-position: 50% -132%;

}

100% {

background-position: 50% -264%;

opacity: 0;

}

}

@keyframes fs {

0% {

background-position: 50% 150%;

}

50% {

background-position: 50% -132%;

}

100% {

background-position: 50% -264%;

opacity: 0;

}

}

</style>

相关推荐
摇摇奶昔x4 分钟前
Vue.js 中 “require is not defined“
前端·javascript·vue.js
烛阴15 分钟前
Cheerio DOM操作深度指南:轻松玩转HTML元素操作
前端·javascript·后端
rookie fish28 分钟前
如何控制electron的应用在指定的分屏上打开[特殊字符]
前端·javascript·electron
hweiyu0028 分钟前
Electron简介(附电子书学习资料)
前端·javascript·electron
sunbyte1 小时前
50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | RandomChoicePicker(标签生成)
前端·javascript·vue.js
啃火龙果的兔子1 小时前
前端八股文 - CSS 篇
前端·css
xw51 小时前
uni-app项目loading显示方案
前端·uni-app
!win !1 小时前
uni-app项目loading显示方案
前端·uni-app
z_y_j2299704382 小时前
vue前端项目打包和部署
前端·javascript·vue.js