Skip to content

Normalize.css discussion

tilomitra edited this page Jan 17, 2013 · 3 revisions

Objective

  1. Should normalize.css be part of core? If so, what do we tell people using CSSReset/CSSBase/CSSFonts?

##normalize vs. cssreset

Many people may want to use CSSReset to reset styles on a page, and not want to inherit any "base" styles. CSSReset should remain for these use-cases.

normalize vs. cssbase

The key difference here is that normalize.css does more than set base styles - it normalizes browser inconsistencies for native html elements across the board.

cssbase.css

  • headings
  • abbr, acronym
  • em
  • blockquote,
  • ul, ol, dl, dd
  • th, td
  • caption
  • p, fieldset, table, pre (margins)
  • input[type='text'], input[type='password'] (widths)

###normalize.css

  • headings
  • abbr (border)
  • blockquote (margin)
  • dfn (font style)
  • mark, q (address styling not present in older browsers)
  • p, pre, code, kbd, samp (improvements to pre readability)
  • small, sub, sup (prevents sub and sup affecting line height)
  • dl, dd, ol, ul, menu, nav ul, nav ol (margins and inset paddings for lists)
  • img (normalizes behavior re. border and scaling)
  • svg (removes overflow in IE9)
  • figure, form, fieldset, legend (alignment normalization)
  • button, select, textarea (font-size, vertical alignment, -webkit-appearance: button, inner spacing issue in IE7)
  • inputs (removing excess padding, addressing box-sizing)

Thoughts

  • normalize.css should be brought in to core.
  • CSSReset and CSSBase should remain for their own use-cases.
    • CSSReset for when developers want a clean slate without any styles.
    • CSSBase for when developers want basic styles without normalization. Less k-weight than normalize.
    • Normalize as an alternative for CSSReset/CSSBase
  • Based on feedback, we can decide if CSSBase and Normalize are too similar and if CSSBase should be deprecated.
  • Is it ok for future CSS modules in core (cssform, cssbutton, csstable) to depend on normalize?