Search
Lightweight Form Validation with Alpine.js and Iodine.js
20.1.2021
Many users these days expect instant feedback in form validation. How do you achieve this level of interactivity when you’re building a small static site or a server-rendered Rails or Laravel app? Alpine.js and Iodine.js are two minimal JavaScript …
The post Lightweight Form Validation with...
Life with ESM
19.1.2021
ESM, meaning ES Modules, meaning JavaScript Modules. Like, import and friends.
Browsers support it these days. There is plenty of nuance, but as long as you’ve dropped IE, the door is fairly open.
Before ESM, the situation for JavaScript …
The post Life with ESM appeared first...
Netlify Edge Handlers
19.1.2021
Netlify Edge Handlers are in Early Access (you can request it), but they are super cool and I think they are worth wrapping your brain around now. I think they change the nature of what Jamstack is and can be.…
The post Netlify Edge Handlers appeared first on CSS-Tricks.
You can support...
On Type Patterns and Style Guides
19.1.2021
Over the last six years or so, I’ve been using these things I’ve been calling “type patterns” in my web design work, and they’ve worked out pretty well for me. I’ll dig into what they are and how they can …
The post On Type Patterns and Style Guides appeared first on CSS-Tricks.
You...
Rendering the WordPress philosophy in GraphQL
18.1.2021
WordPress is a CMS that’s coded in PHP. But, even though PHP is the foundation, WordPress also holds a philosophy where user needs are prioritized over developer convenience. That philosophy establishes an implicit contract between the developers building WordPress themes …
The post...
AnimXYZ
18.1.2021
There are quite a few CSS animation libraries. They tend to be a pile of class names that you can apply as needed like “bounce” or “slide-right” and it’ll… do those things. They tend to be pretty opinionated with …
The post AnimXYZ appeared first...
On Auto-Generated Atomic CSS
15.1.2021
Robin Weser’s “The Shorthand-Longhand Problem in Atomic CSS” in an interesting journey through a tricky problem. The point is that when you take on the job of converting something HTML and CSS-like into actual HTML and CSS, there are edge …
The post On Auto-Generated Atomic...
3 Approaches to Integrate React with Custom Elements
15.1.2021
In my role as a web developer who sits at the intersection of design and code, I am drawn to Web Components because of their portability. It makes sense: custom elements are fully-functional HTML elements that work in all modern …
The post 3 Approaches to Integrate React with Custom Elements...
Proper Tabbing to Interactive Elements in Firefox on macOS
15.1.2021
I just had to debug an issue with focusable elements in Firefox. Someone reported to me that when tabbing to a certain element within a CodePen embed, it shot the scroll position to the top of the page (WTF?!). So, …
The post Proper Tabbing to Interactive Elements in Firefox on macOS...
Building an Ethereum app using Redwood.js and Fauna
15.1.2021
With the recent climb of Bitcoin’s price over 20k $USD, and to it recently breaking 30k, I thought it’s worth taking a deep dive back into creating Ethereum applications. Ethereum, as you should know by now, is a public (meaning, …
The post Building an Ethereum app using Redwood.js and Fauna...
How to Make GraphQL and DynamoDB Play Nicely Together
14.1.2021
Serverless, GraphQL, and DynamoDB are a powerful combination for building websites. The first two are well-loved, but DynamoDB is often misunderstood or actively avoided. It’s often dismissed by folks who consider it only worth the effort “at scale.”…
The post How to Make GraphQL...
Dynamic, Conditional Imports
13.1.2021
With ES Modules, you can natively import other JavaScript. Like confetti, duh:
import confetti from 'https://cdn.skypack.dev/canvas-confetti';
confetti();
That import statement is just gonna run. There is a pattern to do it conditionally though. It’s like this:
(async ()
…
The post...
Two Issues Styling the Details Element and How to Solve Them
13.1.2021
In the not-too-distant past, even basic accordion-like interactions required JavaScript event listeners or some CSS… trickery. And, depending on the solution used, editing the underlying HTML could get complicated.
Now, the <details> and <summary> elements (which combine to form...
A (terrible?) way to do footnotes in HTML
13.1.2021
Terence Eden poked around with a way to do footnotes using the <details>/<summary> elements. I think it’s kind of clever. Rather than a hyperlink that jumps down to explain the footnote elsewhere, the details are right there next …
The post A (terrible?) way to...
Fixing Smooth Scrolling with Find-on-Page
13.1.2021
Back when we released the v17 design (we’re on v18 now) of this site. I added html { scroll-behavior: smooth; } to the CSS. Right away, I got comments like this (just one example):
… when you control+f or
…
The post Fixing Smooth Scrolling with Find-on-Page appeared first...
I Just Wanna Make Sure You Understand the WordPress.com Business Plan
12.1.2021
WordPress.com is where you go to use WordPress that is completely hosted for you. You don’t have to worry about anything but building your site. There is a free plan to get started with, and paid plans that offer more …
The post I Just Wanna Make Sure You Understand the WordPress.com...
WordPress.com Business Plan (Business-Class WordPress Hosting + Support from WordPress Experts)
12.1.2021
WordPress.com is where you go to use WordPress that is completely hosted for you. You don’t have to worry about anything but building your site. There is a free plan to get started with, and paid plans that offer more …
The post WordPress.com Business Plan (Business-Class WordPress...
How to Add Commas Between a List of Items Dynamically with CSS
12.1.2021
Imagine you have a list of items. Say, fruit: Banana, Apple, Orange, Pear, Nectarine
We could put those commas (,) in the HTML, but let’s look at how we could do that in CSS instead, giving us an extra level …
The post How to Add Commas Between a List of Items Dynamically with CSS appeared...
Building Flexible Components With Transparency
12.1.2021
Good thinking from Paul Herbert on the Cloudfour blog about colorizing a component. You might look at a design comp and see a card component with a header background of #dddddd, content background of #ffffff, on an overall …
The post Building Flexible Components With Transparency appeared...
Careful When Changing the Display of `summary`
12.1.2021
I got a very helpful bug report the other day (thanks Kilian!) about the <details> element in a blog post of mine not showing the default ▶ icon, and thus looking rather like any ol’ random <p>.
It …
The post Careful When Changing the Display of `summary`...