js+css实现多个人物图像堆叠悬浮跳出姓名动画效果代码
代码语言:html
所属分类:动画
代码描述:js+css实现多个人物图像堆叠悬浮跳出姓名动画效果代码,可通过tweakpane修改参数实现你想要的效果。
代码标签: js css 多个 人物 图像 堆叠 悬浮 跳出 姓名 动画
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en" >
<head>
<meta charset="UTF-8">
<style>
@import url('https://unpkg.com/normalize.css') layer(normalize);
@layer normalize, base, demo, masking, debug;
@layer debug {
[data-animate-bg='true'] .container {
--bg: linear-gradient(in hsl longer hue 90deg, hsl(10 100% 70%) 0 100%)
calc(var(--bd) * -1px) 0 / 400% 100%;
&::before,
&::after {
animation: scale-bg infinite linear 8s;
}
}
[data-animate-bg='false'] .container {
--primary: light-dark(hsl(0 0% 0% / 0.4), hsl(0 0% 90%));
--bg: linear-gradient(var(--primary) 0 100%);
--bg: linear-gradient(#0000 0 100%);
}
.container {
height: calc((var(--size) + (var(--size) * 0.5)) * 1px);
padding-inline: calc(var(--size) * 0.25px);
border-radius: calc(var(--size) * 2px);
position: relative;
--bd: 2;
&::before,
&::after {
content: '';
position: absolute;
inset: 0;
pointer-events: none;
z-index: -1;
border-radius: calc(var(--size) * 2px);
background: var(--bg);
}
&::before {
opacity: 0.3;
}
&::after {
border: calc(var(--bd) * 1px) solid #0000;
mask: linear-gradient(transparent, transparent),
linear-gradient(white, white);
mask-clip: padding-box, border-box;
mask-composite: intersect;
}
}
@keyframes scale-bg {
to {
background-position: 400% 0;
}
}
ul.items::after {
padding-top: 1rem;
color: color-mix(in hsl, currentColor, #0000 25%);
text-align: center;
font-family: monospace;
font-weight: 200;
text-transform: uppercase;
content: 'masked item';
position: absolute;
background: blue;
z-index: -1;
width: calc(var(--size) * 1px);
aspect-ratio: 1 / 3;
outline: 1px solid red;
background: repeating-linear-gradient(
45deg,
hsl(0 100% 50% / 0.5) 0 1px,
#0000 6px 7px
);
bottom: 0%;
opacity: 0;
left: calc(var(--column) * 1.5px);
translate: -50% calc((var(--size) - var(--column)) * 0.5px);
transition: opacity 0.5s ease-out;
}
li:first-of-type {
position: relative;
}
li:first-of-type::after {
padding-top: 1rem;
color: color-mix(in hsl, currentColor, #0000 25%);
text-align: center;
font-family: monospace;
font-weight: 200;
text-transform: uppercase;
content: 'grid column';
width: calc(var(--column) * 1px);
height: calc(var(--size) * 2.5px);
outline: 1px solid hsl(220 100% 50%);
background: repeating-linear-gradient(
45deg,
hsl(220 100% 50% /.........完整代码请登录后点击上方下载按钮下载查看
















网友评论0