Verschelde argues that “browser defaults are sensible and useful.”
Browser defaults are also inconsistent. Which is why css resets exist. If you have the ability to refactor cross-browser resetting rules into normal style rules for your website you’re still using a css reset, it’s just optimized away.
tldr; yes, you should.
Also, the people who argue that you shouldn’t use a css reset because some of them remove the :focus outline, what are you doing? You are arguing for the wrong thing for the wrong reason. Of course removing the :focus outline without providing other feedback that an element is in focus is bad, but saying that this is a reason to forgo css resetting completely and instead we should all just memorize every single browser inconsistency is laughable.
The “browser defaults” also includes user settings, however. If I find a particular font pleasant to read, I’d like to configure my browser to use and have that setting respected. Without ever escalating !important rules.
Why is browser inconsistency such a problem? Users mostly only use one browser, so everything would be consistent for them. That is, if every site didn’t change things. If we’re going to complain that browser defaults aren’t sensible or consistent, then I’m going to stick in a complaint that web sites are neither sensible nor consistent.
Web designers really need to get over the thought that web pages should or even can be made totally consistent like printed pamphlets. They can’t. They get displayed on different physical displays with wildly different sizes, resolutions and color curves; rendered by totally different engines, with different settings and configurations for all sorts of things (e.g. font smoothing, font availability, the availability of custom fonts at all).
For a while back in the 2000s, designers were actually doing okay, but it looks like (incredibly ironically) IE and its broken, inconsistent behavior may have been what was keeping things platform-independent; on the modern web, it seems more like designers target Chrome exclusively, and Firefox and the other browsers on the fringe of relevance work to match it pixel-for-pixel.
The problem isn’t necessarily that things will be different across browsers, the problem is that the inconsistencies in browser default styles will break certain UI elements if not smoothed out. For example: Firefox treats line-height differently from every other browser. If not accounted for or tested, a site’s buttons may look vertically squished in Firefox but not in any other browser.
Like @brinker said, environment != style configuration. I’m personally a fan of using em’s and max-width:100%’s for simple designs that change tastefully per platform (I abhor the obsession with pixel-oriented layouts; what is a “pixel”, is the platform you’re using really giving you one? or is it scaling that to four pixels, or more, so that the interface doesn’t end up tiny?). Having a different margin on some elements for each browser is a real, different problem
This is gonna get buried under the other replies and it’s a late response but compared to normal website styling rules, css resets usually have a low specificity so they’re relatively mundane to override with a user stylesheet, even if it means having to add an ugly !important to your rule. Regardless of your qualms with !important, a website having a reset or not makes no difference if they have normally specific styling rules in the first place (as do most websites).
I am tempted to downvote your comment as ‘troll’, because your stance against most websites seems extremely inconsistent and your complaints against them are generally devoid of suggestions to fix the issue. Here you are arguing that the web isn’t consistent enough, yet in this thread you attempt to defend an incredibly inconsistent design by saying that the user should use the “Sherlock Holmes principle” to determine the effect of clicking a badly worded button.
Here’s the deal. No platform will eliminate the possibility of bad design. By and large, most websites are consistent enough that the average user (including my grandmother with glaucoma and general lack of tech knowledge) can understand them. True, there are bad designs out there, but your implied claim that these are the majority, or even a significant minority, is false.
However, you’ve also complained about icon fonts on twitter and the like. This causes me to believe that you aren’t the average user, nor are you representative of a significant minority of users. I agree that you are allowed to make your own choices regarding how you want to view content (though I am completely baffled by your stubbornness to use downloaded fonts). However, you need to understand the consequences of your choices. Right now, one consistency of the web is the use of icon fonts. By refusing to download said fonts, you have to understand that the consequence of that choice is that most sites' UIs will break for your edge case.
Note that I am not saying that web developers should ignore edge cases, in fact I laud efforts that fall back gracefully, like the Material Icon Font, which uses glyphs instead of special characters to display the icons. All I’m saying is you have to realize that you are actively making yourself an extremely uncommon edge case, and that most websites are not developed with you in mind.
If you have a reason why we should have your edge case in mind, let us know by all means, but your vaguely worded rants about the web are not helping any of us find a solution that works for everyone. I know in the past you have called for a return to the command line as a common interface, but that does not work for the average user. If you have any suggestions that also work well for the average user, I’m definitely interested in hearing them.
If you have a reason why we should have your edge case in mind
In the particular edge case of glyphicons, font parsing is an endless well of vulnerabilities. Disabling webfonts is the only reasonable course of action if you care about your security at all and haven’t completely sandboxed your web browser (which is difficult, inconvenient, and increasingly useless anyway).
(Also, I have yet to see a web designer choose a font that wasn’t indistinguishable from a system font, ugly, illegible, or all of the above, but I will certainly grant that’s subjective.)
In general, I (who am not tedu) think that web designers have entirely too much freedom. The web is a shitty content platform, in part because it’s got half an application platform grafted on top of it, and it’s a shitty application platform because it evolved haphazardly from a shitty content platform. Since I don’t care about and don’t want webapps, I would prefer the web work as a content delivery platform; and every feature more powerful than markdown (or thereabouts) detracts from that and I’ll argue passionately against its use.
Definitely subjective. ;)
Since I don’t care about and don’t want webapps, I would prefer the web work as a content delivery platform; and every feature more powerful than markdown (or thereabouts) detracts from that and I’ll argue passionately against its use.
And yet here we are discussing this on lobsters. The web as we know it is here to stay. Fighting against it is like making the case for telephone books. There is no going back, fortunately/unfortunately.
That font parsers are vulnerable? Google will happily list pages and pages, but common sense should suffice: font file formats are immensely complicated, and most to all the software infrastructure for them was written in a more innocent age when security was less of a concern and all your fonts were provided by the operating system anyway.
Agreed (though I think a simpler web is far more useful than a phone book), but IMO the hopelessness of a good cause is no reason to stop fighting for it. Just don’t count on its success.
(Also, for all you know, I use lobste.rs in mailing list mode. I don’t, in fact, but I could.)
I stand corrected. Thanks for the sources, I wasn’t aware fonts were so vulnerable. :)
Are you asking for a link to freetype’s source code or a list of CVEs? Granted those are basically the same thing.
I’ll spare you the source and instead suggest you read Mike Perry’s description of it at the bottom of that article.
I never said jwz’s design was particularly great, just that it was decipherable. I’m also generally capable of deciphering websites that screw about with font sizes and margins and button colors.
Instead of CSS reset I’m using CSS normalization, which is a bit less extreme.