Normalize CSS Vs Reset CSS

The major difference between normalize and reset css is:

Reset.CSS:

CSS resets aim to remove all built-in browser styling. Standard elements like H1-6, p, strong, em, etc. end up looking exactly alike, having no decoration at all. You're then supposed to add all decoration yourself.

Normalize.CSS:

Normalize CSS aims to make built-in browser styling consistent across browsers. Elements like H1-6 will appear bold, larger etc. in a consistent way across browsers. You're then supposed to add only the difference in decoration your design needs.


Sometimes, the best solution is to use both. Sometimes, it is to use neither. And sometimes, it is to use one or the other. If you want all the styles, including margin and padding reset across all browsers, use reset.css. Then apply all decorations and stylings yourself. If you simply like the built-in stylings but want more cross-browser synchronicity i.e. normalizations then use normalize.css. But if you choose to use both reset.css and normalize.css, link the reset.css stylesheet first and then the normalize.css stylesheet (immediately) afterwards. Sometimes it's not always a matter of which is better, but when to use which one versus when to use both versus when to use neither.

-----------------------------------------------------------------------------------------------------------------------------------------------------

Normalize.css - 
as the name suggests, it normalizes styles in the browsers for their user agents, i.e. makes them the same across all browsers due to the reason by default they're slightly different.

Example: <h1> tag inside <section> by default Google Chrome will make smaller than the "expected" size of <h1> tag. Microsoft Edge on the other hand is making the "expected" size of <h1> tag. Normalize.css will make it consistent.

Reset CSS -
as the name suggests, it resets all styles, i.e. it removes all browser's user agent styles.

Example:

html, body, div, span, h1,h2,....h6, dl, dt, dd, ol, ul, li, div, span, sup, sub audio, video{  
   margin: 0;  
   padding: 0;  
   border: 0;  
   font-size: 100%;  
   font: inherit;  
   vertical-align: baseline; 
}

Comments