css+js实现赌场老虎机摇号机代码
代码语言:html
所属分类:布局界面
代码描述:css+js实现赌场老虎机摇号机代码,点击spin开始运作,点击stop产生结果。
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <style> @import url("https://fonts.googleapis.com/css2?family=Odor+Mean+Chey&display=swap"); * { margin: 0; padding: 0; box-sizing: border-box; } :root { --length: min(0.9vw, 0.55vh); --radius: min(1.8vw, 1.1vh); } body { height: 100vh; width: 100vw; background: radial-gradient(circle at center, #ffffe6, #2e386b); display: grid; place-content: center; overflow: hidden; } .container { width: calc(80 * var(--length)); aspect-ratio: 2/3; } .slot-machine { height: 100%; width: 100%; background: #473d5c; display: grid; border-radius: var(--radius) var(--radius) 0 0; grid-template-rows: 1fr 2fr 1.5fr; grid-template-areas: "top" "middle" "bottom"; } .slot-machine-top { grid-area: top; position: relative; height: 97.5%; background: #1a004d; border-radius: var(--radius); } .slot-machine-top .bulb-container { position: absolute; display: flex; align-items: center; justify-content: space-around; } .slot-machine-top .top-bulb { left: 5%; width: 90%; top: 0.5%; } .slot-machine-top .bottom-bulb { left: 5%; width: 90%; bottom: 0.5%; } .slot-machine-top .left-bulb { flex-direction: column; width: 5%; height: 100%; left: 0.5%; } .slot-machine-top .right-bulb { flex-direction: column; width: 5%; height: 100%; right: 0.5%; } .slot-machine-top .bulb { font-size: calc(2.5 * var(--length)); color: #fbbb32; text-shadow: calc(-0.2 * var(--length)) calc(-0.2 * var(--length)) calc(1 * var(--length)) #fff, calc(0.2 * var(--length)) calc(0.2 * var(--length)) calc(1 * var(--length)) #fff, 0 0 calc(0.5 * var(--length)) #fbbb32, 0 0 calc(1 * var(--length)) #fbbb32, 0 0 calc(1.5 * var(--length)) #fbbb32, 0 0 calc(2 * var(--length)) #fbbb32, 0 0 calc(2.5 * var(--length)) #fbbb32; } .slot-machine-top .machine-title { position: absolute; width: calc(70 * var(--length)); height: calc(17.5 * var(--length)); top: 50%; left: 50%; transform: translate(-50%, -50%); font-family: "Odor Mean Chey", serif; display: grid; place-content: center; color: #d3342e; font-size: calc(12.5 * var(--length)); font-weight: bolder; letter-spacing: calc(1.5 * var(--length)); border-radius: inherit; background: #222; } .slot-machine-top .jackpot { text-shadow: calc(-0.2 * var(--length)) calc(-0.2 * var(--length)) calc(1 * var(--length)) #fff, calc(0.2 * var(--length)) calc(0.2 * var(--length)) calc(1 * var(--length)) #fff, 0 0 calc(1 * var(--length)) #d3342e, 0 0 calc(2 * var(--length)) #d3342e, 0 0 calc(3 * var(--length)) #d3342e, 0 0 calc(4 * var(--length)) #d3342e, 0 0 calc(5 * var(--length)) #d3342e; } .slot-machine-middle { grid-area: middle; position: relative; display: flex; align-items: center; justify-content: center; padding: calc(5 * var(--length)); border-radius: var(--radius); background: #1a004d; } .slot-machine-middle .spinner-frame { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 80%; height: 80%; background: #fbbb32; border-radius: var(--radius); } .slot-machine-middle .spinner-frame::after { content: ""; position: absolute; height: 77.5%; width: 82.5%; top: 50%; left: 50%; transform: translate(-50%, -50%); border-radius: inherit; background: #1a004d; } .slot-machine-middle .spinner-shape { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 65%; height: 60%; background: conic-gradient(#737373 58.5deg, #8c8c8c 58.5deg 121.5deg, #737373 121.5deg 238.5deg, #8c8c8c 238.5deg 301.5deg, #737373 301.5deg); border-radius: var(--radius); } .slot-machine-middle .spinner-shape::before { content: ""; position: absolute; height: 90%; width: 90%; top: 50%; left: 50%; transform: translate(-50%, -50%); background: #1a004d; } .slot-machine-middle .spinners-container { position: absolute; display: flex; align-items: center; justify-content: space-evenly; height: 50%; width: 60%; overflow: hidden; } .slot-machine-middle .spinners-container .overlay { position: absolute; height: 100%; width: 30%; border: 2px solid black; background: linear-gradient(rgba(0, 0, 0, 0.75), rgba(255, 255, 255, 0.15) 33%, rgba(255, 255, 255, 0.15) 66%, rgba(0, 0, 0, 0.75)); } .slot-machine-middle .spinners-container .spinner-container { width: 30%; height: 100%; display: grid; place-content: center; background: whitesmoke; } .slot-machine-middle .spinners-container .spinner-container .spinner { position: relative; width: 100%; height: inherit; transform-style: preserve-3d; transform-origin: 50% 50% calc(-30 * var(--length)); pointer-events: none; } .slot-machine-middle .spinners-container .spinner-container .spinner .symbol { position: absolute; backface-visibility: hidden; height: 100%; width: 100%; font-size: calc(10 * var(--length)); display: grid; place-content: center; transform-origin: 50% 50% calc(-30 * var(--length)); } .slot-machine-middle .spinners-container .spinner-container .spinner > div:nth-child(1) { transform: rotateX(30deg); } .slot-machine-middle .spinners-container .spinner-container .spinner > div:nth-child(2) { transform: rotateX(60deg); } .slot-machine-middle .spinners-container .spinner-container .spinner > div:nth-child(3) { transform: rotateX(90deg); } .slot-machine-middle .spinners-container .spinner-container .spinner > div:nth-child(4) { transform: rotateX(120deg); } .slot-machine-middle .spinners-container .spinner-container .spinner > div:nth-child(5) { transform: rotateX(150deg); } .slot-machine-middle .spinners-container .spinner-container .spinner > div:nth-child(6) { transform: rotateX(180deg); } .slot-machine-middle .spinners-container .spinner-container .spinner > div:nth-child(7) { transform: rotateX(210deg); } .slot-machine-middle .spinners-container .spinner-container .spinner > div:nth-child(8) { transform: rotateX(240deg); } .slot-machine-middle .spinners-container .spinner-container .spinner > div:nth-child(9) { transform: rotateX(270deg); } .slot-machine-middle .spinners-container .spinner-container .spinner > div:nth-child(10) { transform: rotateX(300deg); } .slot-machine-middle .spinners-container .spinner-container .spinner > div:nth-child(11) { transform: rotateX(330deg); } .slot-machine-middle .spinners-container .spinner-container .spinner > div:nth-child(12) { transform: rotateX(360deg); } .slot-machine-middle .spinners-container .spinner-container .spinner-1 { transform: rotateX(var(--rot-spin)); transition: transform var(--rot-speed) linear; } .slot-machine-middle .spinners-container .spinner-container .spinner-2 { transform: rotateX(var(--rot-spin)); transition: transform var(--rot-speed) linear; } .slot-machine-middle .spinners-container .spinner-container .spinner-3 { transform: rotateX(var(--rot-spin)); transition: transform var(--rot-speed) linear; } .slot-machine-middle .spinners-container .spinner-container::after { content: ""; position: absolute; } .slot-machine-middle .glass-effect { position: absolute; top: 50%; left.........完整代码请登录后点击上方下载按钮下载查看
网友评论0