Pros
Cons
Good for
frames
current frame
Pros
Cons
Good for
19200 x 300
😭
Pros
Cons
Good for
After Effects -> JSON -> Vector animation (SVG)
Pros
Cons
Good for
button {
background: blue;
color: white;
padding: 50px;
font-size: 50px;
}
button:active {
background: green;
transition: background 300ms ease-in;
}
button {
background:blue;
color:white;
padding:50px;
font-size:50px;
/* animation css here */
transition:300ms ease-in;
}
button:active {
background:green;
}
button:hover {
background:orange;
}
@keyframes rotate {
from { transform: rotate(0deg); }
to { transform: rotate(360deg); }
}
.loading-indicator:before {
animation:800ms rotate infinite ease;
}
@keyframes rotate {
from { transform: rotate(0deg); }
to { transform: rotate(360deg); }
}
.loading-indicator:before {
animation:800ms rotate infinite ease;
}
.gallery-entry .picture {
transition:300ms ease-out;
}
.gallery-entry:hover .picture {
transform:scale(1.2);
}
.gallery-entry.active .picture {
transform:scale(1.3);
}
#gallery {
transition:500ms all;
}
@media only screen and (max-width: 600px) {
#gallery {
height:calc(200vh - 100px);
grid-template: repeat(2, 50fr);
}
}
export function zoomElement(element, onComplete) {
const { content, picture, title } = getElements(element);
return new TimelineLite()
.set(content, { ... })
.set(picture, { ... })
.set(title, { ... })
.add('start')
.to(content, 0.5, { ... }, 'start')
.to(picture, 0.3, { ... },'start')
.to(title, 0.3, { ... }, 'start')
.eventCallback('onComplete', onComplete );
}
tween = {
startValue: 0,
endValue: 10,
duration: 3000
}
xPosition = {
startValue: 100,
endValue: 300,
duration: 1000
}