Bootstrap: Drop Normalize.css in v4

Created on 16 Jan 2017  路  6Comments  路  Source: twbs/bootstrap

Reversing course from #20388.

I hate doing this right after our last alpha when we should be focused on as few changes as possible, but for stability of the project moving forward, I'm thinking we need to drop Normalize.css from v4. Here's why.

  • In their next major release, they plan to remove all _opinionated_ styles. That includes fonts, body's default margin, and more鈥攁ll of which we rely on.
  • The last major release, Normalize 5, removed the font: inherit normalization from common form and button elements, causing #21588 (and several duplicate issues, sorry!).
  • There are a ton of overrides we don't need given our browser support (e.g., IE9-, Safari 6, and iOS 4-7), meaning we can remove some unused code.
  • Having our resets split across files really kinda sucks. This will consolidate them into a single point of reference for everyone.

Weigh in below if you have thoughts or feels. I'm drafting up a PR to see what this looks like in practice.

css has-pr v4

Most helpful comment

IMO it's a good things because less dependency equal more control for us on how to evolve BS 馃憤

All 6 comments

PR opened over at #21741.

IMO it's a good things because less dependency equal more control for us on how to evolve BS 馃憤

A tentative LGTM from my end. It's somewhat irritating but probably worth it.

After Normalize removes opinionated styles, what would maintaining compatibility look like? Would it be easier because of Normalize's narrower scope? And within the narrower scope, are there any breaking changes that could still be made in the future?

Also, going forward, what would be the plan to track new normalizations? Copy from the latest Normalize releases?

Also, going forward, what would be the plan to track new normalizations? Copy from the latest Normalize releases?

I'm now watching the Normalize.css repo and will probably end up manually porting things as necessary.

Building on concerns for future updates, we're in a bit of a better place overall here since we've dropped at least half of Normalize. That means we're rid of issues around older browsers that we no longer support and have a more focused application of styles. I think we can still whittle things down over time, but ideally this is a simpler approach.

Was this page helpful?
0 / 5 - 0 ratings