
Soren
@sorenblank • 6,843 subscribers
design eng
Shorts
Videos

i wasn't aware of `animation-timeline` css property if I be honest. with it you can use css `scroll()` function to tie an animation with the scroll progress of a scrollable element. here im animating a `mask-image`s size based on the scroll progress with `2rem` of threshold.
Soren183,803 views • 7 months ago

been thinking of making this since i saw Seb Cornelius's post. the static hover book is a pure css approach. no javascript used here. each page has a fixed rotation defined to it. pages are stacked with absolute positioning and all rotate from `origin-left` (the spine).
Soren142,940 views • 6 months ago

oh gosh im so dumb! thanks jhey ʕ•ᴥ•ʔ! this is better ngl. in my prev impl i was trying to make the effect using css `translate-z` to create depth, perspective on container, and varied circle sizes. in this implementation, it uses 2D X/Y translation only. no Z-axis for the rings.
Soren143,320 views • 6 months ago

the sidebar icon now matches the state or the state it will go to. thanks jhey ʕ•ᴥ•ʔ :3
Soren133,722 views • 7 months ago

squircles feels nice. it's my first time trying the experimental css `corner-shape` property. you can just use in css `corner-shape: squircle` to make the squircles. had enough fun working on this control panel component. note: this is only support on "chromium" for now.
Soren76,361 views • 4 months ago

a smoother radius transform version using css. no framer motion used here. for auto height transition using css `grid` inspired by jhey ʕ•ᴥ•ʔ. when collapsed `grid-rows-[0fr]` and expanded `grid-rows-[1fr]`. and that with `ease-out-cubic` with `300ms` makes it feel just perfect ~
Soren104,532 views • 7 months ago

3d hover effect made only using css. no javascript or framer motion used here. im utilizing css `preserve-3d` transform-style. the parent tilts 55deg (X-axis) and spins -45deg (Z-axis). and on hover, im translating cards' Z 20px to have that elevation. with proper easing.
Soren21,757 views • 6 months ago
No more content to load