Search
Building a Scalable CSS Architecture With BEM and Utility Classes
21.4.2020
Maintaining a large-scale CSS project is hard. Over the years, we’ve witnessed different approaches aimed at easing the process of writing scalable CSS. In the end, we all try to meet the following two goals:
Efficiency: we want to reduce the time spent thinking about how things should...
Can JavaScript Detect the Browser’s Zoom Level?
21.4.2020
No, not really.
My first guess was that this was intentionally not exposed in browsers because browsers intentionally don’t want us fighting it — or making well-intentioned but bad-outcome decisions based on that info. But I don’t see any evidence of that.
StackOverflow answers paint...
CSS Scrollbar With Progress Meter
15.4.2020
Scrollbars are natural progress meters. How far the scrollbar is down or across is how much progress has been made scrolling through that element (often the entire page). But, they are more like progress indicators than meters, if you think of a meter as something that “fills up” as...
How to Re-Create a Nifty Netflix Animation in CSS
7.4.2020
The design for Netflix’s browse page has remained pretty similar for a few years now. One mainstay component is the preview slider that allows users to scroll through content and hover on items to see a preview.
One unique characteristic of the UI is its hover behavior. When a show preview...
Rapid Image Layers Animation
7.4.2020
A rapid animation of multiple layers of images for intros or page transitions.
Rapid Image Layers Animation was written by Mary Lou and published on Codrops
Cloudinary Studio
2.4.2020
I knew that Cloudinary worked with video as well as images but, the other day, I was curious if Cloudinary offered a video player embed just like other video hosts do (e.g. YouTube, Vimeo, etc). Like an <iframe> that comes with a special player.
I was curious because, as much as...
Creating an Editable Site with Google Sheets and Eleventy
27.3.2020
Remember Tabletop.js? We just covered it a little bit ago in this same exact context: building editable websites. It’s a tool that turns a Google Sheet into an API, that you as a developer can hit for data when building a website. In that last article, we used that API on the client side, meaning...
Maintaining Performance
27.3.2020
Real talk from Dave:
I, Dave Rupert, a person who cares about web performance, a person who reads web performance blogs, a person who spends lots of hours trying to keep up on best practices, a person who co-hosts a weekly podcast about making websites and speak with web performance professionals…...
Indicating Scroll Position on a Page With CSS
24.3.2020
Scrolling is something we all know and do on the web to the extent that it’s an expectation or perhaps even a habit, like brushing our teeth. That’s probably why we don’t put too much thought into designing the scrolling experience — it’s a well-known basic function. In fact, the popular “there...
Performance Links
24.3.2020
I've had a number of browser tabs open to articles all related to web performance and gosh darn it if blogging them is a way for me get some closure. They are all good!
Manuel Matuzovic, Why 543 KB keep me up at night:
Yes, I know, it depends. 543 KB aren't always bad, but on that specific page...
How to Create a “Skip to Content” Link
17.3.2020
Skip links are little internal navigation links that help users move around a page. It’s possible you’ve never actually seen one before because they’re often hidden from view and used as an accessibility enhancement that lets keyboard users and screen readers jump from the top of the page to...
15 Things to Improve Your Website Accessibility
17.3.2020
This is a really great list from Bruce. There is a lot of directly actionable stuff here. Send it around to your team and make it something that you all go through together.
Here's a little one that prodded me to finally fix...
Most screen readers allow the user to quickly see a list of links...
Adventures in CSS Semi-Transparency Land
9.3.2020
Recently, I was asked to make some tweaks to a landing page and, among the things I found in the code, there were two semitransparent overlays — both with the same RGB values for the background-color — on top of an image. Something like this:
<img src='myImage.jpg'/>
<div...
Rumors of Bitcoin’s Death Are Greatly Exaggerated
9.3.2020
According to the Bitcoin Obituary Page, Bitcoin died 379 times between 2010-2019 of an astonishing array of causes. The number is undoubtedly understated since it is based on a limited sample of obituaries. Despite the glee with which the corpses of Bitcoin are contemplated, however, cryptocurrency...
What React Does (and Doesn’t Do)
5.3.2020
With a name as big as React, it's bound to cause some Stream-Crossing Confusion, as I like to call it. How do you center a <div> in React? Dave Ceddia:
React cares exactly zero about styling. Think of it as generating the barebones HTML. React will put elements on the page, but everything...
How to Customize the WooCommerce Cart Page on a WordPress Site
28.2.2020
A standard e-commerce site has a few common pages. There are product pages, shop pages that list products, and let’s not forget pages for the user account, checkout flow and cart.
WooCommerce makes it a trivial task to set these up on a WordPress site because it provides templates for them...
IOTA Network Down for 11 Days – Devs Claim Mainnet Will Be Operational Next Month
24.2.2020
The IOTA network has been down for approximately 11 days and the IOTA Foundation doesn’t expect the mainnet to be reactivated until March 2. On February 14, our newsdesk reported on the beginnings of the IOTA outage, when the network status page indicated that it was down. The page still...
Fixed Headers and Jump Links? The Solution is scroll-margin-top
21.2.2020
The problem: you click a jump link like <a href="#header-3">Jump</a> which links to something like <h3 id="header-3">Header</h3>. That's totally fine, until you have a position: fixed; header at the top of the page obscuring the header you're trying to link to!
Fixed...
Footnote Characters
20.2.2020
They are special superset numbers that are sometimes perfect for footnotes. Here they are:
¹ ² ³ ⁴ ⁵ ⁶ ⁷ ⁸ ⁹
I generally prefer to superscript the number myself, like:
<pThis next word<sup1</suphas a footnote.</p
You'd probably add an anchor link around that as well to link to an...
Do This to Improve Image Loading on Your Website
20.2.2020
Jen Simmons explains how to improve image loading by simply using width and height attributes. The issue is that there’s a lot of jank when an image is first loaded because an img will naturally have a height of 0 before the image asset has been successfully downloaded by the browser. Then it needs...