Search
No-Jank CSS Stripes
1.2.2021
My mind goes immediately to repeating-linear-gradient and hard-stop gradients when thinking of creating stripes in CSS. You make one stripe by using the same color between two color stops, and another stripe (or more) but using a different color …
The post No-Jank CSS Stripes appeared first...
Bulletproof flag components
29.1.2021
A clever use of CSS grid from Jay Freestone to accomplish a particular variation of the media object design pattern (where the image is centered with the title) without any magic numbers anything that isn’t flexible and resiliant.
The trick …
The post Bulletproof flag components...
Styling Web Components
29.1.2021
Nolan Lawson has a little emoji-picker-element that is awfully handy and incredibly easy to use. But considering you’d probably be using it within your own app, it should be style-able so it can incorporated nicely anywhere. How to allow …
The post Styling Web Components appeared first...
GreenSock ScrollTrigger
28.1.2021
High five to the Greensock gang for the ScrollTrigger release. The point of this new plugin is triggering animation when a page scrolls to certain positions, as well as when certain elements are in the viewport. Anything you’d want configurable …
The post GreenSock ScrollTrigger...
A Whole Website in a Single HTML File
28.1.2021
I can’t stop thinking about this site. It looks like a pretty standard fare; a website with links to different pages. Nothing to write home about except that… the whole website is contained within a single HTML file.…
The post A Whole Website in a Single HTML File appeared first...
Components: Server-Side vs. Client-Side
28.1.2021
Building a website in 2021? I’m guessing you’re going to take a component-driven approach. It’s all the chatter these days. React and Vue are everywhere (is Angular still a thing?), while other emerging frameworks continue to attempt a push …
The post Components: Server-Side vs. Client-Side...
Embedding an Interactive Analytics Component with Cumul.io and Any Web Framework
28.1.2021
In this article, we explain how to build an integrated and interactive data visualization layer into an application with Cumul.io. To do so, we’ve built a demo application that visualizes Spotify Playlist analytics! We use Cumul.io as our interactive …
The post Embedding an Interactive...
The Holy Grail Layout with CSS Grid
27.1.2021
How to build a very common layout with CSS grid. Header on the top, footer on the bottom. Two columns, sidebar and main content. This one has navigation above the main content but within that same column.
The post The Holy Grail Layout with CSS Grid appeared first on CSS-Tricks.
You can support...
Monorepo
26.1.2021
I’m not exactly a large-scale DevOps guy, but I can tell ya we’ve been moving back toward a monorepo at CodePen and it’s rife with advantages over a system with lots of smaller repos. For us, I mean. It’s …
The post Monorepo appeared first on CSS-Tricks.
You...
Re-Creating the Porky Pig Animation from Looney Tunes in CSS
26.1.2021
You know, Porky Pig coming out of those red rings announcing the end of a Looney Tunes cartoon. We’ll get there, but first we need to cover some CSS concepts.
Everything in CSS is a box, or rectangle. Rectangles …
The post Re-Creating the Porky Pig Animation from Looney Tunes in CSS appeared...
Tech Stacks and Website Longevity
25.1.2021
Steren Giannini in “My stack will outlive yours”:
My stack requires no maintenance, has perfect Lighthouse scores, will never have any security vulnerability, is based on open standards, is portable, has an instant dev loop, has no build step
…
The post Tech Stacks and Website...
Checkerboard Reveal
25.1.2021
Back when I was 10, I remember my cousin visiting our house. He was (and still is) a cool kid, the kind who’d bring his own self-programmed chess game on a floppy disk. And his version of chess was …
The post Checkerboard Reveal appeared first on CSS-Tricks.
You can support CSS-Tricks...
You want minmax(10px, 1fr) not 1fr
22.1.2021
There are a lot of grids on the web like this:
.grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
}
My message is that what they really should be is:
.grid {
display: grid;
grid-template-columns: repeat(3, minmax(10px, 1fr));
}
Why? In …
The post You want minmax(10px, 1fr)...
Servers: Cool Once Again
22.1.2021
There were jokes coming back from the holiday break that JavaScript decided to go all server-side. I think it was rooted in:
The Basecamp gang releasing Hotwire, which looks like marketing panache around a combination of technologies. “HTML over
…
The post Servers: Cool Once Again...
useStateInCustomProperties
21.1.2021
In my recent “Custom Properties as State” post, one of the things I mentioned was that theoretically, UI libraries, like React and Vue, could automatically map the state they manage over to CSS Custom Properties so we could use that state …
The post...
How to Play and Pause CSS Animations with CSS Custom Properties
21.1.2021
Let’s have a look CSS @keyframes animations, and specifically about how you can pause and otherwise control them. There is a CSS property specifically for it, that can be controlled with JavaScript, but there is plenty of nuance to get …
The post How to Play and Pause CSS Animations with...
What if you could cut your hosting costs by 80%? Webiny Serverless CMS makes it possible.
21.1.2021
Are you hosting one or more websites and are using a headless CMS? Are you hosting your CMS on a virtual machine or a container, or using a SaaS solution? If so, then you’re paying for the uptime, regardless if …
The post What if you could cut your hosting costs by 80%? Webiny...
Scrollbars on Hover
21.1.2021
First, scrollbars are a usability and accessibility thing. Second, a rule of thumb: if an area scrolls, it should have a visible scrollbar. But the web is a big place and I like tricks, so I’m going to cover the …
The post Scrollbars on Hover appeared first on CSS-Tricks.
You...
New in Chrome 88: aspect-ratio
20.1.2021
And it was released yesterday! The big news for us in CSS Land is that the new release supports the aspect-ratio property. This comes right on the heels of Safari announcing support for it in Safari Technology Preview 118, …
The post New in Chrome 88: aspect-ratio appeared first...
Lightweight Form Validation with Alpine.js and Iodine.js
20.1.2021
Many users these days expect instant feedback in form validation. How do you achieve this level of interactivity when you’re building a small static site or a server-rendered Rails or Laravel app? Alpine.js and Iodine.js are two minimal JavaScript …
The post Lightweight Form Validation with...