gsap实现一个卡通扭蛋机抽奖效果代码
代码语言:html
所属分类:其他
代码描述:gsap实现一个卡通扭蛋机抽奖效果代码,可以拆看看看自己中了什么奖品。
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<style>
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c&display=swap");
#app.gotcha .container .ui-layer .title-container .title h2, #app.gotcha .container .game-layer .machine-container .title {
text-shadow: 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white), 0px 0px 2px var(--stroke-color, white);
filter: drop-shadow(0px 2px 0px rgba(0, 0, 0, 0.2));
}
*, *::before, *::after {
box-sizing: border-box;
font-family: inherit;
padding: 0;
margin: 0;
}
html {
font-size: 62.5%;
height: 100%;
color: white;
font-family: "M PLUS Rounded 1c", "Trebuchet MS", "Lucida Sans Unicode", "Lucida Grande", "Lucida Sans", Arial, sans-serif;
}
html body {
font-size: 1.6rem;
overflow: hidden;
height: 100%;
position: relative;
user-select: none;
}
.dim {
transition: 0.5s linear;
}
.dim[data-animate] {
filter: brightness(0.6) saturate(0.8);
}
.confetti {
position: absolute;
top: 0;
left: 0;
overflow: hidden;
width: 100%;
height: 100%;
z-index: 10;
pointer-events: none;
perspective: 100vmin;
}
.confetti span {
--size: 5;
display: block;
position: absolute;
width: calc(var(--size) * 1px);
height: calc(var(--size) * 1px);
background-color: blue;
animation: rotate linear calc(var(--rs) * 1s) infinite both;
}
#app.gotcha {
width: 100%;
height: 100%;
position: relative;
background-color: #666;
}
#app.gotcha .container {
width: 100%;
height: 100%;
overflow: hidden;
position: relative;
}
#app.gotcha .container .game-layer {
width: 100%;
height: 100%;
overflow: hidden;
display: flex;
align-items: center;
justify-content: center;
position: relative;
background: url(//repo.bfw.wiki/bfwrepo/images/niudaoji/bg.jpg) center/auto 100% no-repeat;
}
#app.gotcha .container .game-layer .machine-container {
position: relative;
white-space: nowrap;
}
#app.gotcha .container .game-layer .machine-container .machine {
position: relative;
z-index: 1;
max-height: 80vh;
pointer-events: none;
}
#app.gotcha .container .game-layer .machine-container .backboard {
z-index: 0;
width: 15vh;
height: 13vh;
top: 65%;
left: 48%;
background-color: #e288bb;
position: absolute;
}
#app.gotcha .container .game-layer .machine-container .title {
--stroke-color: #ad8bd6;
position: absolute;
display: block;
top: 10%;
width: 100%;
text-align: center;
font-size: 5vh;
z-index: 3;
}
#app.gotcha .container .game-layer .machine-container .title span {
animation: blink 0.8s linear both infinite;
}
#app.gotcha .container .game-layer .machine-container .title span:nth-child(1) {
animation-delay: 0.12s;
}
#app.gotcha .container .game-layer .machine-container .title span:nth-child(2) {
animation-delay: 0.24s;
}
#app.gotcha .container .game-layer .machine-container .title span:nth-child(3) {
animation-delay: 0.36s;
}
#app.gotcha .container .game-layer .machine-container .title span:nth-child(4) {
animation-delay: 0.48s;
}
#app.gotcha .container .game-layer .machine-container .title span:nth-child(5) {
animation-delay: 0.6s;
}
#app.gotcha .container .game-layer .machine-container .title span:nth-child(6) {
animation-delay: 0.72s;
}
#app.gotcha .container .game-layer .machine-container .title span:nth-child(7) {
animation-delay: 0.84s;
}
#app.gotcha .container .game-layer .machine-container .title span:nth-child(8) {
animation-delay: 0.96s;
}
#app.gotcha .container .game-layer .machine-container .title span:nth-child(9) {
animation-delay: 1.08s;
}
#app.gotcha .container .game-layer .machine-container .title span:nth-child(10) {
animation-delay: 1.2s;
}
#app.gotcha .container .game-layer .machine-container .price {
z-index: 3;
position: absolute;
color: #fb91c9;
font-size: 2.5vh;
top: 80%;
left: 15%;
}
#app.gotcha .container .game-layer .machine-container .handle {
z-index: 3;
position: absolute;
height: 3.9vh;
left: 13%;
top: 69%;
}
#app.gotcha .container .game-layer .machine-container .balls {
position: absolute;
top: 22%;
left: 2%;
width: 96%;
height: 34.5%;
}
#app.gotcha .container .game-layer .machine-container .pointer {
position: absolute;
height: 15vh;
top: 75%;
left: 15%;
z-index: 5;
}
#app.gotcha .container .game-layer .machine-container .pointer img {
height: 100%;
display: block;
transform: rotate(-30deg);
transform-origin: 0% 0%;
animation: click 1s ease-in-out infinite both;
}
#app.gotcha .container .ui-layer {
width: 100%;
height: 100%;
overflow: hidden;
position: absolute;
top: 0;
left: 0;
z-index: 1;
pointer-events: none;
}
#app.gotcha .container .ui-layer .title-container {
width: 100%;
height: 100%;
overflow: hidden;
position: absolute;
top: 0;
left: 0;
z-index: 10;
}
#app.gotcha .container .ui-layer .title-container .title h2 {
--stroke-color: #f06e5b;
text-align: center;
font-size: 5vh;
}
#app.gotcha .container .ui-layer .prize-container {
width: 100%;
height: 100%;
overflow: hidden;
position: absolute;
top: 0;
left: 0;
}
#app.gotcha .container .ui-layer .prize-container .prize-ball-container {
width: 100%;
height: 100%;
overflow: hidden;
position: absolute;
top: 0;
left: 0;
}
#app.gotcha .container .ui-layer .prize-container .prize-reward-container {
width: 100%;
height: 100%;
overflow: hidden;
position: absolute;
top: 0;
left: 0;
z-index: .........完整代码请登录后点击上方下载按钮下载查看
网友评论0