Belépő animációk
Prizmás fényfeltárás
Élő előnézet – az animáció teljes méretben.
Élő előnézet
HTML · CSS · JS
<div class="we-prism-reveal">
<div class="we-prism-content">
<span class="we-prism-label">
WebElements
</span>
<strong>
Fényből születő forma
</strong>
<small>
Prizmás fényfeltáró animáció
</small>
</div>
<div class="we-prism-panel we-prism-panel-1"></div>
<div class="we-prism-panel we-prism-panel-2"></div>
<div class="we-prism-panel we-prism-panel-3"></div>
<div class="we-prism-beam"></div>
</div>
.we-prism-reveal {
width: 100%;
max-width: 440px;
height: 190px;
margin: 60px auto;
position: relative;
overflow: hidden;
background:
radial-gradient(
circle at 50% 50%,
rgba(142,232,212,.13),
transparent 55%
),
#080d11;
border: 1px solid rgba(142,232,212,.28);
border-radius: 18px;
color: #f2f4f0;
font-family: Arial, sans-serif;
perspective: 900px;
}
/* TARTALOM */
.we-prism-content {
position: absolute;
inset: 0;
z-index: 1;
display: flex;
flex-direction: column;
justify-content: center;
padding: 35px 40px;
opacity: 0;
animation:
prismContent
1s
cubic-bezier(.22,1,.36,1)
1.05s forwards;
}
.we-prism-label {
margin-bottom: 12px;
font-size: 11px;
letter-spacing: 4px;
text-transform: uppercase;
color: #8ee8d4;
}
.we-prism-content strong {
font-size: 27px;
font-weight: 500;
letter-spacing: -.5px;
}
.we-prism-content small {
margin-top: 10px;
font-size: 13px;
color: rgba(242,244,240,.62);
}
/* ÜVEGPRIZMÁK */
.we-prism-panel {
position: absolute;
top: -30%;
width: 75%;
height: 160%;
z-index: 3;
background:
linear-gradient(
105deg,
transparent 0%,
rgba(255,255,255,.025) 35%,
rgba(142,232,212,.15) 50%,
rgba(255,255,255,.035) 65%,
transparent 100%
);
border-left: 1px solid rgba(142,232,212,.20);
border-right: 1px solid rgba(142,232,212,.10);
transform: skewX(-18deg) translateX(-180%);
box-shadow:
0 0 35px rgba(142,232,212,.08),
inset 0 0 30px rgba(255,255,255,.025);
}
/* ELSŐ PRIZMA */
.we-prism-panel-1 {
animation:
prismSweep1
1.15s
cubic-bezier(.22,1,.36,1)
.05s forwards;
}
/* MÁSODIK PRIZMA */
.we-prism-panel-2 {
opacity: .75;
animation:
prismSweep2
1.25s
cubic-bezier(.22,1,.36,1)
.18s forwards;
}
/* HARMADIK PRIZMA */
.we-prism-panel-3 {
opacity: .45;
animation:
prismSweep3
1.35s
cubic-bezier(.22,1,.36,1)
.30s forwards;
}
/* FÉNYNYALÁB */
.we-prism-beam {
position: absolute;
z-index: 4;
top: -20%;
left: -20%;
width: 3px;
height: 140%;
background: #8ee8d4;
box-shadow:
0 0 8px rgba(142,232,212,1),
0 0 25px rgba(142,232,212,.9),
0 0 60px rgba(142,232,212,.45);
transform: rotate(18deg);
opacity: 0;
animation:
prismBeam
1.35s
ease-in-out
.35s forwards;
}
/* PRIZMA MOZGÁS */
@keyframes prismSweep1 {
0% {
transform: skewX(-18deg) translateX(-180%);
}
100% {
transform: skewX(-18deg) translateX(190%);
}
}
@keyframes prismSweep2 {
0% {
transform: skewX(-18deg) translateX(-200%);
}
100% {
transform: skewX(-18deg) translateX(210%);
}
}
@keyframes prismSweep3 {
0% {
transform: skewX(-18deg) translateX(-220%);
}
100% {
transform: skewX(-18deg) translateX(230%);
}
}
/* FÉNY */
@keyframes prismBeam {
0% {
left: -20%;
opacity: 0;
}
15% {
opacity: 1;
}
75% {
opacity: 1;
}
100% {
left: 120%;
opacity: 0;
}
}
/* TARTALOM FELTÁRÁSA */
@keyframes prismContent {
0% {
opacity: 0;
transform: scale(.94);
filter: blur(8px);
}
45% {
opacity: .35;
filter: blur(3px);
}
100% {
opacity: 1;
transform: scale(1);
filter: blur(0);
}
}
Ehhez az animációhoz nincs külön JavaScript.