js实现可拖拽三维立方体内圆环旋转动画效果代码
代码语言:html
所属分类:三维
代码描述:js实现可拖拽三维立方体内圆环旋转动画效果代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8"> <style> :root { --cube: 50vmin; } *, *::before, *::after { box-sizing: border-box; } body { margin: 0; } #cube-wrap { perspective: 1000px; perspective-origin: 50% var(--cube); height: 100vh; display: grid; align-content: center; background: black; overflow: hidden; cursor: grab; } #cube-wrap:active { cursor: grabbing; } .cube { position: relative; width: var(--cube); height: var(--cube); transform-style: preserve-3d; transform: rotateX(-30deg) rotateY(45deg); margin: 0 auto; user-select: none; } .inner-wrap { position: relative; width: var(--cube); height: var(--cube); transform-style: preserve-3d; animation: spin 5s infinite linear; margin: 0 auto; user-select: none; } .cube .face { position: absolute; background: rgba(255, 0, 150, 0.25); width: 100%; height: 100%; backface-visibility: hidden; border: 3px solid black; } .front { transform: rotateY(0deg) translateZ(calc(var(--cube) * 0.5)); } .back { transform: rotateY(180deg) translateZ(calc(var(--cube) * 0.5)); } .left { transform: rotateY(-90deg) translateZ(calc(var(--cube) * 0.5)); } .right { transform: rotateY(90deg) translateZ(calc(var(--cube) * 0.5)); } .top { transform: rotateX(90deg) translateY(calc(var(--cube) * -0.5)); transform-origin: top left; } .bottom { transform: rotateX(-90deg) translateY(calc(var(--c.........完整代码请登录后点击上方下载按钮下载查看
网友评论0