Eric Portis
banner
ericportis.com
Eric Portis
@ericportis.com
Web developer; used-to-be-a-printmaker; Let’s Share What We Know
You've heard of OkLCH? Get ready for: OkLrCH.

codepen.io/eeeps/pen/bN...

(The little 'r' improves lightness gradients across the SDR range.)
OkLrCH vs OkLCH
...
codepen.io
December 26, 2025 at 6:08 PM
I have become emotionally attached to the three remaining cookies.
December 26, 2025 at 6:00 PM
Reposted by Eric Portis
Merry Christmas! This is your yearly reminder that mistletoes, uniquely among ALL known multicellular life, do not have working mitochondria. What the fuck? Biology is fake.
The Mystery of Mistletoe’s Missing Genes
Mistletoes have all but shut down the powerhouses of their cells. Scientists are still trying to understand the plants’ unorthodox survival strategy.
www.quantamagazine.org
December 25, 2025 at 5:38 AM
Reposted by Eric Portis
Have you been wishing masonry layouts would just hurry up and arrive in CSS?? Well, happy holidays!

webkit.org/blog/17660/i...
Introducing CSS Grid Lanes
It’s here!
webkit.org
December 19, 2025 at 9:33 PM
You know it's been a minute since I blogged on the ol' company blog. What better time to pick that habit back up than uh the Friday uhhh before Christmas??? cloudinary.com/blog/hacktob...
Hacktoberfest as a First-Time Maintainer
Eric Portis reflects on Hacktoberfest: managing PRs, avoiding overwhelm, and finding real value in community contributions.
cloudinary.com
December 19, 2025 at 3:51 PM
Read Erika's beautiful description. Think about how you would describe this amazing photograph to a friend.

The alt text is: "Image may contain Gail Graham Blazer Clothing Coat Jacket Formal Wear Suit Face Head Person and Photography"
I can't stop looking at this one. The framing is incredible. The lighting is so harsh. She's standing between a lamp and a light switch looking small in a big room twiddling her thumbs. Her blouse matches the lampshade. The woman on the phone in a dark room that pulls focus is just magnificent.
December 17, 2025 at 5:50 PM
Oh just validating my priors and thinking about essential vs inessential complexity whilst reading through the State of HTML `srcset` + `sizes` survey comments
December 16, 2025 at 11:30 PM
Reposted by Eric Portis
It’s so cool that every website is just Like This now. We used to send guys to the chair for putting pop-up ads on their sites. Now if I want to read something I have to read single lines between autoplaying video ads that use so much RAM they force the browser to reload every 5 seconds.
December 15, 2025 at 12:27 AM
U+2E1A HYPHEN WITH DIAERESIS is just a lil' guy

December 12, 2025 at 5:10 PM
Reposted by Eric Portis
6 years of thinking I can make a better portfolio.
1 year of actually building it.

My new portfolio is LIVE 🚀
Please, don't break anything!
👉 bruno-simon.com
December 9, 2025 at 2:00 PM
This is horrific for all of the obvious structurally-racist bias perpetuation reasons and also: way too detailed/specific? Haven't these people read Understanding Comics??
December 9, 2025 at 4:10 PM
Lazy passkey question: is there a way to log into things in non-Safari browsers using passkeys stored in Apple's Passwords.app, without having to get my phone out and scan a QR code? The iCloud Passwords Chrome extension isn't doin' it for me.
December 8, 2025 at 8:04 PM
Reposted by Eric Portis
You too can make a tiny, fixed-width website in the year of our lord 2025 ⚡️ lynnandtonic.com
Lynn Fisher
Lynn Fisher is a web designer, CSS developer, and artist from Phoenix, Arizona.
lynnandtonic.com
December 8, 2025 at 3:47 PM
Speculation Rules on touch devices (where there's no hover) is a hard problem but it sounds like Chrome's making some good progress? htmhell.dev/adventcalend...
Speculation rules improvements - HTMHell
A collection of bad practices in HTML, copied from real websites.
htmhell.dev
December 5, 2025 at 6:51 AM
Reposted by Eric Portis
I think it's fair to criticize the Chromium project for apparently getting the initial cost/benefit prediction wrong on JPEG XL. But the fact that JPEG XL is moving forward anyway is a success to be celebrated in the consensus-forming process of the web platform! groups.google.com/a/chromium.o...
November 27, 2025 at 9:04 PM
As a pescatarian who lives all the way up and all the way to the left:

- Blackened cod at Ursa Minor
- Filled sourdough donut at Seabird Bakeshop
- Butterscotch pudding at Acorn (in Denver)
- Breakfeast at Hell's Backbone Grill (in Utah)
- A single freaking hay-smoked carrot at Ælder (now Houlme)
thanksgiving dinner at Tujague's, seafood gumbo at Antoine's, quarter fried chicken at Willie Mae's Scotch House, alligator cheesecake at Jacques-Imo's, and garlic cabbage at Din Tai Fun are probably my top 5 all timers, in no particular order. those are the ones that pop into my head unbidden daily
November 26, 2025 at 6:51 AM
Whomst amongst us has not saved $50 on a Black Friday ✨💰 deal 🤑✨, and felt a little thrill?

@wil.to makes an unconventional proposal—but I must admit—I am intrigued. Deeper thrills await. wil.to/newsletters/...
It is Black Friday.
wil.to
November 25, 2025 at 10:20 PM
Reposted by Eric Portis
JPEG XL in Chromium update:

“[...] we would welcome contributions to integrate a performant and memory-safe JPEG XL decoder in Chromium. In order to enable it by default in Chromium we would need a commitment to long-term maintenance.”

groups.google.com/a/chromium.o...
November 22, 2025 at 7:57 AM
Reposted by Eric Portis
Here’s a recording of this “Two-Phase View Transition” concept.

The flow goes like this:

- Click a link
- VT into the loading screen
- Fetch the data of the new page in the background
- VT into the new page
November 19, 2025 at 10:06 AM
Reposted by Eric Portis
There are many goodies that are newly and widely available in Baseline. backdrop-filter is so much fun to work with and I am obsessed with AVIF images and the ability to animate from display: none with @starting-style. And how easy is it to lazy load images now? web.dev/articles/bas...
How to implement an image gallery using Baseline features  |  Articles  |  web.dev
Image galleries are a common user interface pattern on the web. Learn how to create one using Baseline features.
web.dev
November 14, 2025 at 7:25 PM
Likes are now florps and the masonry switch will be `display: grid-lanes`
November 13, 2025 at 6:10 AM
Reposted by Eric Portis
At the CSS WG meeting, we're discussing possibly natively doing fit-text in CSS. Send us your use cases (with screenshots/links)!

Do you ever need to fit multi-line text?
Do you ever need to fit non-text inline elements (e.g. icons)?
Do you adjust font-size, letter-spacing, or both?
November 13, 2025 at 1:20 AM
That is an *incredible* approximately five-foot-tall cardboard bug.
November 11, 2025 at 5:01 PM
Reposted by Eric Portis
Responsive typography is getting so much simpler. This already works in a couple browsers, and the fallback is minimal:

--progress: progress(100vi, 320px, 1200px);
font-size: calc-mix(var(--progress), 1rem, 1.25rem);

But that will get even better…

#CSS

codepen.io/editor/miria...
CodePen
codepen.io
November 6, 2025 at 9:55 PM
Reposted by Eric Portis
I partnered with Fable to evaluate their pay-per-project offering. Its an amazing way to get insights into how disabled people actually use your service, and what they think about it. ericwbailey.website/published/ev...
Evaluating Fable’s pay-per-project offering
Get valuable insight about how your digital experience works for disabled people..
ericwbailey.website
November 5, 2025 at 4:17 PM