gsap实现台灯拉线开关点亮动画交互效果代码
代码语言:html
所属分类:动画
代码描述:gsap实现台灯拉线开关点亮动画交互效果代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en" >
<head>
<meta charset="UTF-8">
<style>
*,
*:after,
*:before {
box-sizing: border-box;
}
:root {
--cord: hsl(210, 0%, calc((40 + (var(--on, 0) * 50)) * 1%));
--opening: hsl(50, calc((10 + (var(--on, 0) * 80)) * 1%), calc((20 + (var(--on, 0) * 70)) * 1%));
--feature: #0a0a0a;
--accent: 210;
--tongue: #e06952;
--base-top: hsl(var(--accent), 0%, calc((40 + (var(--on, 0) * 40)) * 1%));
--base-side: hsl(var(--accent), 0%, calc((20 + (var(--on, 0) * 40)) * 1%));
--post: hsl(var(--accent), 0%, calc((20 + (var(--on, 0) * 40)) * 1%));
--b-1: hsla(45, calc((0 + (var(--on, 0) * 0)) * 1%), calc((50 + (var(--on, 0) * 50)) * 1%), 0.85);
--b-2: hsla(45, calc((0 + (var(--on, 0) * 0)) * 1%), calc((20 + (var(--on, 0) * 30)) * 1%), 0.25);
--b-3: hsla(45, calc((0 + (var(--on, 0) * 0)) * 1%), calc((20 + (var(--on, 0) * 30)) * 1%), 0.5);
--b-4: hsla(45, calc((0 + (var(--on, 0) * 0)) * 1%), calc((20 + (var(--on, 0) * 30)) * 1%), 0.25);
--l-1: hsla(45, calc((0 + (var(--on, 0) * 20)) * 1%), calc((50 + (var(--on, 0) * 50)) * 1%), 0.85);
--l-2: hsla(45, calc((0 + (var(--on, 0) * 20)) * 1%), calc((50 + (var(--on, 0) * 50)) * 1%), 0.85);
--shade-hue: 320;
--t-1: hsl(var(--shade-hue), calc((0 + (var(--on, 0) * 20)) * 1%), calc((30 + (var(--on, 0) * 60)) * 1%));
--t-2: hsl(var(--shade-hue), calc((0 + (var(--on, 0) * 20)) * 1%), calc((20 + (var(--on, 0) * 35)) * 1%));
--t-3: hsl(var(--shade-hue), calc((0 + (var(--on, 0) * 20)) * 1%), calc((10 + (var(--on, 0) * 20)) * 1%));
}
body {
min-height: 100vh;
display: grid;
place-items: center;
background: #121921;
}
label,
input {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.lamp {
display: none;
height: 40vmin;
overflow: visible !important;
}
.cord {
stroke: var(--cord);
}
.cord--rig {
display: none;
}
.lamp__tongue {
fill: var(--tongue);
}
.lamp__hit {
cursor: pointer;
opacity: 0;
}
.lamp__feature {
fill: var(--feature);
}
.lamp__stroke {
stroke: var(--feature);
}
.lamp__mouth,
.lamp__light {
opacity: var(--on, 0);
}
.shade__opening {
fill:.........完整代码请登录后点击上方下载按钮下载查看
网友评论0