A modern alternative to CSS resets
Go to file
Cătălin Mariș bc3dd58602 Remove sudo: false from .travis.yml
Since this repository was not recognized by Travis before 2015-01-01,
there is no need to include `sudo: false` as that is now the default.

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

From https://docs.travis-ci.com/user/workers/container-based-infrastructure/#Routing-your-build-to-container-based-infrastructure:

 " The default behavior, when no sudo usage is detected in
   any customizable build phases, depends on the date when
   the repository is first recognized by Travis CI:

   * For repos we recognize before 2015-01-01, linux builds
     are sent to our standard infrastructure.

   * For repos we recognize on or after 2015-01-01, linux
     builds are sent to our container-based infrastructure "
2016-02-09 12:40:21 +02:00
.gitignore Use Stylelint as a gatekeeper #508 2016-02-06 01:51:10 -05:00
.stylelintrc 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
CHANGELOG.md Remove opinionated table resets 2016-02-03 12:00:11 -05:00
CONTRIBUTING.md Remove Bower and Component(1) files 2016-01-04 21:27:41 -08:00
LICENSE.md Rename LICENSE to LICENSE.md 2012-08-14 23:30:47 +01:00
normalize.css Remove opinionated table resets 2016-02-03 12:00:11 -05:00
package.json Use Stylelint as a gatekeeper #508 2016-02-06 01:51:10 -05:00
README.md Update Browser support section from README.md 2016-02-03 19:11:03 +02:00
test.html Remove unnecessary color inheritance test now that it has been removed from form elements. 2016-01-21 23:51:06 -07:00

normalize.css v3

Normalize.css is a customisable CSS file that makes browsers render all elements more consistently and in line with modern standards.

The project relies on researching the differences between default browser styles in order to precisely target only the styles that need or benefit from normalizing.

View the test file

Install

No other styles should come before Normalize.css.

It is recommended that you include the normalize.css file as untouched library code.

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 improvements.
  • Explains what code does using detailed comments.

Browser support

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

Normalize.css v1 provides legacy browser support (IE 6+, Safari 4+), but is no longer actively developed.

Extended details

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. SVG Mailing List discussion

input[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).

legend

Adding border: 0 corrects an IE 811 bug where color (yes, color) is not inherited by legend.

Contributing

Please read the contribution guidelines.

Acknowledgements

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