Should I use WordPress or React hooks? Should I use D3 or CSS? Should I use Markdown or JSON? Can I use flexbox in Gatsby? Can I use custom properties in | Continue reading
Is it harder or easier to build a website now than 10 years ago? Has the bar gone up or down? I don't have any data for you, but I can shell out some | Continue reading
I recently did an AMA over on DEV. Just taking the opportunity to port over some answers here like a good indiewebber. If you were starting out as a front | Continue reading
This seemingly simple task had me scratching my head for a few hours while I was working on my website. As it turns out, getting the current page URL in | Continue reading
GraphQL has all kinds of awesome tooling built around it. But like everything on the web, it ultimately comes down to data shootin' across the ol' network | Continue reading
Here’s a couple of lessons I’ve learned about how not to build React components. These are things I've come across over the past couple of months and | Continue reading
I always love seeing people get inspired by print design and trying to port it over to the web. There is a much deeper history of interesting print work | Continue reading
We just ran a fancy article series here on CSS-Tricks with a bunch of different articles all answering the same question. By fancy, I mean two things: The | Continue reading
That’s right! And I can prove it, too. Let’s look at some CSS first: .a { color: red; } .b { color: blue; } And now let’s look at some markup: Here’s some | Continue reading
It's no big secret that Netlify invented the term JAMstack. While it's possible to embrace the JAMstack without using Netlify, it's notable that Netlify | Continue reading
There is very little guidance on how to organize front-end applications in the world of React. (Just move files around until it “feels right,” lol). The | Continue reading
November 30th, the official "Blue Beanie Day," has come and gone. I'm not sure I ever grokked the exact spirit of it, but I've written about what it means | Continue reading
Most of the time you don’t really care about whether a user is actively engaged or temporarily inactive on your application. Inactive, meaning, perhaps | Continue reading
In this week's news: Firefox gets strict, Opera goes to the dark side, and Chrome plans to let web apps run in the background. Let's get into the news. | Continue reading
Did you know there is a well-supported browser API that allows you to interface with interesting and even custom-built hardware using a mature protocol | Continue reading
We’re sliding into the roaring twenties of the twenty-first century (cue Jazz music 🎷). It’s important that you and I, as responsible people, | Continue reading
Seemingly out of the blue, the Gulp processing I had set up for this site started to have a race condition. I'd run my watch command, change some CSS, and | Continue reading
It’s all too common to see the incorrect HTML used for quotes in markup. In this article, let’s dig into all this, looking at different situations and | Continue reading
Dylan Paulus: Facebook actually hides 'dummy' DOM nodes between the 'Sponsored' text. These values are entirely random characters, with a random number of | Continue reading
For those who may not come from a design background, selecting a color palette is often based on personal preferences. Choosing colors might be done with | Continue reading
As is the rule in WebGL, anything that seems like it should be simple is actually quite complicated. Drawing lines, debugging shaders, text rendering… | Continue reading
In this week’s roundup: DuckDuckGo gets smarter encryption, a fight over the sale of dot org domains, and a new browser engine is in the works. Let’s get into the news! | Continue reading
When you add anything with user-generated content or dynamic data to a static site, the complexity of the build process can become comparable to launching a monolithic CMS. How can we add rich cont… | Continue reading
I recently attended the ARTIFACT conference in Austin, TX, and was inspired by a few talks about accessibility through the lens of site performance. It became clear to me that there is this tendenc… | Continue reading
Oooo! A bonafide trick from Thomas Steiner. Chrome will soon be supporting SVG favicons (e.g. ). And you can embed CSS within an SVG with a Safari also | Continue reading
The other day, Cassie Evans tweeted a really neat trick that I’ve never seen before: using SVG to mask one GIF on top of another. The effect is quite | Continue reading
Every front-end developer has dealt or will deal with this scenario: your boss, client or designer thinks the outline applied by browsers on focused | Continue reading
A couple of months ago, we invited Marc Anton Dahmen to show off his database-less content management system (CMS) Automad. His post is an interesting | Continue reading
Fluid typography is the idea that font-size (and perhaps other attributes of type, like line-height) change depending on the screen size (or perhaps container queries if we had them). The core trickery comes from viewport units. You can literally set type in viewport units (e.g. … | Continue reading
As you begin to make use of React hooks in your applications, you’ll want to be certain the code you write is nothing short of solid. There’s nothing like | Continue reading
Web scraping has always been taken care of by actual developers, since a lot of coding, proxy management and CAPTCHA-solving is involved. However, the | Continue reading
You’re probably already at least a little familiar with CSS variables. If not, here’s a two-second overview: they are really called custom properties, you | Continue reading
I know. You hate parallax. You know what we should hate more? When things that used to work on the web stop working without any clear warning or idea why. | Continue reading
I just need to put two boxes side-by-side and I hear flexbox is good at stuff like that. Just adding display: flex; to the parent element lays out the | Continue reading
Picture-in-Picture made its first appearance on the web in the Safari browser with the release of macOS Sierra in 2016. It made it possible for a user to | Continue reading
Let's say you visit an e-commerce site because you want to buy the latest banana peeler model. Bananas are hard enough to peel, right? Only a tool will | Continue reading
CSS is the domain of styling, layout, and presentation. It is full of colors, sizes, and animations. But did you know that it could also control when a | Continue reading
Building websites is programming. Writing HTML and CSS is programming. I am a programmer, and if you're here, reading CSS-Tricks, chances are you're a | Continue reading
Eighteen years into this game, I love to reminisce back to the good ol’ days of the early to mid-2000s when there was an explosion of creativity on the | Continue reading
I started this year on a new path at Knowbility — to help people and organizations create accessible content and apps. But what was exciting and helped | Continue reading
I've been thinking about the question for a solid month now. What about building websites has you interested this year? The question pervaded my solitary | Continue reading
What has me really excited about building websites is largely around design systems and the design tools we use to build them. Though, design systems are | Continue reading
In this week's roundup: Firefox's new contrast checker, a simpler way to lasso substrings in a string, and a new experimental API that will let apps | Continue reading
I have to admit, I'm a developer who hasn't built a website. When I first read Chris's question, I sat in silence for at least a minute. Which technical | Continue reading
The tech industry has long held the belief that technology is apolitical. People are flawed, but the machines? They are neutral. They are pure. This is | Continue reading
Being a pessimist is an easy thing to fall back on, and I’m trying to be better about it. As we close the year out, I thought it would be a good exercise | Continue reading
There are some great resources out there to help conference speakers give better talks, but fewer for people who are preparing to take on the role of | Continue reading
Testim’s end-to-end test automation delivers the speed and stability of AI-based codeless tests, with the power of code. You get the flexibility to record | Continue reading