Search
Emojis as Favicons
24.3.2020
Lea Verou had a dang genius idea to use an emoji as a favicon. The idea only recently possible as browsers have started supporting SVG for favicons. Chuck an emoji inside an SVG <text element and use that as the favicon.
Now that all modern browsers support SVG favicons, here's how...
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...
Different Favicon for Development
24.3.2020
I bet a lot of us tend to have the production website and the development website up simultaneously a lot. It's almost a developer cliché at this point to make some local change, refresh, refresh, refresh, refresh, and just not see the change, only to discover you were looking at the production...
CSS :nth-of-class selector
23.3.2020
That's not a thing.
But it kinda is!
Bram covers how frustrating .bar:nth-child(2) is. It's not "select the second element of class .bar." It's "select the second element if it also has the class .bar." The good news? There is a real selector that does the former:
:nth-child(2 of .bar) { }
Safari...
Building a Real-Time Chat App with React and Firebase
23.3.2020
In this article, we’ll cover key concepts for authenticating a user with Firebase in a real-time chat application. We’ll integrate third-party auth providers (e.g. Google, Twitter and GitHub) and, once users are signed in, we’ll learn how to store user chat data in the Firebase Realtime Database...
CSS Can Influence Screenreaders
23.3.2020
Ben Myers covers some clear examples of where CSS totally changes what some screen readers announce. For example, some screenreader will see text-transform: uppercase; on a button label that says "Add" and read it like an abbreviation, "A.D.D."
These cases of CSS messing with our screenreader...
Flexible Repeating SVG Masks
22.3.2020
Tyler Gaw reminds us that mask-image can repeat, resize, and move just like background-image does, which is fun to combine and play with. I could see it being a fun option for an <hr, like Sara is doing.
CodePen Embed Fallback
Direct Link to Article — Permalink… Read article...
Auto-Archival
20.3.2020
I'm sure most of us have used the ol' Wayback Machine to access some site that's gone offline. I don't actually know how it decides what sites to archive and when, but you can tell it to save pages. There is UI for it right on its homepage.
Also, there is a little trick...
Typing...
Client-Side Image Editing on Mobile
20.3.2020
Michael Scharnagl:
Ever wanted to easily convert an image to a grayscale image on your phone? I do sometimes, and that's why I build a demo using the Web Share Target API to achieve exactly that.
For this I used the Service Worker way to handle the data. Once the data is received on the client,...
Neumorphism and CSS
20.3.2020
Neumorphism (aka neomorphism) is a relatively new design trend and a term that’s gotten a good amount of buzz lately. It’s aesthetic is marked by minimal and real-looking UI that’s sort of a new take on skeuomorphism — hence the name. It got its name in a UX Collective post from December 2019,...
CSS2JS
20.3.2020
To add inline styles on an element in JSX, you have to do it in this object syntax, like:
<div style={{
fontSize: 16,
marginBottom: "1rem"
}}Content
</div
That might look a little weird to us folks who are so used to the CSS syntax, where it is font-size (not fontSize), margin-bottom...
Tether Launches Stablecoin Token on Bitcoin Cash via Simple Ledger Protocol
19.3.2020
Tether, the world’s most popular stablecoin, will be using the Simple Ledger Protocol built upon the Bitcoin Cash network for issuing its tokens. Among other things, this means that millions of Bitcoin.com Wallet users will now be able to send and receive USDT via SLP tokens right within...
React Suspense in Practice
19.3.2020
This post is about understanding how Suspense works, what it does, and seeing how it can integrate into a real web app. We'll look at how to integrate routing and data loading with Suspense in React. For routing, I'll be using vanilla JavaScript, and I'll be using my own micro-graphql-react GraphQL...
A Few Background Patterns Sites
18.3.2020
If I need a quick background pattern to spruce something up, I often think of the CSS3 Patterns Gallery. Some of those are pretty intense but remember they are easily editable because they are just CSS. That means you could take these bold zags and chill them out.
CodePen Embed Fallback
My usual...
What Does `playsinline` Mean in Web Video?
18.3.2020
I got myself confused about this the other day, went around searching for an answer and came up empty on finding something clear. The answer actually is quite clear and I feel a little silly for not knowing it.
With it in place, like this:
<video src="..." controls playsinline</video
Mobile...
Playing With Particles Using the Web Animations API
18.3.2020
When it comes to motion and animations, there is probably nothing I love more than particles. This is why every time I explore new technologies I always end up creating demos with as many particles as I can.
In this post, we'll make even more particle magic using the Web Animations API to create...
Flexbox and absolute positioning
18.3.2020
Chen Hui Jing notes that when you absolutely position a flex item, it's no longer part of the flex layout. Except... it kinda is a little bit. If you make the child position: absolute; but don't apply any top/right/bottom/left properties, then flexbox alignment will still apply to it.
It's odd...
Binance Lending Adds Bitcoin Cash to Flexible Deposits Letting Users Earn Interest on BCH
18.3.2020
Bitcoin cash users now have another venue to earn interest on their digital asset holdings. Binance has added support for BCH flexible deposits on its lending platform, alongside ETH and EOS. This development comes just as competition in the crypto lending field is heating up. Also Read: Binance...
A Complete Guide to calc() in CSS
17.3.2020
CSS has a special calc() function for doing basic math. Here's an example:
.main-content {
/* Subtract 80px from 100vh */
height: calc(100vh - 80px);
}
In this guide, let's cover just about everything there is to know about this very useful function.
calc() is for values
The only place you...