Search
Centering a div That Maintains Aspect-Ratio When There’s Body Margin
18.2.2020
Andrew Welch had a little CSS challenge the other day to make an ordinary div:
• centered vertically + horizontally• scales to fit the viewport w/ a margin around it• maintains an arbitrary aspect ratio• No JS
There's a video in that tweet if it helps you visualize the challenge. I saw Paul...
Blame the implementation, not the technique
17.2.2020
I'm not sure we've gotten much better at this since Tim Kadlec wrote this in 2012:
Stop me if you’ve heard this one before.
“Responsive design is bad for performance.”“User agent detection is bad. Don’t segment the web.”“Hybrid apps don’t work as well as native apps.”“CSS preprocessors shouldn’t...
While You Weren’t Looking, CSS Gradients Got Better
14.2.2020
One thing that caught my eye on the list of features for Lea Verou's conic-gradient() polyfill was the last item:
Supports double position syntax (two positions for the same color stop, as a shortcut for two consecutive color stops with the same color)
Surprisingly, I recently discovered most...
The Unseen Performance Costs of Modern CSS-in-JS Libraries
13.2.2020
This article is full of a bunch of data from Aggelos Arvanitakis. But lemme just focus on his final bit of advice:
Investigate whether a zero-runtime CSS-in-JS library can work for your project. Sometimes we tend to prefer writing CSS in JS for the DX (developer experience) it offers, without...
A Headless CMS for You and Your Web Development Agency
13.2.2020
(This is a sponsored post.)
Storyblok is a headless but component-based CMS with a built-in live-preview. You can use it for building fast and reliable websites and power native apps with your favorite technology.
Let us start with the basics and what a headless CMS is:
A headless content...
Toward Responsive Elements
12.2.2020
Hot news from Brian Kardell, regarding what we've been referring to as "container queries", the most hotly requested feature in CSS:
There does seem to be some general agreement on at least one part of what I am going to call instead "Responsive Design for Components" and that is that flipping...
Guillermo’s 2019 in Review
7.2.2020
Of all the tech-focused year-in-review posts I read, Guillermo Rauch's is my favorite. There is a lot in there, jumping from topics like modern architectures, high-fiving specific apps, and philosophical movements.
I'll pick one quote about the rise of "deploy previews":
A salient feature is...
Old CSS, new CSS
7.2.2020
I love this post that walks through the development of CSS and HTML — it shows just how far web design has come and how much easier it is for us all now.
Eevee looks at designing websites with tables, the Space Jam website, and how for centuries there was no way to easily inspect changes made to...
Building an accessible autocomplete control
6.2.2020
Here’s a great in-depth post from Adam Silver about his journey to create an autocomplete field that’s as accessible as possible. There are so many edge cases to consider! There are old browsers and their peculiar quirks, there are accessibility best practices for screen readers, and not to mention...
Native Image Lazy Loading in Chrome Is Way Too Eager
5.2.2020
Interesting research from Aaron Peters on <img loading="lazy" ... >:
On my 13 inch macbook, with Dock positioned on the left, the viewport height in Chrome is 786 pixels so images with loading="lazy" that are more than 4x the viewport down the page are eagerly fetched by Chrome...
CSS4 is a Bad Idea
5.2.2020
Louis Lazaris, reacting to the idea of CSS4:
The reason “CSS3” worked is because it was real. It was the successor to “CSS2.1”. Everything after CSS2.1 was considered to be under the umbrella of “CSS3”.
The gist is that CSS4 isn't real, so won't work, and we don't need it anyway. Perhaps...
CSS4
4.2.2020
Tab Atkins in 2012:
There has never been a CSS4. There will never be a CSS4. CSS4 is not a thing that exists.
Rachel Andrew in 2016:
While referring to all new CSS as CSS3 worked for a short time, it doesn’t reflect the reality of where CSS is today. If you read something...
Overcomplicatin’
4.2.2020
There's some famous quote that goes something like...
When we're young, we make simple things because that's all we know. Then we learn how to make complex things so we make complex things. When we grow old, we learn to make simple things again.
Brad recently wrote about this abstractly in regard...
Get Moving (or not) with CSS Motion Path
3.2.2020
We just linked up the idea that offset-path can be cleverly used to set type on a path. Don't miss Michelle Barker's experimentation either, with drawing paths or animating text along a path.
Dan Wilson has also been following this tech for quite a while and points out why the sudden surge...
“resize: none;” on textareas is bad UX
30.1.2020
Catalin Rosu:
Sometimes you need to type a long reply that consists of many paragraphs and wrapping that text within a tiny textarea box makes it hard to understand and to follow as you type. There were many times when I had to write that text within Notepad++ for example and then just paste...
Four Layouts for the Price of One
29.1.2020
Pretty notable when a tweet about a flexbox layouts gets 8K+ likes on Twitter!
4 layouts for the price of 1, thanks flex ????
css` form { display: flex; flex-wrap: wrap;
& > input { flex: 1 1 10ch; margin: .5rem;
&[type="email"] { flex: 3...
What does “revert” do in CSS?
28.1.2020
Miriam Suzanne has a Mozilla Developer video on the subject. The revert value is fairly new, supported in Firefox and Safari, but not yet in Chrome-world. We've already got a couple of related keywords that work on any property which are meant to help control inheritance and reset values....
Woodworking SVG (and Other Real Life Encounters)
27.1.2020
Eric Meyer does his woodworking math in SVG.
I’ve been hand-coding SVG schematics to figure out how thing should go together, and as a by-product, guide me in both material buying and wood cutting.
This might sound hugely bespoke and artisanally overdone, but they’re not that complicated, and...
“Browser Functions”
26.1.2020
Serverless functions are fairly straightforward. Put a bit of back-end language code, like Node, in the cloud and communicate with it via URL. But what if that URL didn't run a back-end language, it ran an actual browser? Richard Young:
We can now do full stack development using just Web APIs....
Bundling JavaScript for Performance: Best Practices
24.1.2020
Performance advice from David Calhoun on how many scripts to load on a page for best performance:
[...] some of your vendor dependencies probably change slower than others. react and react-dom probably change the slowest, and their versions are always paired together, so they...