纯css实现烟花绽放动画效果
代码语言:html
所属分类:动画
代码描述:纯css实现烟花绽放动画效果
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<style>
body {
background: radial-gradient(ellipse at bottom, #1b2735 0%, #090a0f 100%);
height: 100vh;
overflow: hidden;
display: -webkit-box;
display: flex;
font-family: 'Anton', sans-serif;
-webkit-box-pack: center;
justify-content: center;
-webkit-box-align: center;
align-items: center;
-webkit-perspective: 600px;
perspective: 600px;
}
div {
-webkit-transform-style: preserve-3d;
transform-style: preserve-3d;
}
.camera.-y {
-webkit-animation: rotate 30s linear infinite;
animation: rotate 30s linear infinite;
}
.fireworks {
-webkit-transform: translateY(-100px);
transform: translateY(-100px);
}
.spark {
position: absolute;
width: 400px;
height: 400px;
-webkit-transform-origin: 0 0;
transform-origin: 0 0;
}
.fire {
position: absolute;
left: -3px;
width: 5px;
height: 5px;
background: #fa2828;
}
.fire::before {
content: '';
position: absolute;
width: 100%;
height: 100%;
background: #e6c828;
-webkit-transform: translateZ(0.1px);
transform: translateZ(0.1px);
}
.line:nth-child(1) {
-webkit-transform: rotateY(71deg);
transform: rotateY(71deg);
}
.line:nth-child(1) .spark {
width: 264px;
height: 396px;
-webkit-animation: spark1 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark1 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(1) .fire {
-webkit-animation: fire 1913ms -537ms linear infinite;
animation: fire 1913ms -537ms linear infinite;
}
@-webkit-keyframes spark1 {
0% {
-webkit-transform: translateY(641px);
transform: translateY(641px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(63deg) translateX(277px);
transform: rotateZ(63deg) translateX(277px);
}
}
@keyframes spark1 {
0% {
-webkit-transform: translateY(641px);
transform: translateY(641px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(63deg) translateX(277px);
transform: rotateZ(63deg) translateX(277px);
}
}
.line:nth-child(2) {
-webkit-transform: rotateY(25deg);
transform: rotateY(25deg);
}
.line:nth-child(2) .spark {
width: 304px;
height: 226px;
-webkit-animation: spark2 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark2 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(2) .fire {
-webkit-animation: fire 1984ms -902ms linear infinite;
animation: fire 1984ms -902ms linear infinite;
}
@-webkit-keyframes spark2 {
0% {
-webkit-transform: translateY(611px);
transform: translateY(611px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(180deg) translateX(269px);
transform: rotateZ(180deg) translateX(269px);
}
}
@keyframes spark2 {
0% {
-webkit-transform: translateY(611px);
transform: translateY(611px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(180deg) translateX(269px);
transform: rotateZ(180deg) translateX(269px);
}
}
.line:nth-child(3) {
-webkit-transform: rotateY(324deg);
transform: rotateY(324deg);
}
.line:nth-child(3) .spark {
width: 306px;
height: 274px;
-webkit-animation: spark3 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark3 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(3) .fire {
-webkit-animation: fire 1753ms -403ms linear infinite;
animation: fire 1753ms -403ms linear infinite;
}
@-webkit-keyframes spark3 {
0% {
-webkit-transform: translateY(565px);
transform: translateY(565px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(227deg) translateX(277px);
transform: rotateZ(227deg) translateX(277px);
}
}
@keyframes spark3 {
0% {
-webkit-transform: translateY(565px);
transform: translateY(565px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(227deg) translateX(277px);
transform: rotateZ(227deg) translateX(277px);
}
}
.line:nth-child(4) {
-webkit-transform: rotateY(53deg);
transform: rotateY(53deg);
}
.line:nth-child(4) .spark {
width: 372px;
height: 377px;
-webkit-animation: spark4 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark4 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(4) .fire {
-webkit-animation: fire 1779ms -616ms linear infinite;
animation: fire 1779ms -616ms linear infinite;
}
@-webkit-keyframes spark4 {
0% {
-webkit-transform: translateY(545px);
transform: translateY(545px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(218deg) translateX(138px);
transform: rotateZ(218deg) translateX(138px);
}
}
@keyframes spark4 {
0% {
-webkit-transform: translateY(545px);
transform: translateY(545px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(218deg) translateX(138px);
transform: rotateZ(218deg) translateX(138px);
}
}
.line:nth-child(5) {
-webkit-transform: rotateY(227deg);
transform: rotateY(227deg);
}
.line:nth-child(5) .spark {
width: 399px;
height: 208px;
-webkit-animation: spark5 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark5 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(5) .fire {
-webkit-animation: fire 1088ms -422ms linear infinite;
animation: fire 1088ms -422ms linear infinite;
}
@-webkit-keyframes spark5 {
0% {
-webkit-transform: translateY(503px);
transform: translateY(503px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(92deg) translateX(141px);
transform: rotateZ(92deg) translateX(141px);
}
}
@keyframes spark5 {
0% {
-webkit-transform: translateY(503px);
transform: translateY(503px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(92deg) translateX(141px);
transform: rotateZ(92deg) translateX(141px);
}
}
.line:nth-child(6) {
-webkit-transform: rotateY(236deg);
transform: rotateY(236deg);
}
.line:nth-child(6) .spark {
width: 263px;
height: 246px;
-webkit-animation: spark6 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark6 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(6) .fire {
-webkit-animation: fire 1566ms -185ms linear infinite;
animation: fire 1566ms -185ms linear infinite;
}
@-webkit-keyframes spark6 {
0% {
-webkit-transform: translateY(594px);
transform: translateY(594px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(265deg) translateX(132px);
transform: rotateZ(265deg) translateX(132px);
}
}
@keyframes spark6 {
0% {
-webkit-transform: translateY(594px);
transform: translateY(594px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(265deg) translateX(132px);
transform: rotateZ(265deg) translateX(132px);
}
}
.line:nth-child(7) {
-webkit-transform: rotateY(197deg);
transform: rotateY(197deg);
}
.line:nth-child(7) .spark {
width: 209px;
height: 279px;
-webkit-animation: spark7 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark7 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(7) .fire {
-webkit-animation: fire 1294ms -56ms linear infinite;
animation: fire 1294ms -56ms linear infinite;
}
@-webkit-keyframes spark7 {
0% {
-webkit-transform: translateY(507px);
transform: translateY(507px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(284deg) translateX(235px);
transform: rotateZ(284deg) translateX(235px);
}
}
@keyframes spark7 {
0% {
-webkit-transform: translateY(507px);
transform: translateY(507px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(284deg) translateX(235px);
transform: rotateZ(284deg) translateX(235px);
}
}
.line:nth-child(8) {
-webkit-transform: rotateY(134deg);
transform: rotateY(134deg);
}
.line:nth-child(8) .spark {
width: 372px;
height: 340px;
-webkit-animation: spark8 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark8 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(8) .fire {
-webkit-animation: fire 1759ms -14ms linear infinite;
animation: fire 1759ms -14ms linear infinite;
}
@-webkit-keyframes spark8 {
0% {
-webkit-transform: translateY(593px);
transform: translateY(593px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(131deg) translateX(139px);
transform: rotateZ(131deg) translateX(139px);
}
}
@keyframes spark8 {
0% {
-webkit-transform: translateY(593px);
transform: translateY(593px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(131deg) translateX(139px);
transform: rotateZ(131deg) translateX(139px);
}
}
.line:nth-child(9) {
-webkit-transform: rotateY(173deg);
transform: rotateY(173deg);
}
.line:nth-child(9) .spark {
width: 348px;
height: 271px;
-webkit-animation: spark9 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark9 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(9) .fire {
-webkit-animation: fire 1495ms -280ms linear infinite;
animation: fire 1495ms -280ms linear infinite;
}
@-webkit-keyframes spark9 {
0% {
-webkit-transform: translateY(566px);
transform: translateY(566px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(89deg) translateX(238px);
transform: rotateZ(89deg) translateX(238px);
}
}
@keyframes spark9 {
0% {
-webkit-transform: translateY(566px);
transform: translateY(566px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(89deg) translateX(238px);
transform: rotateZ(89deg) translateX(238px);
}
}
.line:nth-child(10) {
-webkit-transform: rotateY(87deg);
transform: rotateY(87deg);
}
.line:nth-child(10) .spark {
width: 380px;
height: 256px;
-webkit-animation: spark10 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark10 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(10) .fire {
-webkit-animation: fire 1170ms -343ms linear infinite;
animation: fire 1170ms -343ms linear infinite;
}
@-webkit-keyframes spark10 {
0% {
-webkit-transform: translateY(612px);
transform: translateY(612px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(91deg) translateX(269px);
transform: rotateZ(91deg) translateX(269px);
}
}
@keyframes spark10 {
0% {
-webkit-transform: translateY(612px);
transform: translateY(612px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(91deg) translateX(269px);
transform: rotateZ(91deg) translateX(269px);
}
}
.line:nth-child(11) {
-webkit-transform: rotateY(266deg);
transform: rotateY(266deg);
}
.line:nth-child(11) .spark {
width: 225px;
height: 335px;
-webkit-animation: spark11 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark11 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(11) .fire {
-webkit-animation: fire 1448ms -247ms linear infinite;
animation: fire 1448ms -247ms linear infinite;
}
@-webkit-keyframes spark11 {
0% {
-webkit-transform: translateY(521px);
transform: translateY(521px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(268deg) translateX(104px);
transform: rotateZ(268deg) translateX(104px);
}
}
@keyframes spark11 {
0% {
-webkit-transform: translateY(521px);
transform: translateY(521px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(268deg) translateX(104px);
transform: rotateZ(268deg) translateX(104px);
}
}
.line:nth-child(12) {
-webkit-transform: rotateY(187deg);
transform: rotateY(187deg);
}
.line:nth-child(12) .spark {
width: 203px;
height: 376px;
-webkit-animation: spark12 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark12 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(12) .fire {
-webkit-animation: fire 1620ms -314ms linear infinite;
animation: fire 1620ms -314ms linear infinite;
}
@-webkit-keyframes spark12 {
0% {
-webkit-transform: translateY(553px);
transform: translateY(553px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(137deg) translateX(248px);
transform: rotateZ(137deg) translateX(248px);
}
}
@keyframes spark12 {
0% {
-webkit-transform: translateY(553px);
transform: translateY(553px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(137deg) translateX(248px);
transform: rotateZ(137deg) translateX(248px);
}
}
.line:nth-child(13) {
-webkit-transform: rotateY(126deg);
transform: rotateY(126deg);
}
.line:nth-child(13) .spark {
width: 341px;
height: 251px;
-webkit-animation: spark13 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark13 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(13) .fire {
-webkit-animation: fire 1131ms -516ms linear infinite;
animation: fire 1131ms -516ms linear infinite;
}
@-webkit-keyframes spark13 {
0% {
-webkit-transform: translateY(575px);
transform: translateY(575px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(131deg) translateX(226px);
transform: rotateZ(131deg) translateX(226px);
}
}
@keyframes spark13 {
0% {
-webkit-transform: translateY(575px);
transform: translateY(575px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(131deg) translateX(226px);
transform: rotateZ(131deg) translateX(226px);
}
}
.line:nth-child(14) {
-webkit-transform: rotateY(127deg);
transform: rotateY(127deg);
}
.line:nth-child(14) .spark {
width: 372px;
height: 301px;
-webkit-animation: spark14 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark14 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(14) .fire {
-webkit-animation: fire 1226ms -432ms linear infinite;
animation: fire 1226ms -432ms linear infinite;
}
@-webkit-keyframes spark14 {
0% {
-webkit-transform: translateY(604px);
transform: translateY(604px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(60deg) translateX(122px);
transform: rotateZ(60deg) translateX(122px);
}
}
@keyframes spark14 {
0% {
-webkit-transform: translateY(604px);
transform: translateY(604px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(60deg) translateX(122px);
transform: rotateZ(60deg) translateX(122px);
}
}
.line:nth-child(15) {
-webkit-transform: rotateY(171deg);
transform: rotateY(171deg);
}
.line:nth-child(15) .spark {
width: 364px;
height: 317px;
-webkit-animation: spark15 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark15 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(15) .fire {
-webkit-animation: fire 1067ms -975ms linear infinite;
animation: fire 1067ms -975ms linear infinite;
}
@-webkit-keyframes spark15 {
0% {
-webkit-transform: translateY(575px);
transform: translateY(575px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(291deg) translateX(262px);
transform: rotateZ(291deg) translateX(262px);
}
}
@keyframes spark15 {
0% {
-webkit-transform: translateY(575px);
transform: translateY(575px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(291deg) translateX(262px);
transform: rotateZ(291deg) translateX(262px);
}
}
.line:nth-child(16) {
-webkit-transform: rotateY(215deg);
transform: rotateY(215deg);
}
.line:nth-child(16) .spark {
width: 378px;
height: 362px;
-webkit-animation: spark16 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark16 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(16) .fire {
-webkit-animation: fire 1871ms -69ms linear infinite;
animation: fire 1871ms -69ms linear infinite;
}
@-webkit-keyframes spark16 {
0% {
-webkit-transform: translateY(609px);
transform: translateY(609px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(312deg) translateX(163px);
transform: rotateZ(312deg) translateX(163px);
}
}
@keyframes spark16 {
0% {
-webkit-transform: translateY(609px);
transform: translateY(609px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(312deg) translateX(163px);
transform: rotateZ(312deg) translateX(163px);
}
}
.line:nth-child(17) {
-webkit-transform: rotateY(171deg);
transform: rotateY(171deg);
}
.line:nth-child(17) .spark {
width: 331px;
height: 251px;
-webkit-animation: spark17 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark17 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(17) .fire {
-webkit-animation: fire 1923ms -371ms linear infinite;
animation: fire 1923ms -371ms linear infinite;
}
@-webkit-keyframes spark17 {
0% {
-webkit-transform: translateY(604px);
transform: translateY(604px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(279deg) translateX(204px);
transform: rotateZ(279deg) translateX(204px);
}
}
@keyframes spark17 {
0% {
-webkit-transform: translateY(604px);
transform: translateY(604px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(279deg) translateX(204px);
transform: rotateZ(279deg) translateX(204px);
}
}
.line:nth-child(18) {
-webkit-transform: rotateY(70deg);
transform: rotateY(70deg);
}
.line:nth-child(18) .spark {
width: 209px;
height: 299px;
-webkit-animation: spark18 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark18 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(18) .fire {
-webkit-animation: fire 1377ms -765ms linear infinite;
animation: fire 1377ms -765ms linear infinite;
}
@-webkit-keyframes spark18 {
0% {
-webkit-transform: translateY(523px);
transform: translateY(523px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(216deg) translateX(170px);
transform: rotateZ(216deg) translateX(170px);
}
}
@keyframes spark18 {
0% {
-webkit-transform: translateY(523px);
transform: translateY(523px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(216deg) translateX(170px);
transform: rotateZ(216deg) translateX(170px);
}
}
.line:nth-child(19) {
-webkit-transform: rotateY(32deg);
transform: rotateY(32deg);
}
.line:nth-child(19) .spark {
width: 349px;
height: 273px;
-webkit-animation: spark19 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark19 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(19) .fire {
-webkit-animation: fire 1736ms -581ms linear infinite;
animation: fire 1736ms -581ms linear infinite;
}
@-webkit-keyframes spark19 {
0% {
-webkit-transform: translateY(644px);
transform: translateY(644px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(97deg) translateX(129px);
transform: rotateZ(97deg) translateX(129px);
}
}
@keyframes spark19 {
0% {
-webkit-transform: translateY(644px);
transform: translateY(644px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(97deg) translateX(129px);
transform: rotateZ(97deg) translateX(129px);
}
}
.line:nth-child(20) {
-webkit-transform: rotateY(120deg);
transform: rotateY(120deg);
}
.line:nth-child(20) .spark {
width: 315px;
height: 208px;
-webkit-animation: spark20 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark20 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(20) .fire {
-webkit-animation: fire 1704ms -356ms linear infinite;
animation: fire 1704ms -356ms linear infinite;
}
@-webkit-keyframes spark20 {
0% {
-webkit-transform: translateY(603px);
transform: translateY(603px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(84deg) translateX(198px);
transform: rotateZ(84deg) translateX(198px);
}
}
@keyframes spark20 {
0% {
-webkit-transform: translateY(603px);
transform: translateY(603px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(84deg) translateX(198px);
transform: rotateZ(84deg) translateX(198px);
}
}
.line:nth-child(21) {
-webkit-transform: rotateY(211deg);
transform: rotateY(211deg);
}
.line:nth-child(21) .spark {
width: 233px;
height: 344px;
-webkit-animation: spark21 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark21 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(21) .fire {
-webkit-animation: fire 1955ms -761ms linear infinite;
animation: fire 1955ms -761ms linear infinite;
}
@-webkit-keyframes spark21 {
0% {
-webkit-transform: translateY(619px);
transform: translateY(619px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(254deg) translateX(233px);
transform: rotateZ(254deg) translateX(233px);
}
}
@keyframes spark21 {
0% {
-webkit-transform: translateY(619px);
transform: translateY(619px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(254deg) translateX(233px);
transform: rotateZ(254deg) translateX(233px);
}
}
.line:nth-child(22) {
-webkit-transform: rotateY(133deg);
transform: rotateY(133deg);
}
.line:nth-child(22) .spark {
width: 355px;
height: 208px;
-webkit-animation: spark22 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark22 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(22) .fire {
-webkit-animation: fire 1482ms -537ms linear infinite;
animation: fire 1482ms -537ms linear infinite;
}
@-webkit-keyframes spark22 {
0% {
-webkit-transform: translateY(566px);
transform: translateY(566px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(144deg) translateX(130px);
transform: rotateZ(144deg) translateX(130px);
}
}
@keyframes spark22 {
0% {
-webkit-transform: translateY(566px);
transform: translateY(566px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(144deg) translateX(130px);
transform: rotateZ(144deg) translateX(130px);
}
}
.line:nth-child(23) {
-webkit-transform: rotateY(145deg);
transform: rotateY(145deg);
}
.line:nth-child(23) .spark {
width: 396px;
height: 248px;
-webkit-animation: spark23 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark23 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(23) .fire {
-webkit-animation: fire 1999ms -256ms linear infinite;
animation: fire 1999ms -256ms linear infinite;
}
@-webkit-keyframes spark23 {
0% {
-webkit-transform: translateY(647px);
transform: translateY(647px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(109deg) translateX(118px);
transform: rotateZ(109deg) translateX(118px);
}
}
@keyframes spark23 {
0% {
-webkit-transform: translateY(647px);
transform: translateY(647px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(109deg) translateX(118px);
transform: rotateZ(109deg) translateX(118px);
}
}
.line:nth-child(24) {
-webkit-transform: rotateY(213deg);
transform: rotateY(213deg);
}
.line:nth-child(24) .spark {
width: 224px;
height: 337px;
-webkit-animation: spark24 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark24 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(24) .fire {
-webkit-animation: fire 1222ms -312ms linear infinite;
animation: fire 1222ms -312ms linear infinite;
}
@-webkit-keyframes spark24 {
0% {
-webkit-transform: translateY(641px);
transform: translateY(641px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(19deg) translateX(221px);
transform: rotateZ(19deg) translateX(221px);
}
}
@keyframes spark24 {
0% {
-webkit-transform: translateY(641px);
transform: translateY(641px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(19deg) translateX(221px);
transform: rotateZ(19deg) translateX(221px);
}
}
.line:nth-child(25) {
-webkit-transform: rotateY(4deg);
transform: rotateY(4deg);
}
.line:nth-child(25) .spark {
width: 286px;
height: 314px;
-webkit-animation: spark25 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark25 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(25) .fire {
-webkit-animation: fire 1230ms -121ms linear infinite;
animation: fire 1230ms -121ms linear infinite;
}
@-webkit-keyframes spark25 {
0% {
-webkit-transform: translateY(560px);
transform: translateY(560px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(273deg) translateX(125px);
transform: rotateZ(273deg) translateX(125px);
}
}
@keyframes spark25 {
0% {
-webkit-transform: translateY(560px);
transform: translateY(560px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(273deg) translateX(125px);
transform: rotateZ(273deg) translateX(125px);
}
}
.line:nth-child(26) {
-webkit-transform: rotateY(36deg);
transform: rotateY(36deg);
}
.line:nth-child(26) .spark {
width: 317px;
height: 313px;
-webkit-animation: spark26 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark26 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(26) .fire {
-webkit-animation: fire 1230ms -862ms linear infinite;
animation: fire 1230ms -862ms linear infinite;
}
@-webkit-keyframes spark26 {
0% {
-webkit-transform: translateY(560px);
transform: translateY(560px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(217deg) translateX(209px);
transform: rotateZ(217deg) translateX(209px);
}
}
@keyframes spark26 {
0% {
-webkit-transform: translateY(560px);
transform: translateY(560px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(217deg) translateX(209px);
transform: rotateZ(217deg) translateX(209px);
}
}
.line:nth-child(27) {
-webkit-transform: rotateY(218deg);
transform: rotateY(218deg);
}
.line:nth-child(27) .spark {
width: 247px;
height: 234px;
-webkit-animation: spark27 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark27 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(27) .fire {
-webkit-animation: fire 1953ms -99ms linear infinite;
animation: fire 1953ms -99ms linear infinite;
}
@-webkit-keyframes spark27 {
0% {
-webkit-transform: translateY(625px);
transform: translateY(625px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(359deg) translateX(211px);
transform: rotateZ(359deg) translateX(211px);
}
}
@keyframes spark27 {
0% {
-webkit-transform: translateY(625px);
transform: translateY(625px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(359deg) translateX(211px);
transform: rotateZ(359deg) translateX(211px);
}
}
.line:nth-child(28) {
-webkit-transform: rotateY(19deg);
transform: rotateY(19deg);
}
.line:nth-child(28) .spark {
width: 285px;
height: 268px;
-webkit-animation: spark28 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark28 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(28) .fire {
-webkit-animation: fire 1329ms -410ms linear infinite;
animation: fire 1329ms -410ms linear infinite;
}
@-webkit-keyframes spark28 {
0% {
-webkit-transform: translateY(631px);
transform: translateY(631px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(16deg) translateX(158px);
transform: rotateZ(16deg) translateX(158px);
}
}
@keyframes spark28 {
0% {
-webkit-transform: translateY(631px);
transform: translateY(631px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(16deg) translateX(158px);
transform: rotateZ(16deg) translateX(158px);
}
}
.line:nth-child(29) {
-webkit-transform: rotateY(267deg);
transform: rotateY(267deg);
}
.line:nth-child(29) .spark {
width: 225px;
height: 391px;
-webkit-animation: spark29 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark29 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(29) .fire {
-webkit-animation: fire 1420ms -496ms linear infinite;
animation: fire 1420ms -496ms linear infinite;
}
@-webkit-keyframes spark29 {
0% {
-webkit-transform: translateY(589px);
transform: translateY(589px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(162deg) translateX(146px);
transform: rotateZ(162deg) translateX(146px);
}
}
@keyframes spark29 {
0% {
-webkit-transform: translateY(589px);
transform: translateY(589px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(162deg) translateX(146px);
transform: rotateZ(162deg) translateX(146px);
}
}
.line:nth-child(30) {
-webkit-transform: rotateY(299deg);
transform: rotateY(299deg);
}
.line:nth-child(30) .spark {
width: 210px;
height: 243px;
-webkit-animation: spark30 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark30 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(30) .fire {
-webkit-animation: fire 1994ms -373ms linear infinite;
animation: fire 1994ms -373ms linear infinite;
}
@-webkit-keyframes spark30 {
0% {
-webkit-transform: translateY(598px);
transform: translateY(598px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(44deg) translateX(231px);
transform: rotateZ(44deg) translateX(231px);
}
}
@keyframes spark30 {
0% {
-webkit-transform: translateY(598px);
transform: translateY(598px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(44deg) translateX(231px);
transform: rotateZ(44deg) translateX(231px);
}
}
.line:nth-child(31) {
-webkit-transform: rotateY(221deg);
transform: rotateY(221deg);
}
.line:nth-child(31) .spark {
width: 295px;
height: 203px;
-webkit-animation: spark31 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark31 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(31) .fire {
-webkit-animation: fire 1598ms -699ms linear infinite;
animation: fire 1598ms -699ms linear infinite;
}
@-webkit-keyframes spark31 {
0% {
-webkit-transform: translateY(525px);
transform: translateY(525px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(143deg) translateX(258px);
transform: rotateZ(143deg) translateX(258px);
}
}
@keyframes spark31 {
0% {
-webkit-transform: translateY(525px);
transform: translateY(525px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(143deg) translateX(258px);
transform: rotateZ(143deg) translateX(258px);
}
}
.line:nth-child(32) {
-webkit-transform: rotateY(217deg);
transform: rotateY(217deg);
}
.line:nth-child(32) .spark {
width: 384px;
height: 354px;
-webkit-animation: spark32 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark32 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(32) .fire {
-webkit-animation: fire 1632ms -590ms linear infinite;
animation: fire 1632ms -590ms linear infinite;
}
@-webkit-keyframes spark32 {
0% {
-webkit-transform: translateY(630px);
transform: translateY(630px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(97deg) translateX(130px);
transform: rotateZ(97deg) translateX(130px);
}
}
@keyframes spark32 {
0% {
-webkit-transform: translateY(630px);
transform: translateY(630px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(97deg) translateX(130px);
transform: rotateZ(97deg) translateX(130px);
}
}
.line:nth-child(33) {
-webkit-transform: rotateY(152deg);
transform: rotateY(152deg);
}
.line:nth-child(33) .spark {
width: 391px;
height: 229px;
-webkit-animation: spark33 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark33 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(33) .fire {
-webkit-animation: fire 1558ms -177ms linear infinite;
animation: fire 1558ms -177ms linear infinite;
}
@-webkit-keyframes spark33 {
0% {
-webkit-transform: translateY(577px);
transform: translateY(577px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(337deg) translateX(287px);
transform: rotateZ(337deg) translateX(287px);
}
}
@keyframes spark33 {
0% {
-webkit-transform: translateY(577px);
transform: translateY(577px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(337deg) translateX(287px);
transform: rotateZ(337deg) translateX(287px);
}
}
.line:nth-child(34) {
-webkit-transform: rotateY(134deg);
transform: rotateY(134deg);
}
.line:nth-child(34) .spark {
width: 354px;
height: 396px;
-webkit-animation: spark34 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark34 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(34) .fire {
-webkit-animation: fire 1902ms -198ms linear infinite;
animation: fire 1902ms -198ms linear infinite;
}
@-webkit-keyframes spark34 {
0% {
-webkit-transform: translateY(637px);
transform: translateY(637px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(87deg) translateX(280px);
transform: rotateZ(87deg) translateX(280px);
}
}
@keyframes spark34 {
0% {
-webkit-transform: translateY(637px);
transform: translateY(637px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(87deg) translateX(280px);
transform: rotateZ(87deg) translateX(280px);
}
}
.line:nth-child(35) {
-webkit-transform: rotateY(132deg);
transform: rotateY(132deg);
}
.line:nth-child(35) .spark {
width: 394px;
height: 353px;
-webkit-animation: spark35 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark35 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(35) .fire {
-webkit-animation: fire 1950ms -711ms linear infinite;
animation: fire 1950ms -711ms linear infinite;
}
@-webkit-keyframes spark35 {
0% {
-webkit-transform: translateY(587px);
transform: translateY(587px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(355deg) translateX(199px);
transform: rotateZ(355deg) translateX(199px);
}
}
@keyframes spark35 {
0% {
-webkit-transform: translateY(587px);
transform: translateY(587px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(355deg) translateX(199px);
transform: rotateZ(355deg) translateX(199px);
}
}
.line:nth-child(36) {
-webkit-transform: rotateY(170deg);
transform: rotateY(170deg);
}
.line:nth-child(36) .spark {
width: 367px;
height: 210px;
-webkit-animation: spark36 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark36 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(36) .fire {
-webkit-animation: fire 1330ms -632ms linear infinite;
animation: fire 1330ms -632ms linear infinite;
}
@-webkit-keyframes spark36 {
0% {
-webkit-transform: translateY(591px);
transform: translateY(591px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(115deg) translateX(106px);
transform: rotateZ(115deg) translateX(106px);
}
}
@keyframes spark36 {
0% {
-webkit-transform: translateY(591px);
transform: translateY(591px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(115deg) translateX(106px);
transform: rotateZ(115deg) translateX(106px);
}
}
.line:nth-child(37) {
-webkit-transform: rotateY(79deg);
transform: rotateY(79deg);
}
.line:nth-child(37) .spark {
width: 278px;
height: 313px;
-webkit-animation: spark37 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
animation: spark37 5s cubic-bezier(0.39, 0.575, 0.565, 1) infinite, opacity 5s ease-out infinite;
}
.line:nth-child(37) .fire {
-webkit-animation: fire 1068ms -222ms linear infinite;
animation: fire 1068ms -222ms linear infinite;
}
@-webkit-keyframes spark37 {
0% {
-webkit-transform: translateY(538px);
transform: translateY(538px);
}
50% {
-webkit-transform: translateY(0);
transform: translateY(0);
}
100% {
-webkit-transform: rotateZ(259deg) translateX(201px);
transform: rotateZ(259deg) translateX(201px);
}
}
@keyframes spark37 {
0% {
-webkit-transform: translateY(538px);
transform: translateY(538px);
}
50% {
-webkit-transform: t.........完整代码请登录后点击上方下载按钮下载查看
















网友评论0