Search
Tips for Writing Animation Code Efficiently
10.4.2020
I’ve been coding web animations and helping others do the same for years now. However, I have yet to see a concise list of tips focused on how to efficiently build animations, so here you go!
I will be using the GreenSock Animation Platform (GSAP). It provides a simple, readable API and solves...
Create Diagonal Layouts Like it’s 2020
9.4.2020
Nils Binder covers the ways:
1. Use an SVG in the form of a triangle. This technique is nicely described by Erik Kennedy on CSS-Tricks.
2. Hide part of your section using clip-path. Read Diagonal Containers in CSS by Sebastiano Guerriero or Sloped edges with consistent angle...
CSS Findings From The New Facebook Design
7.4.2020
Ahmad Shadeed digs around the new Facebook’s front-end code.
One that stood out to me:
.element {
inset: 4px 0;
/* Which is equivalent to: top: 4px, bottom: 4px, left: 0, right: 0 */
}
Whaaat? This is the first I’ve heard of the inset property. Ahmad said he saw it working...
Continuous Deployments for WordPress Using GitHub Actions
6.4.2020
Continuous Integration (CI) workflows are considered a best practice these days. As in, you work with your version control system (Git), and as you do, CI is doing work for you like running tests, sending notifications, and deploying code. That last part is called Continuous Deployment (CD)....
CSS-Only Marquee Effect
5.4.2020
You make sure the text is more than twice the width of the screen, then use negative translate animations to do the marquee movement.
You’ll probably want to aria-hidden all but one of them if you need to duplicate the text. Or, you could use a very clever CSS trick...
Accessibility Links
2.4.2020
Austin Gil has kicked off the first in a five-part series about “HTML Forms Right” and to starts with semantics. It’s talking to the “we build our front-ends with JavaScript” crowd. The first block of code is an example of an Ajax form submission where the data...
Rethinking Code Comments
2.4.2020
Justin Duke asks if treating code comments like footnotes could help us understand the code in a file better. In his mockup, all the comments are hidden by default and require a click to reveal:
What a neat idea! Justin’s design reminds me of the way that Instapaper treated inline...
‘Breakthrough’ as Lightning Uses Web's Forgotten Payment Code
2.4.2020
Lightning Labs believes its Lightning Service Authentication Tokens will do away with passwords and credit cards online
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...
Film Reels and Steel: Github Plans to Archive Bitcoin Code for 1,000 Years
1.4.2020
The Microsoft subsidiary, Github recently revealed the “Archive Program,” an initiative that aims to preserve open source technologies for 1,000 years. The newly launched effort plans to store snapshots of open source technology 250 meters underground on the Norwegian island...
Performant Expandable Animations: Building Keyframes on the Fly
1.4.2020
Animations have come a long way, continuously providing developers with better tools. CSS Animations, in particular, have defined the ground floor to solve the majority of uses cases. However, there are some animations that require a little bit more work.
You probably know that animations should...
GitHub Is Burying Bitcoin Code Inside an Arctic Mountain to Ride Out the Next 1,000 Years
1.4.2020
Deep inside a forsaken coal mine on the Norwegian island of Svalbard, the Bitcoin Core code repository will be kept on film reels and stored for centuries
Wide Gamut Color in CSS with Display-P3
31.3.2020
Here’s something I’d never heard of before: Display-P3 support in CSS Color Module Level 4 spec. This is a new color profile supported by certain displays and it introduces a much wider range of colors that we can choose from.
Right now the syntax looks something like this in CSS:
header...
4 CSS Grid Properties (and One Value) for Most of Your Layout Needs
30.3.2020
CSS Grid provides us with a powerful layout system for websites. The CSS-Tricks guide gives you a comprehensive overview of Grid’s properties with layout examples. What we’re going to do here is a reverse approach to show you the smallest possible set of grid properties you need to know to meet...
How They Fit Together: Transform, Translate, Rotate, Scale, and Offset
30.3.2020
Firefox 72 was first out of the gate with "independent transforms." That is, instead of having to combine transforms together, like:
.el {
transform: rotate(10deg) scale(0.95) translate(10px, 10px);
}
...we can do:
.el {
rotate: 10deg;
scale: 0.95;
translate: 10px 10px;
}
That's extremely...
Network of Fake Bitcoin QR Code Generators Stole $45,000 in March
29.3.2020
The malicious QR code generators are hosted on the same servers as a network of “Bitcoin transaction accelerators” that have stolen 17.6 BTC
Creating a Pencil Effect in SVG
28.3.2020
Scott Turner, who has an entire blog "Exploring procedural generation and display of fantasy maps", gets into why vector graphics seems on these surface why it would be bad for the look of a pencil stroke:
Something like this pencil stroke would require many tens of thousands of different...
How to use CSS Scroll Snap
27.3.2020
Nada Rifki demonstrates the scroll-snap-type and scroll-snap-alignCSS properties. I like that the demo shows that the items in the scrolling container can be different sizes. It is the edges of those children that matter, not some fixed snapping distance.
I like Max Kohler's coverage...
CSS Viewport Units
26.3.2020
Deep dive from Ahmad. I like the coverage of vmin and vmax, which I think I don't reach for as often as I should.
I'm thinking that if you are doing something highly directional (e.g. a full bleed trick), then directly using vw is necessary. On the other hand, if you're doing a calculation where...
Auto-Growing Inputs & Textareas
25.3.2020
By default, <input> and <textarea> elements don't change size based on the content they contain. In fact, there isn't any simple HTML or CSS way to make them do that. Kinda funny, as that seems like a reasonable use-case. But of course, there are ways, my friend. There are always...