css+js实现中性立体液态彩色温度滑竿效果代码
代码语言:html
所属分类:拖放
代码描述:css+js实现中性立体液态彩色温度滑竿效果代码
代码标签: css js 中性 立体 液态 彩色 温度 滑竿
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en" >
<head>
<meta charset="UTF-8">
<style>
@charset "UTF-8";
@supports (background: paint(foo)) {
@property --progress {
syntax: "<percentage>";
inherits: true;
initial-value: 0%;
}
@property --x {
syntax: "<percentage>";
inherits: true;
initial-value: 0%;
}
@property --y {
syntax: "<percentage>";
inherits: true;
initial-value: 0%;
}
}
:root {
--c1: #00adff;
--c2: #39d469;
--c3: #ffeb00;
--c4: #ff8100;
--c5: #b50f0f;
--surface: #fffeff;
--on-surface: #636571;
--outline: #000001;
--background: #112;
--v: 1;
}
.thermostat {
height: 24vmin;
width: 100%;
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 1vmin;
position: relative;
place-items: center;
}
.liquid {
position: absolute;
inset: 0;
border-radius: 10vmin;
overflow: hidden;
isolation: isolate;
}
.liquid .bg {
position: absolute;
inset: 0;
}
.liquid .bg:before, .liquid .bg:after {
content: "";
position: absolute;
inset: 0;
--gp: calc(100% - var(--progress));
background: linear-gradient(to bottom, var(--c5) calc(5% - var(--gp)), var(--c4) calc(25% - var(--gp)), var(--c3) calc(50% - var(--gp)), var(--c2) calc(75% - var(--gp)), var(--c1) calc(100% - var(--gp)));
transform: translateY(calc(100% - var(--progress)));
-webkit-animation: wave 1s linear infinite;
animation: wave 1s linear infinite;
transition: all 0.3s linear;
filter: saturate(0.65);
}
.liquid .bg:after {
transform: scaleX(-1) translateY(calc(100% - var(--progress)));
opacity: 0;
--o: 0.6;
-webkit-animation-delay: 0.55s;
animation-delay: 0.55s;
}
@-webkit-keyframes wave {
from {
opacity: var(--o, 1);
-webkit-clip-path: polygon(100% 100%, 0% 100%, 0% 27.83%, 7.14% 28.61%, 14.29% 28.98%, 21.43% 28.9%, 28.57% 28.4%, 35.71% 27.49%, 42.86% 26.22%, 50% 24.65%, 57.14% 22.86%, 64.29% 20.95%, 71.43% 19%, 78.57% 17.12%, 85.71% 15.4%, 92.86% 13.92%, 100% 12.77%);
clip-path: polygon(100% 100%, 0% 100%, 0% 27.83%, 7.14% 28.61%, 14.29% 28.98%, 21.43% 28.9%, 28.57% 28.4%, 35.71% 27.49%, 42.86% 26.22%, 50% 24.65%, 57.14% 22.86%, 64.29% 20.95%, 71.43% 19%, 78.57% 17.12%, 85.71% 15.4%, 92.86% 13.92%, 100% 12.77%);
}
25% {
-webkit-clip-path: polygon(100% 100%, 0% 100%, 0% 17.77%, 7.14% 16.02%, 14.29% 14%, 21.43% 11.82%, 28.57% 9.58%, 35.71% 7.4%, 42.86% 5.38%, 50% 3.63%, 57.14% 2.23%, 64.29% 1.26%, 71.43% 0.76%, 78.57% 0.76%, 85.71% 1.26%, 92.86% 2.23%, 100% 3.63%);
clip-path: polygon(100% 100%, 0% 100%, 0% 17.77%, 7.14% 16.02%, 14.29% 14%, 21.43% 11.82%, 28.57% 9.58%, 35.71% 7.4%, 42.86% 5.38%, 50% 3.63%, 57.14% 2.23%, 64.29% 1.26%, 71.43% 0.76%, 78.57% 0.76%, 85.71% 1.26%, 92.86% 2.23%, 100% 3.63%);
}
50% {
-webkit-clip-path: polygon(100% 100%, 0% 100%, 0% 2.21%, 7.14% 1.34%, 14.29% 0.93%, 21.43% 1.01%, 28.57% 1.58%, 35.71% 2.6%, 42.86% 4.03%, 50% 5.8%, 57.14% 7.81%, 64.29% 9.97%, 71.43% 12.16%, 78.57% 14.28%, 85.71% 16.22%, 92.86% 17.88%, 100% 19.19%);
clip-path: polygon(100% 100%, 0% 100%, 0% 2.21%, 7.14% 1.34%, 14.29% 0.93%, 21.43% 1.01%, 28.57% 1.58%, 35.71% 2.6%, 42.86% 4.03%, 50% 5.8%, 57.14% 7.81%, 64.29% 9.97%, 71.43% 12.16%, 78.57% 14.28%, 85.71% 16.22%, 92.86% 17.88%, 100% 19.19%);
}
to {
opacity: var(--o, 1);
-webkit-clip-path: polygon(100% 100%, 0% 100%, 0% 31.33%, 7.14% 32.11%, 14.29% 32.48%, 21.43% 32.4%, 28.57% 31.9%, 35.71% 30.99%, 42.86% 29.72%, 50% 28.15%, 57.14% 26.36%, 64.29% 24.45%, 71.43% 22.5%, 78.57% 20.62%, 85.71% 18.9%, 92.86% 17.42%, 100% 16.27%);
clip-path: polygon(100% 100%, 0% 100%, 0% 31.33%, 7.14% 32.11%, 14.29% 32.48%, 21.43% 32.4%, 28.57% 31.9%, 35.71% 30.99%, 42.86% 29.72%, 50% 28.15%, 57.14% 26.36%, 64.29% 24.45%, 71.43% 22.5%, 78.57% 20.62%, 85.71% 18.9%, 92.86% 17.42%, 100% 16.27%);
}
}
@keyframes wave {
from {
opacity: var(--o, 1);
-webkit-clip-path: polygon(100% 100%, 0% 100%, 0% 27.83%, 7.14% 28.61%, 14.29% 28.98%, 21.43% 28.9%, 28.57% 28.4%, 35.71% 27.49%, 42.86% 26.22%, 50% 24.65%, 57.14% 22.86%, 64.29% 20.95%, 71.43% 19%, 78.57% 17.12%, 85.71% 15.4%, 92.86% 13.92%, 100% 12.77%);
clip-path: polygon(100% 100%, 0% 100%, 0% 27.83%, 7.14% 28.61%, 14.29% 28.98%, 21.43% 28.9%, 28.57% 28.4%, 35.71% 27.49%, 42.86% 26.22%, 50% 24.65%, 57.14% 22.86%, 64.29% 20.95%, 71.43% 19%, 78.57% 17.12%, 85.71% 15.4%, 92.86% 13.92%, 100% 12.77%);
}
25% {
-webkit-clip-path: polyg.........完整代码请登录后点击上方下载按钮下载查看
网友评论0