Free Grid Workshop (and some other things)


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

Hello Reader,

Yup, you read that right, I'm hosting a totally free CSS Grid workshop this week! You can scroll down a bit if you're interested in that, but first I want to talk a bit about one of my goals with my second channel.

One of my favourite things to do there is to have conversations with other people, and while I have had a few in the past, most episodes are just me rambling about things.

I've finally reached out to some people and have several guests lined up now, the first of which dropped in this week, when I had the pleasure of having a fantastic conversation with Sara Soueidan.

I always enjoy talking with people who have a very deep knowledge of the topic. Just like I can nerd out about CSS all day long, Sara knows a ton about accessibility, and her passion for it was obvious during our conversation.

A few of the highlights for me:

  • How we can use empathy to show why accessibility is important.
  • When starting a new project or feature, start by thinking about how users are going to use what you are building, and design around that, rather than designing things the way you think they should be used.
  • We talked a lot about ARIA, and how it helps enhance HTML when we need it, like when creating something (usually more advanced interactions) that there are no HTML features for.

And we talked about much more than that, getting into how CSS impacts accessibility, course creation, and even a bit about homemade mayonnaise.

You can find the audio-only version here (which has links to Apple Music, Spotify, and the RSS), or you can watch it on YouTube.

video previewโ€‹

๐Ÿ™‹โ€โ™‚๏ธ What Iโ€™ve been up to this week

How to set custom error messages for your HTML forms

video previewโ€‹

The browser comes with native, client-side form validation that works quite well, but the errors have a few issues, from problems with internationalization, and no way to custom style them. Luckily, we can use the same API the browser uses under the hood to customize our errors quite easily!

You can find the starting and finished code in this repo if youโ€™d like to follow along or poke around at what I did.๐Ÿ™‹โ€โ™‚๏ธ What I've been up to this week.

๐Ÿ“… Coming next week: FREE CSS Grid Workshop

This upcoming Friday, I am hosting a CSS Grid Workshop in my Discord community.

Many people find the number of Grid properties overwhelming, or that Flexbox is easier to use, so this workshop focuses on getting started with Grid and learning how we can keep it simple, even as layouts become more complex.

This is the first proper workshop that I host in my community, and I plan to run new ones every month going forward.

You can join the community here so you donโ€™t miss it, and itโ€™ll tell the time in your local time zone as well.

And yes, it is completely free to join!

โšก Quick tips of the week

Stop it with the useless declarations and work with the browser instead

video previewโ€‹

A quick look at how declarations like width: 100% that look innocent enough can actually cause more problems than not declaring anything at all.

At the end, I also give a bonus tip, looking at height: stretch.


Single-color gradients

The HTML & CSS Tip of the Week is back!

To be a bit more time efficient, these are going to be based on Shorts of mine, so they might seem a little familiar, but the content won't be exactly the same.

In this one, I look at two use cases for single-colour gradients.

I've also done a small update of the design over there. It's added a little bit of jank on scroll that I need to investigate, but overall I think it's looking a bit better ๐Ÿ˜Š.

๐Ÿ“ Quiz time!

Sticking with our Layout theme for September: In CSS Grid, what happens when you use grid-auto-flow: column with grid-template-rows: repeat(3, 1fr) but donโ€™t define columns?

  1. Creates columns for all the direct children, the rows do nothing
  2. Creates 3 rows, and if there is more than 3 direct children, adds more columns
  3. Creates 3 rows, and if there are more than 3 children, it repeats 3 more
  4. grid-auto-flow isnโ€™t a real property, so it doesnโ€™t do anything

As per usual, you'll have to head on over to YouTube to take a stab at the quiz, and once you answer, you'll see if you were right or not.

โ€‹

๐Ÿ

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!) PRE-S: Proposals for Interop 2026 are now open. For those who don't know, Interop is an initiative to ensure that all browsers properly implement features outlined in the web specifications, which means not only do they support those features, but they are bug-free. You can learn more about it here, and if you would like to propose a feature, I'd suggest you read this guide first. Hello Reader, Working from home has a lot of...

View this email in your browser (or share it with a friend!) Hello Reader, With summer winding down, I'm winding my own things back up a bit, with this newsletter returning to having a bit of a random ramble at the start, and most of the content I put out on a regular basis back up and running as well. The crazy thing with the summer winding down is that it once again reinforces how fast time is flying by. Every time I blink, it feels like 3 months have passed. And speaking of time flying,...

View this email in your browser (or share it with a friend!) Hello Reader, This edition of the newsletter is the last โ€œsummer breakโ€ edition. Weโ€™ll be back to the full one starting next week ๐Ÿ™‚. ๐Ÿ™‹โ™‚๏ธ What Iโ€™ve been up to this week Select a specific row in a grid, even when using auto-fit or auto-fill A fun look at how we can select a specific row when using gridโ€™s auto-fit feature, including an example by Temani Afif, who looks at how we can do this with a lot less code in the near future. When...