The Anti-Reset (to Reset to User Agent Styles)

Published on August 17, 2020 (↻ December 14, 2021), filed under (RSS feed for all categories).

I advise against resets. You don’t need them. (We don’t need them.) I think they’re dying. (The reset detection extension barely registers anymore, though that also has other reasons.)

I advise against resets even though, vanity note, I’ve been one of the ones to come up with and promote them. That was in 2004, but I’ve never gone beyond that “universal reset.”

What’s the opposite of that universal reset? Of all resets? The anti-reset. You can write it yourself. It looks something like this, with force but not without flaws (I was impatient and am not sure I included just the needed pseudo-classes, and then there’s incomplete support at least for revert):

*,
::after,
::before,
::first-letter,
::first-line,
::selection,
:active,
:checked,
:disabled,
:enabled,
:focus,
:hover,
:indeterminate,
:target,
:visited {
  all: revert !important;
}

Here’s the gist. Here’s the bookmarklet. Here’s a test page. Firefox, yes, may offer best support. Chrome does not.

I advise against anti-resets 😊 That makes no sense now. But the reset of a reset is not no reset. It’s two resets. But that’s not the same as 0 × 0, it’s more like 1 + 1, when really you want 0, because you already have 1 (style sheet), and no more, old school, and so you don’t want 1 + 1 + 1 but 1 + 0, or 1 + 0 + 0, and that is just getting a bit very complicated now.

I advise against resets. I advise against anti-resets. You don’t need them. (Unless you do. Do whatever you deem appropriate.) See you around.

Was this useful or interesting? Share (toot) this post, or support my work by buying one of my books (they’re affordable, and many receive updates). Thanks!

About Me

Jens Oliver Meiert, on September 30, 2021.

I’m Jens (long: Jens Oliver Meiert), and I’m a frontend engineering leader and tech author/publisher. I’ve worked as a technical lead for companies like Google and as an engineering manager for companies like Miro, I’m close to W3C and WHATWG, and I write and review books for O’Reilly and Frontend Dogma.

I love trying things, not only in web development (and engineering management), but also in other areas like philosophy. Here on meiert.com I share some of my views and experiences.

If you want to do me a favor, interpret charitably (I speak three languages, and they can collide), yet be critical and give feedback for me to learn and improve. Thank you!