CSS Tricks

An Introduction to JavaScript Expressions

Mat Marquis |
A thorough but approachable lesson on JavaScript expressions excerpted JavaScript For Everyone, a complete online course offered by our friends at Piccalilli. An Introduction to JavaScript Expressions originally published on CSS-Tricks, which is part of the DigitalOcean family. You should get the ... read more

Building a Honeypot Field That Works

Zell Liew |
Honeypots are fields that developers use to prevent spam submissions. They still work in 2025. But you got to set a couple of tricks in place so spambots can’t detect your honeypot field. Building a Honeypot Field That Works originally published on CSS-Tricks, which is part of the DigitalOcean fam... read more

Sequential linear() Animation With N Elements

Temani Afif |
Let’s suppose you have N elements with the same animation that should animate sequentially. Modern CSS makes this easy and it works for any number of items! Sequential linear() Animation With N Elements originally published on CSS-Tricks, which is part of the DigitalOcean family. You should get th... read more

Masonry: Watching a CSS Feature Evolve

Saleh Mubashar |
What can CSS Masonry discussions teach us about the development of new CSS features? What is the CSSWG’s role? What influence do browsers have? What can learn from the way past features evolved? Masonry: Watching a CSS Feature Evolve originally published on CSS-Tricks, which is part of the Digital... read more

We Completely Missed width/height: stretch

Daniel Schwarz |
The TL;DR is that stretch does the same thing as declaring 100%, but ignores padding when looking at the available space. We Completely Missed width/height: stretch originally published on CSS-Tricks, which is part of the DigitalOcean family. You should get the newsletter. ... read more

The thing about contrast-color

Geoff Graham |
One of our favorites, Andy Clarke, on the one thing keeping the CSS contrast-color() function from true glory: For my website design, I chose a dark blue background colour (#212E45) and light text (#d3d5da). This … The thing about contrast-color originally published on CSS-Tricks, which is part... read more

Getting Creative With shape-outside

Andy Clarke |
There are so many creative opportunities for using shape-outside that I’m surprised I see it used so rarely. So, how can you use it to add personality to a design? Here’s how I do it. Getting Creative With shape-outside originally published on CSS-Tricks, which is part of the DigitalOcean family. ... read more

Same Idea, Different Paint Brush

Geoff Graham |
Naturally, everything looks like code when I'm staring at a blank canvas. That's whether the canvas is paper, a screen, some Figma artboard, or what have you. Same Idea, Different Paint Brush originally published on CSS-Tricks, which is part of the DigitalOcean family. You should get the newslette... read more

Touring New CSS Features in Safari 26

Juan Diego Rodríguez |
Safari 26 adds:75 new features, 3 deprecations, and 171 other improvements. Here's all the CSS goodness you'll want to know about. Touring New CSS Features in Safari 26 originally published on CSS-Tricks, which is part of the DigitalOcean family. You should get the newsletter. ... read more

Recreating Gmail’s Google Gemini Animation

John Rhea |
John Rhea challenged himself to recreate the fancy button using the new CSS shape() function sprinkled with animation to get things pretty close. Recreating Gmail’s Google Gemini Animation originally published on CSS-Tricks, which is part of the DigitalOcean family. You should get the newsletter. ... read more