gsap实现滚动深海的鱼儿动画效果代码
代码语言:html
所属分类:加载滚动
代码描述:gsap实现滚动深海的鱼儿动画效果代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8"> <style> @import url("https://fonts.googleapis.com/css2?family=Judson&display=swap"); * { box-sizing: border-box; } body { font-family: "Judson", serif; background: linear-gradient(to bottom, #63a7bf, #5e56b3, #488ba3, #4f7cb3, #34738c, #305c91, #275291, #133a6e, #0a3250, #282964, #0e345e, black); max-width: 100vw; min-height: 100vh; overflow-x: hidden; color: white; position: relative; margin: 0; } body::after { position: fixed; content: ""; pointer-events: none; top: 0; left: 0; width: 100%; height: 100vh; background: radial-gradient(circle at center, transparent, rgba(0, 0, 0, 0.5)); } @media (min-width: 40em) { body { font-size: 2rem; } } .rays { --r: 10deg; --c: rgba(255, 251, 227, 0.2); --size: max(60vh, 80rem); --mask: radial-gradient(circle at center, black, transparent 50%); position: fixed; pointer-events: none; top: calc(var(--size) * -0.55); left: 50%; width: var(--size); height: var(--size); pointer-events: none; } .rays > div { width: 100%; height: 100%; border-radius: 50%; background: repeating-conic-gradient(var(--c), var(--c) var(--r), transparent var(--r), transparent calc(var(--r) * 2)); -webkit-mask-image: var(--mask); mask-image: var(--mask); } @keyframes raysRotate { 50% { transform: rotate(180deg) scale(1.5); } 100% { transform: rotate(360deg) scale(1); } } .fish-wrapper { --mask: linear-gradient(180deg, rgba(0, 0, 0, 1.0), transparent); width: 100%; height: 100vh; position: fixed; top: 0; left: 0; perspective: 100rem; perspective-origin: center center; transform-style: preserve-3d; pointer-events: none; -webkit-mask-image: var(--mask); mask-image: var(--mask); z-index: 2; } .fish { --bodyW: 2rem; --o: 0.95; --l: 100%; --c: hsla(250deg, 50%, var(--l), var(--o, 0.6)); --size: 10rem; position: relative; width: var(--size); height: var(--size); transform-style: preserve-3d; transform-origin: center; } @media (min-width: 1000px) { .fish { --size: 20rem; --bodyW: 4rem; } } .fish__skeleton { --clip: polygon(0 var(--bodyW), 45% 0, 55% 0, 100% var(--bodyW), 50% 100%); position: absolute; width: 100%; height: 100%; background: repeating-linear-gradient(0deg, var(--c), var(--c) 0.1rem, transparent 0, transparent 0.5rem), linear-gradient(var(--c) var(--bodyW), transparent var(--bodyW)), linear-gradient(90deg, transparent calc((var(--bodyW) / 2) - 0.1rem), var(--c) 0, var(--c) calc((var(--bodyW) / 2) + 0.1rem), transparent 0); top: calc(var(--bodyW) / 4); left: calc(var(--bodyW) * 0.75); width: var(--bodyW); height: calc(var(--bodyW) * 4); -webkit-clip-path: var(--clip); clip-path: var(--clip); opacity: 0; transform: translate3.........完整代码请登录后点击上方下载按钮下载查看
网友评论0