Complaining about browser support is getting old


View this email in your browser (or share it with a friend!)

PRE-S: The latest State of CSS survey is now open!

I’ll be doing a live stream this upcoming Thursday or Friday, going through it myself, but you might as well jump in first! The more people who take this, the more representative it is, and the browsers use the data from these to know what features need improving and what is missing, so it is worth the time to take!


Hello Reader,

I’ve been getting a lot of comments lately asking about browser support whenever I show off a newer CSS feature, and honestly, it’s starting to wear on me a bit.

Or well, that isn’t quite true. I’ve always gotten a lot of comments about browser support, but lately it’s been irking me more than usual.

Don’t get me wrong, I get why people ask!

Browser support is important, and we don’t want to use something so cutting edge that it breaks the way our site looks for most users.

Most videos where people ask, I have a link to the Can I Use table in the description already, and I explain how to use it as a progressive enhancement. The one exception I have for this is for very new and experimental things, like when I looked at reading-order and reading-flow a few weeks ago.

The reason I don’t specifically mention where browser support is in my videos is that a week after that video comes out, what I mention would be out of date anyway, and I can't update the video, or have a live support table like a blog post can.

I’d rather people look for themselves when they see the video, and decide based on their own situation.

But there’s a more important thing: we shouldn’t let perfect browser support stop us from learning about and even using new features.

We can use progressive enhancement and accept that some users might not get the fanciest experience, or come in with a feature query or two to provide a fallback.

Perfect browser support has never* been a requirement for good web development.

If it were, no one would have made sites when IE6 was a thing 😆.

Learn the new stuff, understand how it works, and then make informed decisions about when and how to use it.

*I realize that some people work in jobs where they might be told something different here. If that’s the case for you, I would encourage open dialogue when possible. The best argument is “I can make this happen in half the time using a newer feature, with this as a fallback that only about X% of our users will see” or something along those lines. Long-term maintenance is usually a lot easier with modern features as well.

🙋‍♂️ What I’ve been up to this week

video preview

I was recently asked about creating the glowing border effect from Google’s AI Mode, and it sounded like a fun challenge, so here’s how I did it!

My finished code is here, if you want to poke around at it, but in the video I mentioned there are probably ways to do it with actual transparent backgrounds, and there are several solutions over in the Discord Community now as well.

📝 Quiz time!

Which of the following is NOT a valid pseudo-element?

  1. ::after
  2. ::marker
  3. ::selection
  4. ::visited

Head on over to YouTube and submit your answer there to find out the correct answer.🙂

⚡ Quick tips of the week

🎙️ Podcast

Are we losing our craft?

In this episode, I read through 'The Promise that wasn't Kept' by Salma Alam-Naylor and 'Ensloppification' by David Bushell, and give my thoughts on what they wrote, examining the hype, flaws, and environmental concerns surrounding AI tools in the software industry and discuss the need for a more responsible, human-centered approach to integrating AI into our workflows.

LISTEN ON: APPLE | SPOTIFY | YOUTUBE | WEB

🔗 Other awesome stuff around from the web

🏁

Have a fantastic week!
Kevin


Are you looking to step up your CSS? I've got both free and premium courses to help with that! They cover a range of skill levels too 👇

Beginner friendly (and free)

Conquering Responsive Layout

A free course to help you approach responsive layouts with the right mindset.

Enroll →

Intermediate

CSS Demystified

For those who've been writing CSS for a little bit now, but want to step up their game and start writing CSS with confidence!

Enroll →

Advanced

Beyond CSS

An advanced course that dives into project architecture, theming, design systems, and more.

Enroll →

If you no longer want to get any emails from me, you can unsubscribe or you can edit your preferences if you'd like pick which emails you get from me.
113 Cherry St #92768, Seattle, WA 98104-2205

Hi! I'm Kevin

Weekly newsletter, where I talk about tangentially-related front-end development topics and share what I've been up to in the last week, plus any cool/fun/interesting/useful links I come across as well.

Read more from Hi! I'm Kevin

View this email in your browser (or share it with a friend!) Hello Reader, Ethan Marcotte first coined the term Responsive Design in an article for A List Apart back in 2010. Yup, it’s been 15 years. As the name implies, Responsive Design involves writing CSS that allows the layout to respond to how a user is consuming the content, with “Fluid grids, flexible images, and media queries [being] the three technical ingredients for responsive web design.” For a long time, media queries (@media)...

View this email in your browser (or share it with a friend!) Hello Reader, I got this comment on a video that I posted this week: For such a fundamental concept, you'd think it would be something that's talked about more, but it really isn't talked about enough. Of course, that's why I made this video! I only really started thinking about this more recently, because for some reason, it was one of the things I sort of never thought too much about. It might seem strange, but for me, it was...

View this email in your browser (or share it with a friend!) Hello Reader, One big problem with features like Grid and Flexbox (and maybe soon Masonry) is that we can move elements around. This might sound like a feature, but in reality, it can cause many issues because even something as simple as flex-direction: row reverse can muck with tab order. There are times where it can potentially be a good idea to re-order things with CSS (say, when you want an image above a title of a card, but in...