Search
A Font-Like SVG Icon System for Vue
24.7.2020
Managing a custom collection of icons in a Vue app can be challenging at times. An icon font is easy to use, but for customization, you have to rely on third-party font generators, and merge conflicts can be painful to resolve since fonts are binary files.
Using SVG files instead can eliminate...
Holy Albatross with Widths
24.7.2020
Heydon’s Holy Albatross is a technique to have a row of elements break into a column of elements at a specific width. A specified parent width, not a screen width like a media query would have. So, like a container query (ya know, those things that don’t exist yet that we...
WordPress.com Growth Summit
23.7.2020
I’m speaking at The Official WordPress.com Growth Summit coming up in August. “Learn how to build and grow your site, from start to scale”, as they say. Lovely, thick, diverse set of speakers. It’s a little bit outside my normal spheres which makes...
Accordion Rows in CSS Grid
23.7.2020
I’d bet grid-template-columns is used about 10× more than grid-template-rows, but maybe everyone has just been missing out. Eric Meyer chucks a bunch of row lines onto his main site layout grid like this:
grid-template-rows: repeat(7, min-content) 1fr repeat(3, min-content);
That way, if...
Vue 3.0 has entered Release Candidate stage!
23.7.2020
Vue is in the process of a complete overhaul that rebuilds the popular JavaScript framework from the ground up. This has been going on the last couple of years and, at long last, the API and implementation of Vue 3 core are now stabilize. This is exciting for a number of reasons:
Vue 3 promises...
CMD+Z for Git is Here
23.7.2020
Version control with Git has become a “commodity” by now: virtually every software project today uses Git, and virtually every developer knows Git to some extent. This explains why I sometimes hear the following question when I talk about what I do for a living: “A desktop client...
Position Vertical Scrollbars on Opposite Side with CSS
23.7.2020
Fair warning: I can’t say I recommend this in general because it breaks a very strong expectation of where scrollbars are, which are useful for a lots of folks, not to mention, a core accessibility feature for many.
But it is a fascinating CSS trick and the web is a big place with...
WordPress-Powered Landing Pages on a Totally Different Site via Cloudflare Workers
22.7.2020
What if you have some content on one site and want to display that content on another site? We can do this in the browser no problem. We can fetch it, and plunk it onto the page.
Ajax, right? Ugh. Now we’re in client-side rendered site territory, which isn’t great for performance...
Pausing a GIF with details/summary
22.7.2020
Steve Faulkner has a clever idea here. You can show an (animated) GIF and overlay a pause/play button on top of it — which is really a <details>/<summary> element. When toggled, a (non-animated) JPG inside covers the GIF, effectively “pausing” it.
Adrian Roselli calls...
Reactive jQuery for Spaghetti-fied Legacy Codebases (or When You Can’t Have Nice Things)
22.7.2020
I can hear you crying out now: “Why on Earth would you want to use jQuery when there are much better tools available? Madness! What sort of maniac are you?” These are reasonable questions, and I’ll answer them with a little bit of context.
In my current job, I am responsible for the care...
What ya need there is a bit of templating
22.7.2020
I had a fella write in to me the other day. He had some HTML, CSS, and JavaScript, and it just wasn’t behaving like he thought it ought to. The HTML had some placeholders in it and the JavaScript had some data in it, and the assumption was that the data would fill the placeholders.
To those...
Using Flexbox and text ellipsis together
22.7.2020
You can truncate a single line of text with an ellipsis (…) fairly easily with text-overflow and a few friends. But, as you might expect, that truncation happens at the end of the line of text. What if you want to truncate content in the middle?
Leonardo Faria details good use cases for this...
How to Make a Monthly Calendar With Real Data
21.7.2020
Have you ever seen a calendar on a webpage and thought, how the heck did they did that? For something like that, it might be natural to reach for a plugin, or even an embedded Google Calendar, but it’s actually a lot more straightforward to make one than you might think and only requires...
marketstack: A Market Data API
21.7.2020
(This is a sponsored post.)
I like the apilayer company tagline: “Automate What Should Be Automated.” They have this thick suite of products that are all APIs with clear documentation. They all have usable free tiers to develop against and prove out an idea, and then paid plans if...
Russia Shelves Plans to Criminalize Bitcoin Transactions – For Now
21.7.2020
Russia has dropped plans to criminalize bitcoin transactions – for now, according to local media reports. The Digital Financial Assets Bill (DFA), due to be read for the second time in the Russian parliament – or State Duma – on July 21, has removed references to administrative...
When do you use inline-block?
20.7.2020
The inline-block value for display is a classic! It’s not new and browser support is certainly not something you need to worry about. I’m sure many of us reach for it intuitively. But let’s put a point on it. What is it actually useful for? When do you pick it over other, perhaps...
Levels of Fix
20.7.2020
On the web, we have the opportunity to do work that fixes things for people. It’s fascinating to me how different the scope of those fixes can be.
Consider the media query prefers-reduced-motion. Eric wrote:
I think it’s also worth pointing out the true...
Creating a Gatsby Site with WordPress Data
20.7.2020
In my previous article last week, I mentioned creating a partially ported WordPress-Gatsby site. This article is a continuation with a step-by-step walkthrough under the hood.
Gatsby, a React-based framework for static sites, is attracting attention not only from JavaScript developers but also from...
How to Italicize Text
18.7.2020
HTML and CSS offer us the ability to italicize text. I’m talking about text like this. Let’s cover everything you’ll need to know.
What is italic text and why would you italicize text?
You italicize text most often to call attention to it. Literally to emphasize a word, so that someone reading...
CSS Painting Order
17.7.2020
Usually, when I see terms like “painting order” or “stacking context” my brain will start to shut off and my eyes will gloss over. Not that my brain doesn’t normally shut off more often than not, but that’s another topic for another time.
Martin Robinson over...