Search
How I Made an Icon System Out of CSS Custom Properties
22.9.2022
SVG is the best format for icons on a website, there is no doubt about that. It allows you to have sharp icons no matter the screen pixel density, you can change the styles of the SVG on hover …
How I Made an Icon System Out of CSS Custom Properties originally published on CSS-Tricks, which...
Making a Real-Time Clock With a Conic Gradient Face
19.9.2022
Gradients have been a part of the CSS spectrum for quite some time now. We see a lot of radial and linear gradients in a lot of projects, but there is one type of gradient that seems to be a …
Making a Real-Time Clock With a Conic Gradient Face originally published on CSS-Tricks, which...
Interpolating Numeric CSS Variables
30.8.2022
We can make variables in CSS pretty easily:
:root {
--scale: 1;
}
And we can declare them on any element:
.thing {
transform: scale(--scale);
}
Even better for an example like this is applying the variable on a user …
Interpolating Numeric CSS Variables originally published...
Multi-Value CSS Properties With Optional Custom Property Values
11.2.2022
Imagine you have an element with a multi-value CSS property, such as transform: optional custom property values:
.el {
transform: translate(100px) scale(1.5) skew(5deg);
}
Now imagine you don’t always want all the transform values to be applied, so some …
Multi-Value CSS Properties With...
How to Make a Pure CSS 3D Package Toggle
12.1.2022
You know how you can get cardboard boxes that come totally flat? You fold ‘em up and tape ‘em to make them into a useful box. Then when it’s time to recycle them, you cut them back apart to flatten …
How to Make a Pure CSS 3D Package Toggle originally published on CSS-Tricks. You should...
Don’t Fight the Cascade, Control It!
10.1.2022
If you’re disciplined and make use of the inheritance that the CSS cascade provides, you’ll end up writing less CSS. But because our styles often comes from all kinds of sources — and can be a pain to structure and …
Don’t Fight the Cascade, Control It! originally published...
The surprising behavior of !important in CSS custom property values
17.12.2021
Huh! I did not realize that CSS custom properties had their own resolution behavior for how !important works in their values. Uh, despite writing a guide about them. 😬 But hey it’s now updated.
Stefan Judis documents it clearly. …
Parallax Powered by CSS Custom Properties
19.11.2021
Good friend Kent C. Dodds has recently dropped his new website which had a lot of work go into it. I was fortunate enough that Kent reached out a while back and asked if I could come up with some …
The post Parallax Powered by CSS Custom Properties appeared first on CSS-Tricks. You...
Different Degrees of Custom Property Usage
14.10.2021
One way to work with Custom Properties is to think of them as design tokens. Colors, spacings, fonts, and whatnot. You set them at the root of the page and use them throughout your CSS. Very useful, and the classic …
The post Different Degrees of Custom Property Usage appeared first...
The Big Gotcha With Custom Properties
19.8.2021
I’ve seen this confuse more than a handful of people recently, including myself, so I’m making sure it’s written down.
Let’s chuck a couple of custom properties into CSS:
html {
--color-1: red;
--color-2: blue;
}
Let’s use them right …
The post The...
Efficient Infinite Utility Helpers Using Inline CSS Custom Properties and calc()
6.8.2021
I recently wrote a very basic Sass loop that outputs several padding and margin utility classes. Nothing fancy, really, just a Sass map with 11 spacing values, looped over to create classes for both padding and margin on each side. …
The post Efficient Infinite Utility Helpers Using Inline...
Using Absolute Value, Sign, Rounding and Modulo in CSS Today
28.7.2021
For quite a while now, the CSS spec has included a lot of really useful mathematical functions, such as trigonometric functions (sin(), cos(), tan(), asin(), acos(), atan(), atan2()), exponential functions (…
The post Using Absolute Value, Sign, Rounding and Modulo in CSS Today appeared...
Of Course We Can Make a CSS-Only Clock That Tells the Current Time!
16.7.2021
Let’s build a fully functioning and settable “analog” clock with CSS custom properties and the calc() function. Then we’ll convert it into a “digital” clock as well. All this with no JavaScript!
Here’s a quick look at the clocks …
The post Of Course We Can Make a CSS-Only Clock That Tells...
The Dilemma of Naming Font Size Variables
6.7.2021
Normally, a project will have a set of pre-determined font sizes, usually as variables named in such a way that seeks some semblance of order and consistency. Any project of considerable size can use something like that. There are always …
The post The Dilemma of Naming Font Size Variables...
Custom Property Brain Twisters
25.6.2021
I am part of that 82% that got the answer to Lea Verou's quiz wrong. Stephen Shaw posted a similar quiz as well and it's a fun exercise sharpen your CSS chops.
The post Custom Property Brain Twisters appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter
Drawing Graphics with the CSS Paint API
18.6.2021
A practical introduction to the CSS Paint API with hands-on examples.
The post Drawing Graphics with the CSS Paint API appeared first on Codrops
Are Custom Properties a “Menu of What Will Change”?
2.6.2021
PPK laid out an interesting situation in “Two options for using custom properties” where he and Stefan Judis had two different approaches for doing the same thing with custom properties. In one approach, hover and focus styles for a …
The post Are Custom Properties a “Menu...
Trigonometry in CSS and JavaScript: Getting Creative with Trigonometric Functions
2.6.2021
In the second part of this series on trigonometry, we’ll explore JavaScript trigonometric functions and learn how we can apply them to our CSS code.
The post Trigonometry in CSS and JavaScript: Getting Creative with Trigonometric Functions appeared first on Codrops
JSON in CSS
21.5.2021
Jonathan Neal tweeted a heck of a little CSS trick the other day, putting JSON inside CSS and plucking it out with JavaScript. Valid values for custom properties are quite liberal! So this looks for a CSS rule (e.g. a …
The post JSON in CSS appeared first on CSS-Tricks.
You can support...
Dynamic CSS Masks with Custom Properties and GSAP
4.5.2021
Learn how to animate CSS masks based on the cursor position using GSAP and custom properties for a unique spotlight effect.
The post Dynamic CSS Masks with Custom Properties and GSAP appeared first on Codrops