5 Reasons Against Resets, Normalizers, Reboots
Post from October 19, 2017 (↻ December 5, 2021), filed under Web Development.
The Bootstrap framework is working on a new reset or normalizer, Reboot.
Reset or normalizer because it makes no difference: Everything is supposed to look somewhat the same before any branded styling is applied, that’s the idea.
The problem? Resets and normalizers (and reboots) aren’t needed at all.
They never were.
Reason 1: We test. We notice all relevant styling differences between user agents during testing *.
Reason 2: We’re professionals. We can fix the relevant styling differences.
Reason 4: We don’t need the detour. User agent styling, reset, styling? No: user agent styling, styling.
Reason 5: We know that resets and normalizers are unnecessary because we know that in many cases there’s no decisive difference even when the reset or normalizer is removed.
Maybe there’s also a reason in that there were working websites before there were resets, or that there have always been successful style sheets and frameworks that did without resets.
And then there’s the reason that one could, instead of a reset, just link any random style sheet on the Web and then overwrite that one instead.
Resets and normalizers (and reboots) weren’t and aren’t needed at all.
Why I, who has not been innocent, am still writing about this case, I don’t know. By now I consider it a little quirk or hobby, a hobby to collect the different perspectives at resets and to help understand that the practice is… smoke and mirrors.
* Note the wording: all relevant differences, not all differences. Contrary to the anxiety this may cause, undiscovered pixel differences are not a big deal.
I’m Jens, and I’m an engineering lead—currently manager for Developer Experience at LivePerson—and author. I’ve worked as a technical lead for Google, I’m close to W3C and WHATWG, and I write and review books for O’Reilly. I love trying things, sometimes including philosophy, art, and adventure. Here on meiert.com I share some of my views and experiences.
If you have a question or suggestion about what I write, please leave a comment (if available) or a message. Thank you!
On October 20, 2017, 14:00 CEST, Laszlo K. said:
Your reasons are unfounded and subjective. Let see:
1. tested? ok. where? it’s not a demonstartion, if you say so…
2. yeah right, styling every point if there are glitches… think again
3. its a little tough to say “no one”
4. nobody uses ua styling and reset in the same time (except if rookie or lame)
5. “in many cases” ok. and the other cases?
This is not a very strong argument.
On October 24, 2017, 2:09 CEST, unleash.it said:
I’m not sure how long you’ve been using CSS, but there was a time a CSS reset (including a hardcore one like the Eric Meyer) were arguably a “huge” time saver. Back then, browser differences were much greater than they are now… to the point where entire layouts would be upended depending on browser (because of float drop, etc.). Sure you could correct/normalize later as you suggest, but after struggling with that for years and then after plugging in reset.css, there was no looking back for a lot of people.
Nowadays, I don’t think there’s a right or wrong about whether to use a reset. That said, the title seems somewhat clickbaity and arguments are unconvincing. While I don’t much like having a blackbox file to have to later override if I’m not happy with the settings (more clutter in dev tools), I’m usually happy with most of the choices that normalize and esp. bootstrap’s new reset provide. They save me time in having to maintain a constantly evolving baseline of typically desirable browser hacks, therefore I will use.
I like that there are choices. I think Normalize.css is for those who want the most unopinionated reset. Reboot for those like me who like prefer only bottom margins on elements and don’t mind a few extras. Or no reset at all if you’re like the author and either not picky about design consistency, or you have the time and enjoy fixing more cross browser quirks than you have to.
On October 24, 2017, 23:28 CEST, Aaron said:
@ Laszlo did you read what you wrote?
I use no resets. My web sites work without them.
Maybe this is interesting to you, too:
- Next: DRY CSS: How to Use Declarations Just Once, Effectively
- Previous: The 3 Levels of Code Consistency
- More under Web Development, or from 2017
- Most popular posts
Looking for a way to comment? Comments have been disabled, unfortunately.
Get a good look at web development? Try The Web Development Glossary (2020). With explanations and definitions for literally thousands of terms from Web Development and related fields, building on Wikipedia as well as the MDN Web Docs. Available at Apple Books, Kobo, Google Play Books, and Leanpub.