I got the nicest note from Ganesh Dahal. He’s a long-time contributor to CSS-Tricks and we’ve worked on a bunch of articles together over the past couple of years. There’s nothing magic in there — just kind words — but it hit me at just the right time. What you have to know is th … | Continue reading
WordPress has a duotone feature for styling elements — like images — with an SVG filter that overlays and colorizes the thing. It’s a nice feature! But I can honestly do without it on my own little website. Plus, it does this thing where it injects individual <svg> elements … | Continue reading
…so many other industries. Yet, I find that working in front-end development still places a heavy emphasis on one person — or very few people — doing the job. Let’s assume for a moment that you’re tasked with building a website. What kind of website? A big one. Pretty complex, to … | Continue reading
Jetpack Boost is a performance module in the all-in-one Jetpack plugin for WordPress. I use it because it makes generating Critical CSS a trivial task which should help, erm, boost site performance. (Perhaps I shouldn’t be using Critical CSS at all, but that’s another story for a … | Continue reading
You wouldn’t buy one off Craigslist, would you? But you’re essentially doing it when you buy an existing home, right? Context is king. | Continue reading
Images are often wrapped in a figure. Figures often contain a figcaption to “represent a caption or legend describing the rest of the contents of its parentelement.” And best practices advise us to use the alt attribute on an img to “provides fallback (alternate) text to display … | Continue reading
I never thought I’d return to a W2 job unless I had to. But here I am, by choice, and it’s pretty awesome. That’s because work has never been as flexible as it is right now. I remember a buddy of mine getting an engineering job with Lockheed Martin more than 20 years ago and […] | Continue reading
In other words, Safari does not consider this a list anymore: Quick fix in HTML: | Continue reading
If you’ve ever worked with me, you know I am the absolute worst when it comes to taking breaks. I tend to start early and power through the rest of the day. I’d say more times than not I look up from my computer and realize the entire day passed me by. And it’s been […] | Continue reading
Do you talk to yourself? Or have silent conversations in your head? Or make up hypotheticals about things that may never happen, people you may never meet, and conversations you may never have? I do all of those — all the time. That’s the act of ruminating. We process our thought … | Continue reading
I saw Son Volt perform at The Aggie Theater here in Fort Collins. My buddy, Scott, joined me. We’re not really “photo” people, so there’s no cute selfie of us hanging out outside or anything. But I did manage to take a shot of the show poster. The show was my first since moving i … | Continue reading
I recently moved out of Southern CA, an area many folks associate with a “fast” lifestyle. There are all kinds of reasons for this: You gotta move fast to beat rush hour traffic. You gotta move fast to earn all the money it costs to enjoy the cost of living. You gotta move extra … | Continue reading
If there’s one existential fear I have in my career, it’s my age. And maybe “fear” is a strong word here, but it’s something my inner voice chatters about every so often. The first line of code I ever wrote might have been 1999 as I was graduating high school. It was probably som … | Continue reading
That’s something I say probably ten times a week. Sure, five of those times are directed at my kids but the rest are usually students in my class on my front-end development. You see, The Web is huge. So huge, and yet so tiny. I think because I lead the class, the expectation is … | Continue reading
I hate the path our national discourse (if you can call it that) over abortion has taken. Not how it started. Not the current conclusion (if you can call it that). Not that one side ”won” or another side ”lost.” What I hate is how we (the people) have engaged in it. The fingerpoi … | Continue reading
I’m walking out the door and heading for a jet plane to our new home in Fort Collins, Colorado. It’s hard to articulate how important Long Beach is to me. At 17 years, I’ve lived as long here as I did my childhood home, and did as much — if not more — growing here […] | Continue reading
I never realized it’s possible to click the dang label and change “Read More” to whatever else. Might have been obvious to others but there’s neither really any indication the label is interactive, nor is there a way to change the label in the block settings panel. 🤷♂️ | Continue reading
It has forever, I suppose, I just never came across the need to in my day-to-day work. | Continue reading
I pushed the third major design iteration of my site yesterday, and it’s definitely a new look compared to the second version, though still in the same vein as far as simplicity. And even though there are no leftovers from the first iteration, I’d say version 3 is somewhat spirit … | Continue reading
It’s been a little over three weeks since the bomb was dropped that CSS-Tricks was acquired by DigitalOcean. The response has been awesome and, to be quite honest, totally unexpected. I’ve known for a long time just how many people visit the site because, hey, analytics. But the … | Continue reading
Hey, so this is cool. Chrome 100 shipped yesterday and, with it, a landing page celebrating a curated collection of 100 cool moments between the time Chrome was introduced to the current release. The list of moments spurred a flood of personal memories throughout my career. The l … | Continue reading
Did you know that CodePen used to have a job board? I do, because that’s how I applied to be a technical writer at CSS-Tricks. At the end of 2014, Chris Coyier took an ad out of his own board seeking writers. I wish I had a screenshot of that ad. I also wish I […] The post Thank … | Continue reading
I guess that’s obvious. The styles of a site change when a CSS file is updated. An image is replaced when href is changed to point to one file instead of another. So, of course, a font is going to change if, say, the font file is updated. It’s just something that hasn’t crossed, … | Continue reading
Registering custom fonts in WordPress has typically been a straightforward thing when theming. Do it in the CSS a la @font-face and style away! But now with full-site editing in the wild as of WordPress 5.9, you might want to give yourself or your clients. That’s where the WordPr … | Continue reading
This is the error message I was greeted with today when launching the LocalWP app: It’s a simple fix, really. The problem (at least to me) is the messaging. Because I have no idea what the heck “Lightning” services are, I found myself looking through preferences, extensions, and … | Continue reading
I learned about this Boolean JavaScript property from today’s Web Tools Weekly newsletter (which you should definitely subscribe to). Louis Lazaris offers this example: That’s a simple test that returns true or false based on whether the image has completed rendering. That sounds … | Continue reading
It’s been more than a few week since WordPress 5.9 shipped, and with it the formal introduction of full-site editing. It’s exciting! It’s weird! It’s… it’s… it’s… different! But as someone who teaches WordPress development, keeping up on this sort of stuff is, you know, part of t … | Continue reading
…a swell fella named Chris took a gamble on little ol’ me and published a post I wrote for his blog. 435 posts, tutorials, and guides later and I’m just as elated today as I was the morning I first saw my name slathered at the top of the site. Thanks, Chris. Being a part […] | Continue reading
OK, OK, just my annual little “hey, hi, howdy” at the end of the year to check in and reflect on what happened this past year. I’ll get right to it. Work The most exciting thing about work this year might be that nothing exciting really happened. Same great clients, another year— … | Continue reading
I was diddling around and working with this markup: I wanted to select the second <span> so, naturally: And gosh darn it was I surprised that my styles weren’t showing up! Making sure I had the syntax right, I went for: It worked! More head scratching. Hmm, OK, why not? By gol … | Continue reading
Hey, so I’m just sitting here in the living room with my family on Thanksgiving. Everyone is either watching TV or reading a book, except for me. I could be doing a million different things right now. What did my blond brain wind up deciding to do? I’ve got my laptop fired up and … | Continue reading
Well, there’s at least a few folks in the U.S. government that care about it. A group that calls itself the Plain Language Action and Information Network (PLAIN) apparently exists, and has been meeting since the 1990s. They even have an entire website dedicated to avoiding overco … | Continue reading
Say you’re on a navigation element. You might do something like this in HTML: And when styling it, you probably want to strip out the bullet points in CSS: Then you move right along with your merry day. The only problem is that wipes out the semantics of the list in VoiceOver in … | Continue reading
I love happy accidents. In this case, my finger slipped on the keyboard when trying to create a new folder on my MacOS desktop (you know, CMD + Shift + N). That’s what I normally type when I want a new folder for a group of files. Somehow, my middle finger slid off the Shift […] | Continue reading
It's Google's choice and they apparently decide based on surrounding content and backlinks. | Continue reading
It makes total sense, of course: if content is on the page but isn’t actually showing on the page, then there’s no need to show when searching content. That’s what I assumed it would do, but know for sure after testing in the major browsers. Search me! The quick brown fox jumped … | Continue reading
New to me, but this has been around a hot minute! I remember when the <picture> element was introduced and thinking, Wow, HTML is getting pretty darn smart. I mean, the ability to specify variations of an image and let the browser choose the most optimal file based on the u … | Continue reading
A couple of people reached out after my last blog post to ask what my day-to-day looks like. In that post, I listed the various things I do for various clients I work with, and those folks wonder how I structure my day. It’s a good question. I constantly deal with competing prior … | Continue reading
There’s probably not a whole lot I can say about the past year that hasn’t been said or felt by anyone else. But aside from the pandemic, my eighth year of freelancing was just as good — and even enjoyable — as any other. In fact, things are great. I’m still churning out work for … | Continue reading
I didn’t realize there is an effort to “de-colonize” the Internet but it’s unsurprising and makes a lot of sense. While I’ve never seriously questioned it, I’ve wondered in the back of my mind just how weird it must be for developers who don’t speak English as their first languag … | Continue reading
This is something I have to do from time to time. Someone will write up a content draft in Google Docs and sprinkle in images. I often need to move the content from Google Docs to WordPress and that’s an easy copy-and-paste. But if you look at the pasted images in WordPress, you’ … | Continue reading
Ever build an image carousel or generate some sort of image via JavaScript? Google’s crawlers can parse JavaScript just fine, but might not discover or properly read image data, like location and licensing information. That’s a bummer for the SEO of a page if images represent mea … | Continue reading