A modern alternative to CSS resets
Go to file
Matt Brundage f9b42c6a3b Update text-size-adjust documentation
Clarification that this rule applies to IE's mobile variant. Interestingly, we'll be able to remove "-ms-text-size-adjust" soon, as Windows Phone 8.1+ supports "-webkit-text-size-adjust" as an alias.

Documentation: https://msdn.microsoft.com/en-us/library/dn793579(v=vs.85).aspx
2016-10-03 08:48:25 -04:00
.editorconfig Update project configuration 2016-03-19 17:14:10 -04:00
.gitignore Use Stylelint as a gatekeeper #508 2016-02-06 01:51:10 -05:00
.travis.yml Remove sudo: false from .travis.yml 2016-02-09 12:40:21 +02:00
bower.json Update project configuration 2016-03-19 17:14:10 -04:00
CHANGELOG.md Update semver strategy (#615) 2016-08-21 19:11:06 -04:00
CONTRIBUTING.md Update semver strategy (#615) 2016-08-21 19:11:06 -04:00
LICENSE.md Update documentation and tests 2016-03-19 17:14:10 -04:00
normalize.css Update text-size-adjust documentation 2016-10-03 08:48:25 -04:00
package.json 4.2.0 2016-06-30 01:36:25 -04:00
README.md Merge branch 'battaglr-placeholder' 2016-07-06 10:00:07 -04:00
test.html More explicitly define font resets on form controls (#607) 2016-08-08 09:43:30 -04:00

normalize.css

Normalize Logo

A modern alternative to CSS resets

npm license changelog gitter

NPM

npm install --save normalize.css

Bower

bower install --save normalize-css

CDN

See https://cdnjs.com/libraries/normalize

Download

See https://necolas.github.io/normalize.css/latest/normalize.css

What does it do?

  • Preserves useful defaults, unlike many CSS resets.
  • Normalizes styles for a wide range of elements.
  • Corrects bugs and common browser inconsistencies.
  • Improves usability with subtle modifications.
  • Explains what code does using detailed comments.

Browser support

  • Chrome (last two)
  • Edge (last two)
  • Firefox (last two)
  • Firefox ESR
  • Internet Explorer 8+
  • Opera (last two)
  • Safari 6+

[Normalize.css v1 provides legacy browser support] (https://github.com/necolas/normalize.css/tree/v1) (IE 6+, Safari 4+), but is no longer actively developed.

Extended details and known issues

Additional detail and explanation of the esoteric parts of normalize.css.

pre, code, kbd, samp

The font-family: monospace, monospace hack fixes the inheritance and scaling of font-size for preformatted text. The duplication of monospace is intentional. Source.

sub, sup

Normally, using sub or sup affects the line-box height of text in all browsers. Source.

svg:not(:root)

Adding overflow: hidden fixes IE9's SVG rendering. Earlier versions of IE don't support SVG, so we can safely use the :not() and :root selectors that modern browsers use in the default UA stylesheets to apply this style. [Source] (https://lists.w3.org/Archives/Public/public-svg-wg/2008JulSep/0339.html).

select

By default, Chrome on OS X and Safari on OS X allow very limited styling of select, unless a border property is set. The default font weight on optgroup elements cannot safely be changed in Chrome on OSX and Safari on OS X.

[type="checkbox"]

It is recommended that you do not style checkbox and radio inputs as Firefox's implementation does not respect box-sizing, padding, or width.

[type="number"]

Certain font size values applied to number inputs cause the cursor style of the decrement button to change from default to text.

[type="search"]

The search input is not fully stylable by default. In Chrome and Safari on OSX/iOS you can't control font, padding, border, or background. In Chrome and Safari on Windows you can't control border properly. It will apply border-width but will only show a border color (which cannot be controlled) for the outer 1px of that border. Applying -webkit-appearance: textfield addresses these issues without removing the benefits of search inputs (e.g. showing past searches). Safari (but not Chrome) will clip the cancel button on when it has padding (and textfield appearance).

::placeholder

In Edge, placeholders will disappear on relative or absolute positioned <input> elements if you use opacity less than 1 due to a bug.

Contributing

Please read the contribution guidelines in order to make the contribution process easy and effective for everyone involved.

Acknowledgements

Normalize.css is a project by Nicolas Gallagher, co-created with Jonathan Neal.