Kevin Powell
@kevinpowell.co
12K followers 240 following 1.5K posts
Helping people fall in love with CSS 📺 https://YouTube.com/@kevinpowell ✉️ https://kevinpowell.co/newsletter
Posts Media Videos Starter Packs
Pinned
kevinpowell.co
A lot of new followers since I posted this, so in case you missed it, here's my Front-end Friends starter pack 😊 go.bsky.app/FfLUXeQ

(and a more specific CSS Starter Pack here too: go.bsky.app/JQYmgQH)
Reposted by Kevin Powell
svenning.io
OKAY! OKAY! OKAY!

The winner of the #BadUXWorldCup will get a FREE copy of @kevinpowell.co's CSS Demystified course! 😱

Get building! More info on badux.lol
Reposted by Kevin Powell
nordcraft.com
Let's raise the stakes!

The winner of the #BadUXWorldCup will not only win the title and a shit trophy.

They will also receive a free copy of @kevinpowell.co's course
CSS demystified!
cssdemystified.com

What are you waiting for?

Submit your terrible date picker here
badux.lol
Bad UX World Cup
Build a bad date picker and win a shit trophy! Presented by Nordcraft.
badux.lol
kevinpowell.co
Oh, I have a better transcript that I forgot to add, I'll do that soon!
kevinpowell.co
Appreciate the insights, thanks!
kevinpowell.co
I still feel weird writing it without percentage, lol.
kevinpowell.co
Older browsers in this case is browsers from a decade ago 🤷‍♂️

I'm all for supporting older browsers, but unless your still supporting IE, there's no need
kevinpowell.co
Anyone who works on browsers, or might know of where there might be information on this:

I'm pretty sure that a few years ago I heard that browsers (maybe it was a specific one?) were optimizing custom props declared on the :root, and which didn't change values.

Was this a thing? Is it still true?
kevinpowell.co
Ok, I'll retract this statement, as it seems *a lot* of people still use rgba() and hsla().

Instead, I will recommend anyone who uses hsla() or rgba() to read this article, as even the comma-separated syntax is now legacy.

piccalil.li/blog/a-pragm...
Reposted by Kevin Powell
jacobasper.com
Amazing article! Definitely recommend giving it a read. I had no clue that the rgb and rgba functions are functionally the same
kevinpowell.co
Are you the type of dev who just copies and pastes hex codes?

If so, I've written an article over at @piccalil.li just for you!

I take a look at some of the new CSS colour features that are most useful for those who don't really care about colours.

piccalil.li/blog/a-pragm...
A pragmatic guide to modern CSS colours - part one
Whether you've got a firm grasp on modern CSS colour capabilities, or you're thinking 'I struggle to understand why I should use modern CSS colours at all', then the first part of this article series,...
piccalil.li
kevinpowell.co
The only issues with commas is if you want to use any of the new color functions, you have to use the space-separated syntax.

A lot more colors at your disposal with oklch(), for example.

Also, relative colors don't use commas either, and it's *amazing*.
kevinpowell.co
Pretty sure it's been a decade that we haven't needed it now.
kevinpowell.co
From my understanding of the browser support, we haven't needed it for 10 years now.
kevinpowell.co
Not particularly, and as it seems I'll be forced to do some in my position as judge, that entry is starting off quite poorly (which, in this case, is a good thing).
kevinpowell.co
I think the biggest giveaway that CSS has been generated using some sort of LLM (outside of the mistakes it might have made) is that they all seem to use `rgba()` or `hsla()`.

Is there so much training stuff out there still using the `a` with those? We haven't needed it for like a decade now.
kevinpowell.co
It's easier to make a bad one 🤣
kevinpowell.co
Oh, that's really nice!
Reposted by Kevin Powell
sturobson.com
awesome little #a11y bookmarklet from @lloydi.com

a11y-tools.com/bookmarklets...

(check out the other ones they have on that page, it's a right ol' treasure trove)
Screenshot of a UI design tool showing component states for a 'New Post' button. The interface displays a dark-themed modal window titled 'Component states' with a close button (X) in the top right. The modal shows five different interactive states: Default, Hover, Focus, Active, and Disabled. Each state displays a blue button with a pencil icon and 'New Post' text. The first four states (Default, Hover, Focus, Active) include warning indicators showing 'Low contrast: 2.39:1' with triangle warning icons. Each row has a trash icon button on the right. Below the states is a section titled 'ARIA attributes found' listing two attributes: aria-label: 'Compose new post' and aria-pressed: 'false'. The interface appears to be from an accessibility or design system testing tool.
kevinpowell.co
I'll sneak in some JS here and there. I'm trying to come up with reasons to explore Astro more in videos as well, so we'll see.

One thing that's for certain is no vibe coding 😊
kevinpowell.co
Company emails me for a sponsorship.

I don't reply within 24 hours, so they follow-up (fair enough).

In their reply they say "let me know if you aren't interested so I won't bug you anymore."

I tell them I'm not interested.

That triggers and automated "great, here's what we're looking for!"

🤦
kevinpowell.co
Thanks for pointing that out. I was A/B testing it with another thumbnail that didn't have that on it, so I've just set it to that one 😊

Going to brainstorm a bit for the title :)
Reposted by Kevin Powell
kevinpowell.co
One thing about making CSS content is when I see and interesting challenge, trying to solve it can make good content 😅

In this case, I saw a @codepen.io for a directionally-aware hover effect that only tracked mouse-in, so of course I wanted to try and track mouse-out too.

youtu.be/bjw0ka0raMA
Directionally aware button effect without JavaScript
YouTube video by Kevin Powell
youtu.be