And seriously, if you donβt share this feeling, if you manage to work only with developers who love CSS and are willing to learn - I envy you.
@amitsheen
Experienced web developer, specializing in design systems, animation, and creative coding. Passionate about pushing CSS to its limits. Posts (mostly) front-of-the-frontend stuff and animations. Don't follow people who post or share about politics.
And seriously, if you donβt share this feeling, if you manage to work only with developers who love CSS and are willing to learn - I envy you.
But... Yes, in most companies, there are some devs who care and do know CSS, so I suggested a method to bring order to the mess. without trying to educate, without changing paradigms, without complicating.
Itβs not for everyone, like anything else. But still - most projects today use z-index.
Again, in most companies, certainly start-ups, and in all the ones Iβve worked at, most of the code is written by FS devs that donβt read CSS-Tricks. They should. Wish they did. In an ideal world, there wouldnβt be a need for z-index, maybe, but people do use it, and it can by a source of chaos.
Teach?! Who said anything about teaching?
Youβre still trying to teach FS devs CSS? Do you know any devs actually willing to learn something that isnβt JS or AI? I envy you. You live in a very different world.
Again, I agree. βUsing better techniques than fighting someone else's valueβ is exactly the goal here.
But in many teams, most FS devs canβt even define what the top-layer is. Eliminating z-index isnβt very realistic in that environment.
Bringing some structure to it, is still a big improvement.
I get the intention, and agree that a good understanding of stacking contexts and using the top layer where appropriate can eliminate a lot of unnecessary z-index usage.
That said, avoiding z-index entirely isnβt very realistic... π
So the goal is making it predictable, not pretending itβs gone.
New article! π
Struggling with z-index for modals, tooltips, or toasts? Stop racing for the highest number. I wrote a full guide and made a tiny library to keep it tidy.
Read it on @css-tricks.com: css-tricks.com/the-value-of...
Aren't z-index values one of those things we all sorta struggle with? How we choose them, how we manage them, how we balance the stacking contexts, etc.
@amitsheen.bsky.social has a great way to approach it... all around tokens for intentional intentional layers.
css-tricks.com/the-value-of...
Think youβre looking down a long corridor?!... Think again.
An optical illusion in pure #CSS. π΅
Inspired by the amazing work of @akiyoshikitaoka.bsky.social
Live demo on @codepen.io: codepen.io/editor/amit_...
We all need more *frontend-* horse. π
Thanks!
But I think the logo we ended up choosing was better. π
Iβm excited to share that my session from CSS Day is now live on YouTube π₯
Ever wondered what a CPU is actually built of? And if it's possible to build one using only #CSS? If so, I think youβll enjoy it. π
Would love to hear your thoughts! π
π www.youtube.com/watch?v=PFqt...
In case you missed it yesterday, here's @amitsheen.bsky.social building a computer with CSS.
www.youtube.com/watch?v=PFqt...
This is awesome!
I didnβt know about this, and someone else sent it to me yesterday as well. Itβs amazing how similar it looks.
The difference here is that Iβm not using any special hardware, just a regular old webcam. And no laptop, itβs running directly in the TVβs browser.
Thanks.
Not my phone, my eyes. it finds the center point between your eyes (in a full 3d space) and sets the perspective origin accordingly.
In the video I'm just holding the phone near my face.
Iβm trying to turn my TV into a full-on 3D portal. This is phase one, what do you think? π
No, it is not AI. Yes, itβs all done with #CSS perspective.
π£ New Article:
π£ Rethinking βPixel Perfectβ
a hard look at the βPixel Perfectβ legacy concept, explaining why itβs failing us and redefining what βperfectionβ actually looks like in a multi-device, fluid world.
π www.smashingmagazine.com/2026/01/reth...
@smashingmagazine.com
Would be honored to be considered, if the rest of the roster is up for a challenge π.
Expect weird CSS, questionable life choices, and at least one unnecessary pseudo-element.
Oh yes!
Iβm going to use this so much!!!
π’ New article!
Beyond the Mouse: Animating with Mobile Accelerometers
If you want to make mobile interfaces feel more alive, I would love for you to take a look.
π frontendmasters.com/blog/beyond-...
* For the full experience, I highly recommend reading it on a mobile device.
@frontendmasters.com
Kicking off 2026 with WebXR experiments! π π
btw, a year ago I was playing with 2D hand tracking via the webcam and projecting it into 3D using CSS. Now I am waiting for a more solid implementation of the WebXR DOM Overlays Module so I can start layering some CSS on top of it too. π€£
This is amazing!
had not seen it, great work.
I actually tried to avoid using trigonometry and 3d matrices on my end, to keep the whole thing more approachable, and so that I can use this on more complex shapes later.
Playing with triangles to create mesh deformation in pure #CSS.
Live demo @codepen.io: codepen.io/amit_sheen/f...
Nice!
I love animation experiments that react to the mouse position.
Hereβs something I made a few months ago that I really like.
codepen.io/amit_sheen/f...
Turn any profile picture into a stunning piece of art.
Upload your image, adjust the slider, and download your new picture.
Enjoy. π
π Live on @codepen.io: codepen.io/amit_sheen/f...
Not sure about "swear by", but I use a simple crop DSLR (Canon D850) with a fixed 24mm 2.8 lens. Using a single LED projector for lighting (it's pointing backwards towards the wall so I get a nice soft reflection), and a blue flood-light on the back wall. Not fancy, but I'm happy with the result. π
What now?!
I saw a few folks posting their FizzBuzz solutions, so I figured Iβd make my own pure #CSS version. (No markup)
π Live demo on @codepen.io: codepen.io/amit_sheen/f...
Iβm actually working on a mobile solution right now. I have a really interesting direction that looks promising. As soon as I have a stable enough example, Iβll share it here.
Use it! And share the result.
If you need help with the implementation, Iβm here. :)