← Back to Master.dev
Courses Learn Become a Member Guest Writing
RSS
Blog
Author Archive for

Temani Afif

Post Thumbnail for Transferring sibling-count() to a Parent Element
CSSScroll-Driven Animationssibling-count()sibling-index()

Transferring sibling-count() to a Parent Element

By Temani Afif on Oct 05, 2026

You can tell a parent element how many children it has with… scroll-driven animations??

Post Thumbnail for Extracting Grid Information Using CSS
CSSCustom PropertiesGridScroll-Driven Animations

Extracting Grid Information Using CSS

By Temani Afif on Sep 16, 2026

It’s an interesting and potentially useful trick to have an element know where it is on a grid. That’s tricky enough when the items are in one row/column, but what about when they span?

Post Thumbnail for Hover Proximity Using Modern CSS
:has():hoverCSSGridHover Proximity

Hover Proximity Using Modern CSS

By Temani Afif on Aug 26, 2026

You can always easily style :hover, but what if you want the NEXT item to have styling too? Or, just a smidge harder, the PREVIOUS item. How about multiple in any direction?

Post Thumbnail for Something Nobody Told You About The Image Element (It Can Overflow!)
CSSHTMLImagesOverflow

Something Nobody Told You About The Image Element (It Can Overflow!)

By Temani Afif on Aug 03, 2026

You normally don’t think of images as overflowing themselves, nor can you put anything else inside to make it overflow, but actually…

Post Thumbnail for In-N-Out Animation using sibling-index()
AnimationCSSsibling-index()

In-N-Out Animation using sibling-index()

By Temani Afif on Jul 13, 2026

Temani mimics a View Transition by placing items using their index and translations. The placement calculation change when the index changes, which is an animation opportunity!

Post Thumbnail for Let’s Play With Gap Decorations!
CSSGapGap Decorationsrule

Let’s Play With Gap Decorations!

By Temani Afif on Jun 24, 2026

The `rule` (and friends) CSS property allows us to draw markers (like borders) in the gaps between columns and rows (and flex items!)

Post Thumbnail for How to Control Infinite CSS Animations (Part 2 of 2)
@starting-styleAnimationanimation-play-stateCSS

How to Control Infinite CSS Animations (Part 2 of 2)

By Temani Afif on May 15, 2026

This time we get into very smooth starts and stops for infinite animations using CSS. One of the tricks is layering on a transition on top of an animation.

Post Thumbnail for How to Control Infinite CSS Animations (Part 1 of 2)
Animationanimation-compositionCSS

How to Control Infinite CSS Animations (Part 1 of 2)

By Temani Afif on May 08, 2026

Something like manipulating the speed of an animation isn’t a big deal, but it’s harder when the animation is *already running*. We got tricks.

Post Thumbnail for Two Circles, One Arrow, and Anchor Positioning
AnchorCSSGeometryMath

Two Circles, One Arrow, and Anchor Positioning

By Temani Afif on Mar 23, 2026

Drawing an line with arrows pointing to the center of two arbitrary elements measuring and displaying the distance between them doesn’t seem like it would be possible in CSS alone… but…

Post Thumbnail for How to Create a CSS-only Elastic Text Effect
@propertyCSSlinear()shape()sibling-index()

How to Create a CSS-only Elastic Text Effect

By Temani Afif on Feb 11, 2026

What can we say except BOINNNGGG BOINNGGGGGG.

Author

Temani Afif
Temani Afif
I'm a CSS addict and I love writing about my experiments. I am also the developer behind my CSS-related websites, such as css-generators.com, css-tip.com, css-loaders.com and many more!
Website GitHub Profile X Profile
Older Posts →
$966,000

Master.dev donates to open source projects through thanks.dev and Open Collective, as well as donates to non-profits like The Last Mile, Annie Canons, and Vets Who Code.

  • Courses
  • Learn
  • Teachers
  • Guides
  • Blog
  • FAQ
  • Login
  • Join Now
  • RSS
X LinkedIn Facebook Instagram RSS
Master.dev App on the Apple App Store Master.dev App on Google Play
Contact: support@master.dev
Master.dev is proudly made in Minneapolis, MN
©2026 Master.dev · Terms of Service · Privacy Policy