css实现一个拉开窗帘交互效果代码
代码语言:html
所属分类:动画
代码描述:css实现一个拉开窗帘交互效果代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8"> <style> * { box-sizing: border-box; transform-style: preserve-3d; } :root { --height: 300px; --width: calc(0.6 * var(--height)); --glass: rgba(207,229,252,0.5); --shimmer: rgba(255,255,255,0.95); --w-1: #546043; --w-2: #373c2f; --f-1: #251b0e; --f-2: #372915; --f-3: #5c4424; --f-4: #6e522b; --i-1: #574638; --b-1: #b5bea7; --b-2: #6a7557; --b-3: #353b2b; } body { min-height: 100vh; display: grid; place-items: center; justify-content: center; overflow: hidden; background: rgba(255,230,153,0.5); } .cuboid { width: 100%; height: 100%; position: relative; pointer-events: none; } .cuboid__side { pointer-events: none; } .cuboid__side:nth-of-type(1) { height: calc(var(--thickness) * 1px); width: 100%; position: absolute; top: 0; transform: translate(0, -50%) rotateX(90deg); } .cuboid__side:nth-of-type(2) { height: 100%; width: calc(var(--thickness) * 1px); position: absolute; top: 50%; right: 0; transform: translate(50%, -50%) rotateY(90deg); } .cuboid__side:nth-of-type(3) { width: 100%; height: calc(var(--thickness) * 1px); position: absolute; bottom: 0; transform: translate(0%, 50%) rotateX(90deg); } .cuboid__side:nth-of-type(4) { height: 100%; width: calc(var(--thickness) * 1px); position: absolute; left: 0; top: 50%; transform: translate(-50%, -50%) rotateY(90deg); } .cuboid__side:nth-of-type(5) { height: 100%; width: 100%; transform: translate3d(0, 0, calc(var(--thickness) * 0.5px)); position: absolute; top: 0; left: 0; } .cuboid__side:nth-of-type(6) { height: 100%; width: 100%; transform: translate3d(0, 0, calc(var(--thickness) * -0.5px)) rotateY(180deg); position: absolute; top: 0; left: 0; } .scene { transform: rotateX(-24deg) rotateY(32deg); } .window { height: var(--height); width: var(--width); background: linear-gradient(var(--i-1), var(--i-1)) 0 0/100% 5% no-repeat, linear-gradient(var(--i-1), var(--i-1)) 0 0/5% 100% no-repeat, linear-gradient(var(--i-1), var(--i-1)) 100% 0/5% 100% no-repeat, linear-gradient(var(--i-1), var(--i-1)) 0 100%/100% 5% no-repeat, linear-gradient(var(--i-1), var(--i-1)) 0 64%/100% 8% no-repeat, linear-gradient(130deg, transparent 0 15%, var(--shimmer) 16% 35%, transparent 36% 40%, var(--shimmer) 41% 44%, transparent 45%), var(--glass); position: relative; } .window__cord { height: 94%; width: 2%; background: #fafafa; right: 10%; position: absolute; top: 0; transform: translate3d(0, 0, 20px); } .window__cord--back { height: 94%; width: 2%; background: #e0e0e0; right: 12%; position: absolute; top: 0; transform: translate3d(0, 0, 18px); } .frame { position: absolute; } .frame--top { width: 130%; height: 5%; bottom: 100%; left: 50%; transform: translate(-50%, 0); } .frame--left { width: 10%; height: 100%; right: 100%; top: 0; } .frame--right { width: 10%; height: 100%; left: 100%; top: 0; } .frame--bottom { width: 120%; height: 10%; left: 50%; top: 105%.........完整代码请登录后点击上方下载按钮下载查看
网友评论0