diff --git a/CHANGELOG.md b/CHANGELOG.md
index 0063eee02..aaa7a8f6a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,8 +1,78 @@
-== 1.0.1 (August 19, 2012)
+=== HEAD
+
+=== 3.0.3 (March 30, 2015)
+
+* Remove unnecessary vendor prefixes.
+* Add `main` property.
+
+=== 3.0.2 (October 4, 2014)
+
+* Only alter `background-color` of links in IE 10.
+* Add `menu` element to HTML5 display definitions.
+
+=== 3.0.1 (March 27, 2014)
+
+* Add package.json for npm support.
+
+=== 3.0.0 (January 28, 2014)
+
+=== 3.0.0-rc.1 (January 26, 2014)
+
+* Explicit tests for each normalization.
+* Fix i18n for `q` element.
+* Fix `pre` text formatting and overflow.
+* Fix vertical alignment of `progress`.
+* Address `button` overflow in IE 8/9/10.
+* Revert `textarea` alignment modification.
+* Fix number input button cursor in Chrome on OS X.
+* Remove `a:focus` outline normalization.
+* Fix `figure` margin normalization.
+* Normalize `optgroup`.
+* Remove default table cell padding.
+* Set correct display for `progress` in IE 8/9.
+* Fix `font` and `color` inheritance for forms.
+
+=== 2.1.3 (August 26, 2013)
+
+* Fix component.json.
+* Remove the gray background color from active links in IE 10.
+
+=== 2.1.2 (May 11, 2013)
+
+* Revert root `color` and `background` normalizations.
+
+=== 2.1.1 (April 8, 2013)
+
+* Normalize root `color` and `background` to counter the effects of system
+ color schemes.
+
+=== 2.1.0 (January 21, 2013)
+
+* Normalize `text-transform` for `button` and `select`.
+* Normalize `h1` margin when within HTML5 sectioning elements.
+* Normalize `hr` element.
+* Remove unnecessary `pre` styles.
+* Add `main` element to HTML5 display definitions.
+* Fix cursor style for disabled button `input`.
+
+=== 2.0.1 (August 20, 2012)
+
+* Remove stray IE 6/7 `inline-block` hack from HTML5 display settings.
+
+=== 2.0.0 (August 19, 2012)
+
+* Remove legacy browser form normalizations.
+* Remove all list normalizations.
+* Add `quotes` normalizations.
+* Remove all heading normalizations except `h1` font size.
+* Form elements automatically inherit `font-family` from ancestor.
+* Drop support for IE 6/7, Firefox < 4, and Safari < 5.
+
+=== 1.0.1 (August 19, 2012)
* Adjust `small` font size normalization.
-== 1.0.0 (August 14, 2012)
+=== 1.0.0 (August 14, 2012)
(Only the notable changes since public release)
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 000000000..abcbae257
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,177 @@
+# Contributing to normalize.css
+
+Please take a moment to review this document in order to make the contribution
+process easy and effective for everyone involved.
+
+Following these guidelines helps to communicate that you respect the time of
+the developers managing and developing this open source project. In return,
+they should reciprocate that respect in addressing your issue or assessing
+patches and features.
+
+
+## Using the issue tracker
+
+The issue tracker is the preferred channel for [bug reports](#bugs),
+[features requests](#features) and [submitting pull
+requests](#pull-requests), but please respect the following restrictions:
+
+* Please **do not** use the issue tracker for personal support requests.
+
+* Please **do not** derail or troll issues. Keep the discussion on topic and
+ respect the opinions of others.
+
+
+
+## Bug reports
+
+A bug is a _demonstrable problem_ that is caused by the code in the repository.
+Good bug reports are extremely helpful - thank you!
+
+Guidelines for bug reports:
+
+1. **Use the GitHub issue search** – check if the issue has already been
+ reported.
+
+2. **Check if the issue has been fixed** – try to reproduce it using the
+ latest `master` branch in the repository.
+
+3. **Isolate the problem** – create a live example (e.g., on
+ [Codepen](http://codepen.io)) of a [reduced test
+ case](http://css-tricks.com/6263-reduced-test-cases/).
+
+A good bug report shouldn't leave others needing to chase you up for more
+information. Please try to be as detailed as possible in your report. What is
+your environment? What steps will reproduce the issue? What browser(s) and OS
+experience the problem? What would you expect to be the outcome? All these
+details will help people to fix any potential bugs.
+
+Example:
+
+> Short and descriptive example bug report title
+>
+> A summary of the issue and the browser/OS environment in which it occurs. If
+> suitable, include the steps required to reproduce the bug.
+>
+> 1. This is the first step
+> 2. This is the second step
+> 3. Further steps, etc.
+>
+> `` - a link to the reduced test case
+>
+> Any other information you want to share that is relevant to the issue being
+> reported. This might include the lines of code that you have identified as
+> causing the bug, and potential solutions (and your opinions on their
+> merits).
+
+
+
+## Feature requests
+
+Feature requests are welcome. But take a moment to find out whether your idea
+fits with the scope and aims of the project. It's up to *you* to make a strong
+case to convince the project's developers of the merits of this feature. Please
+provide as much detail and context as possible.
+
+
+
+## Pull requests
+
+Good pull requests - patches, improvements, new features - are a fantastic
+help. They should remain focused in scope and avoid containing unrelated
+commits.
+
+**Please ask first** before embarking on any significant work, otherwise you
+risk spending a lot of time working on something that the project's developers
+might not want to merge into the project.
+
+Please adhere to the coding conventions used throughout a project (whitespace,
+accurate comments, etc.) and any other requirements (such as test coverage).
+
+Follow this process if you'd like your work considered for inclusion in the
+project:
+
+1. [Fork](http://help.github.com/fork-a-repo/) the project, clone your fork,
+ and configure the remotes:
+
+ ```bash
+ # Clone your fork of the repo into the current directory
+ git clone https://github.com//normalize.css
+ # Navigate to the newly cloned directory
+ cd normalize.css
+ # Assign the original repo to a remote called "upstream"
+ git remote add upstream https://github.com/necolas/normalize.css
+ ```
+
+2. If you cloned a while ago, get the latest changes from upstream:
+
+ ```bash
+ git checkout master
+ git pull upstream master
+ ```
+
+3. Never work directly on `master`. Create a new topic branch (off the latest
+ version of `master`) to contain your feature, change, or fix:
+
+ ```bash
+ git checkout -b
+ ```
+
+4. Commit your changes in logical chunks. Please adhere to these [git commit
+ message conventions](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html)
+ or your code is unlikely be merged into the main project. Use Git's
+ [interactive rebase](https://help.github.com/articles/interactive-rebase)
+ feature to tidy up your commits before making them public.
+
+ Make sure to add a test to the `test.html` file if appropriate, and test
+ your change in all supported browsers.
+
+5. Locally rebase the upstream development branch into your topic branch:
+
+ ```bash
+ git pull --rebase upstream master
+ ```
+
+6. Push your topic branch up to your fork:
+
+ ```bash
+ git push origin
+ ```
+
+10. [Open a Pull Request](https://help.github.com/articles/using-pull-requests/)
+ with a clear title and description.
+
+ Please submit a separate pull request for any appropriate changes required
+ in the `v1` branch for legacy browsers.
+
+**IMPORTANT**: By submitting a patch, you agree to allow the project owner to
+license your work under the same license as that used by the project.
+
+
+
+## Maintainers
+
+If you have commit access, please follow this process for merging patches and
+cutting new releases.
+
+### Accepting patches
+
+1. Check that a patch is within the scope and philosophy of the project.
+2. Check that a patch has any necessary tests and a proper, descriptive commit
+ message.
+3. Test the patch locally.
+4. Do not use GitHub's merge button. Apply the patch to `master` locally
+ (either via `git am` or by checking the whole branch out). Amend minor
+ problems with the author's original commit if necessary. Then push to GitHub.
+5. If a patch should be included in `v1`, cherry-pick the commits or manually
+ apply if all else fails.
+
+### Releasing a new version
+
+1. Include all new functional changes in the CHANGELOG.
+2. Use a dedicated commit to increment the version. The version needs to be
+ added to the CHANGELOG (inc. date), and the `bower.json`, `component.json`,
+ and `normalize.css` files.
+3. The commit message must be of `v0.0.0` format.
+4. Create an annotated tag for the version: `git tag -m "v0.0.0" 0.0.0`.
+5. Push the changes and tags to GitHub: `git push --tags origin master`
+6. Checkout the `gh-pages` branch and follow the instructions in the README.
diff --git a/README.md b/README.md
index 589a3c3ed..cccbf96d6 100644
--- a/README.md
+++ b/README.md
@@ -1,11 +1,26 @@
-# normalize.css v1.0.1
+# normalize.css v3
Normalize.css is a customisable CSS file that makes browsers render all
-elements more consistently and in line with modern standards. We researched the
-differences between default browser styles in order to precisely target only
-the styles that need normalizing.
+elements more consistently and in line with modern standards.
-[Check out the demo](http://necolas.github.com/normalize.css/1.0.1/test.html)
+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](http://necolas.github.io/normalize.css/latest/test.html)
+
+## Install
+
+* [npm](http://npmjs.org/): `npm install --save normalize.css`
+* [Component(1)](https://github.com/component/component/): `component install necolas/normalize.css`
+* [Bower](http://bower.io/): `bower install --save normalize.css`
+* [cdnjs](https://cdnjs.com/libraries/normalize)
+* [Download](http://necolas.github.io/normalize.css/latest/normalize.css).
+
+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?
@@ -15,28 +30,61 @@ the styles that need normalizing.
* Improves usability with subtle improvements.
* Explains what code does using detailed comments.
-## How to use it
+## Browser support
-Normalize.css is intended to be used as an alternative to CSS resets.
+* Google Chrome (latest)
+* Mozilla Firefox (latest)
+* Mozilla Firefox ESR
+* Opera (latest)
+* Apple Safari 6+
+* Internet Explorer 8+
-It's suggested that you read the `normalize.css` file and consider customising
-it to meet your needs. Alternatively, include the file in your project and
-override the defaults later in your CSS.
+[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.
-## Browser support
+## 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 preformated text. The duplication of `monospace` is
+intentional. [Source](http://en.wikipedia.org/wiki/User:Davidgothberg/Test59).
+
+#### `sub, sup`
+
+Normally, using `sub` or `sup` affects the line-box height of text in all
+browsers. [Source](http://gist.github.com/413930).
+
+#### `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](http://lists.w3.org/Archives/Public/public-svg-wg/2008JulSep/0339.html)
+
+#### `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`
-* Google Chrome
-* Mozilla Firefox 3+
-* Apple Safari 4+
-* Opera 10+
-* Internet Explorer 6+
+Adding `border: 0` corrects an IE 8–11 bug where `color` (yes, `color`) is not
+inherited by `legend`.
-## Contribute
+## Contributing
-Please read my [issue
-guidelines](https://github.com/necolas/issue-guidelines).
+Please read the CONTRIBUTING.md
## Acknowledgements
-Normalize.css is a project by [Nicolas Gallagher](http://github.com/necolas)
-and [Jonathan Neal](http://github.com/jonathantneal).
+Normalize.css is a project by [Nicolas Gallagher](https://github.com/necolas),
+co-created with [Jonathan Neal](https://github.com/jonathantneal).
diff --git a/bower.json b/bower.json
new file mode 100644
index 000000000..44f2ee2b5
--- /dev/null
+++ b/bower.json
@@ -0,0 +1,13 @@
+{
+ "name": "normalize-css",
+ "version": "3.0.3",
+ "main": "normalize.css",
+ "author": "Nicolas Gallagher",
+ "ignore": [
+ "CHANGELOG.md",
+ "CONTRIBUTING.md",
+ "component.json",
+ "package.json",
+ "test.html"
+ ]
+}
diff --git a/component.json b/component.json
index 3d6f9739a..82e70d50b 100644
--- a/component.json
+++ b/component.json
@@ -1,14 +1,8 @@
{
- "name": "normalize-css",
- "version": "1.0.1",
- "author": "Nicolas Gallagher",
- "homepage": "http://necolas.github.com/normalize.css",
- "repository": {
- "type": "git",
- "url": "https://github.com/necolas/normalize.css.git"
- },
- "licenses": [{
- "type": "MIT",
- "url": "http://opensource.org/licenses/MIT"
- }]
+ "name": "normalize.css",
+ "repo": "necolas/normalize.css",
+ "version": "3.0.3",
+ "styles": ["normalize.css"],
+ "author": "Nicolas Gallagher",
+ "license": "MIT"
}
diff --git a/normalize.css b/normalize.css
index d4210aac2..5e5e3c898 100644
--- a/normalize.css
+++ b/normalize.css
@@ -1,11 +1,33 @@
-/*! normalize.css v1.0.1 | MIT License | git.io/normalize */
+/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
-/* ==========================================================================
- HTML5 display definitions
+/**
+ * 1. Set default font family to sans-serif.
+ * 2. Prevent iOS and IE text size adjust after device orientation change,
+ * without disabling user zoom.
+ */
+
+html {
+ font-family: sans-serif; /* 1 */
+ -ms-text-size-adjust: 100%; /* 2 */
+ -webkit-text-size-adjust: 100%; /* 2 */
+}
+
+/**
+ * Remove default margin.
+ */
+
+body {
+ margin: 0;
+}
+
+/* HTML5 display definitions
========================================================================== */
-/*
- * Corrects `block` display not defined in IE 6/7/8/9 and Firefox 3.
+/**
+ * Correct `block` display not defined for any HTML5 element in IE 8/9.
+ * Correct `block` display not defined for `details` or `summary` in IE 10/11
+ * and Firefox.
+ * Correct `block` display not defined for `main` in IE 11.
*/
article,
@@ -16,489 +38,387 @@ figure,
footer,
header,
hgroup,
+main,
+menu,
nav,
section,
summary {
- display: block;
+ display: block;
}
-/*
- * Corrects `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
+/**
+ * 1. Correct `inline-block` display not defined in IE 8/9.
+ * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
*/
audio,
canvas,
+progress,
video {
- display: inline-block;
- *display: inline;
- *zoom: 1;
+ display: inline-block; /* 1 */
+ vertical-align: baseline; /* 2 */
}
-/*
- * Prevents modern browsers from displaying `audio` without controls.
+/**
+ * Prevent modern browsers from displaying `audio` without controls.
* Remove excess height in iOS 5 devices.
*/
audio:not([controls]) {
- display: none;
- height: 0;
-}
-
-/*
- * Addresses styling for `hidden` attribute not present in IE 7/8/9, Firefox 3,
- * and Safari 4.
- * Known issue: no IE 6 support.
- */
-
-[hidden] {
- display: none;
-}
-
-/* ==========================================================================
- Base
- ========================================================================== */
-
-/*
- * 1. Corrects text resizing oddly in IE 6/7 when body `font-size` is set using
- * `em` units.
- * 2. Prevents iOS text size adjust after orientation change, without disabling
- * user zoom.
- */
-
-html {
- font-size: 100%; /* 1 */
- -webkit-text-size-adjust: 100%; /* 2 */
- -ms-text-size-adjust: 100%; /* 2 */
-}
-
-/*
- * Addresses `font-family` inconsistency between `textarea` and other form
- * elements.
- */
-
-html,
-button,
-input,
-select,
-textarea {
- font-family: sans-serif;
+ display: none;
+ height: 0;
}
-/*
- * Addresses margins handled incorrectly in IE 6/7.
+/**
+ * Address `[hidden]` styling not present in IE 8/9/10.
+ * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
*/
-body {
- margin: 0;
+[hidden],
+template {
+ display: none;
}
-/* ==========================================================================
- Links
+/* Links
========================================================================== */
-/*
- * Addresses `outline` inconsistency between Chrome and other browsers.
+/**
+ * Remove the gray background color from active links in IE 10.
*/
-a:focus {
- outline: thin dotted;
+a {
+ background-color: transparent;
}
-/*
- * Improves readability when focused and also mouse hovered in all browsers.
+/**
+ * Improve readability of focused elements when they are also in an
+ * active/hover state.
*/
a:active,
a:hover {
- outline: 0;
+ outline: 0;
}
-/* ==========================================================================
- Typography
+/* Text-level semantics
========================================================================== */
-/*
- * Addresses font sizes and margins set differently in IE 6/7.
- * Addresses font sizes within `section` and `article` in Firefox 4+, Safari 5,
- * and Chrome.
- */
-
-h1 {
- font-size: 2em;
- margin: 0.67em 0;
-}
-
-h2 {
- font-size: 1.5em;
- margin: 0.83em 0;
-}
-
-h3 {
- font-size: 1.17em;
- margin: 1em 0;
-}
-
-h4 {
- font-size: 1em;
- margin: 1.33em 0;
-}
-
-h5 {
- font-size: 0.83em;
- margin: 1.67em 0;
-}
-
-h6 {
- font-size: 0.75em;
- margin: 2.33em 0;
-}
-
-/*
- * Addresses styling not present in IE 7/8/9, Safari 5, and Chrome.
+/**
+ * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
*/
abbr[title] {
- border-bottom: 1px dotted;
+ border-bottom: 1px dotted;
}
-/*
- * Addresses style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome.
+/**
+ * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
*/
b,
strong {
- font-weight: bold;
-}
-
-blockquote {
- margin: 1em 40px;
+ font-weight: bold;
}
-/*
- * Addresses styling not present in Safari 5 and Chrome.
+/**
+ * Address styling not present in Safari and Chrome.
*/
dfn {
- font-style: italic;
-}
-
-/*
- * Addresses styling not present in IE 6/7/8/9.
- */
-
-mark {
- background: #ff0;
- color: #000;
-}
-
-/*
- * Addresses margins set differently in IE 6/7.
- */
-
-p,
-pre {
- margin: 1em 0;
-}
-
-/*
- * Corrects font family set oddly in IE 6, Safari 4/5, and Chrome.
- */
-
-code,
-kbd,
-pre,
-samp {
- font-family: monospace, serif;
- _font-family: 'courier new', monospace;
- font-size: 1em;
-}
-
-/*
- * Improves readability of pre-formatted text in all browsers.
- */
-
-pre {
- white-space: pre;
- white-space: pre-wrap;
- word-wrap: break-word;
+ font-style: italic;
}
-/*
- * Addresses CSS quotes not supported in IE 6/7.
+/**
+ * Address variable `h1` font-size and margin within `section` and `article`
+ * contexts in Firefox 4+, Safari, and Chrome.
*/
-q {
- quotes: none;
+h1 {
+ font-size: 2em;
+ margin: 0.67em 0;
}
-/*
- * Addresses `quotes` property not supported in Safari 4.
+/**
+ * Address styling not present in IE 8/9.
*/
-q:before,
-q:after {
- content: '';
- content: none;
+mark {
+ background: #ff0;
+ color: #000;
}
-/*
- * Addresses inconsistent and variable font size in all browsers.
+/**
+ * Address inconsistent and variable font size in all browsers.
*/
small {
- font-size: 80%;
+ font-size: 80%;
}
-/*
- * Prevents `sub` and `sup` affecting `line-height` in all browsers.
+/**
+ * Prevent `sub` and `sup` affecting `line-height` in all browsers.
*/
sub,
sup {
- font-size: 75%;
- line-height: 0;
- position: relative;
- vertical-align: baseline;
+ font-size: 75%;
+ line-height: 0;
+ position: relative;
+ vertical-align: baseline;
}
sup {
- top: -0.5em;
+ top: -0.5em;
}
sub {
- bottom: -0.25em;
-}
-
-/* ==========================================================================
- Lists
- ========================================================================== */
-
-/*
- * Addresses margins set differently in IE 6/7.
- */
-
-dl,
-menu,
-ol,
-ul {
- margin: 1em 0;
-}
-
-dd {
- margin: 0 0 0 40px;
-}
-
-/*
- * Addresses paddings set differently in IE 6/7.
- */
-
-menu,
-ol,
-ul {
- padding: 0 0 0 40px;
-}
-
-/*
- * Corrects list images handled incorrectly in IE 7.
- */
-
-nav ul,
-nav ol {
- list-style: none;
- list-style-image: none;
+ bottom: -0.25em;
}
-/* ==========================================================================
- Embedded content
+/* Embedded content
========================================================================== */
-/*
- * 1. Removes border when inside `a` element in IE 6/7/8/9 and Firefox 3.
- * 2. Improves image quality when scaled in IE 7.
+/**
+ * Remove border when inside `a` element in IE 8/9/10.
*/
img {
- border: 0; /* 1 */
- -ms-interpolation-mode: bicubic; /* 2 */
+ border: 0;
}
-/*
- * Corrects overflow displayed oddly in IE 9.
+/**
+ * Correct overflow not hidden in IE 9/10/11.
*/
svg:not(:root) {
- overflow: hidden;
+ overflow: hidden;
}
-/* ==========================================================================
- Figures
+/* Grouping content
========================================================================== */
-/*
- * Addresses margin not present in IE 6/7/8/9, Safari 5, and Opera 11.
+/**
+ * Address margin not present in IE 8/9 and Safari.
*/
figure {
- margin: 0;
+ margin: 1em 40px;
}
-/* ==========================================================================
- Forms
- ========================================================================== */
-
-/*
- * Corrects margin displayed oddly in IE 6/7.
+/**
+ * Address differences between Firefox and other browsers.
*/
-form {
- margin: 0;
+hr {
+ box-sizing: content-box;
+ height: 0;
}
-/*
- * Define consistent border, margin, and padding.
+/**
+ * Contain overflow in all browsers.
*/
-fieldset {
- border: 1px solid #c0c0c0;
- margin: 0 2px;
- padding: 0.35em 0.625em 0.75em;
+pre {
+ overflow: auto;
}
-/*
- * 1. Corrects color not being inherited in IE 6/7/8/9.
- * 2. Corrects text not wrapping in Firefox 3.
- * 3. Corrects alignment displayed oddly in IE 6/7.
+/**
+ * Address odd `em`-unit font size rendering in all browsers.
*/
-legend {
- border: 0; /* 1 */
- padding: 0;
- white-space: normal; /* 2 */
- *margin-left: -7px; /* 3 */
+code,
+kbd,
+pre,
+samp {
+ font-family: monospace, monospace;
+ font-size: 1em;
}
-/*
- * 1. Corrects font size not being inherited in all browsers.
- * 2. Addresses margins set differently in IE 6/7, Firefox 3+, Safari 5,
- * and Chrome.
- * 3. Improves appearance and consistency in all browsers.
+/* Forms
+ ========================================================================== */
+
+/**
+ * Known limitation: by default, Chrome and Safari on OS X allow very limited
+ * styling of `select`, unless a `border` property is set.
+ */
+
+/**
+ * 1. Correct color not being inherited.
+ * Known issue: affects color of disabled elements.
+ * 2. Correct font properties not being inherited.
+ * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
*/
button,
input,
+optgroup,
select,
textarea {
- font-size: 100%; /* 1 */
- margin: 0; /* 2 */
- vertical-align: baseline; /* 3 */
- *vertical-align: middle; /* 3 */
+ color: inherit; /* 1 */
+ font: inherit; /* 2 */
+ margin: 0; /* 3 */
}
-/*
- * Addresses Firefox 3+ setting `line-height` on `input` using `!important` in
- * the UA stylesheet.
+/**
+ * Address `overflow` set to `hidden` in IE 8/9/10/11.
+ */
+
+button {
+ overflow: visible;
+}
+
+/**
+ * Address inconsistent `text-transform` inheritance for `button` and `select`.
+ * All other form control elements do not inherit `text-transform` values.
+ * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
+ * Correct `select` style inheritance in Firefox.
*/
button,
-input {
- line-height: normal;
+select {
+ text-transform: none;
}
-/*
+/**
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
* and `video` controls.
- * 2. Corrects inability to style clickable `input` types in iOS.
- * 3. Improves usability and consistency of cursor style between image-type
+ * 2. Correct inability to style clickable `input` types in iOS.
+ * 3. Improve usability and consistency of cursor style between image-type
* `input` and others.
- * 4. Removes inner spacing in IE 7 without affecting normal text inputs.
- * Known issue: inner spacing remains in IE 6.
*/
button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
- -webkit-appearance: button; /* 2 */
- cursor: pointer; /* 3 */
- *overflow: visible; /* 4 */
+ -webkit-appearance: button; /* 2 */
+ cursor: pointer; /* 3 */
}
-/*
+/**
* Re-set default cursor for disabled elements.
*/
button[disabled],
-input[disabled] {
- cursor: default;
+html input[disabled] {
+ cursor: default;
+}
+
+/**
+ * Remove inner padding and border in Firefox 4+.
+ */
+
+button::-moz-focus-inner,
+input::-moz-focus-inner {
+ border: 0;
+ padding: 0;
}
-/*
- * 1. Addresses box sizing set to content-box in IE 8/9.
- * 2. Removes excess padding in IE 8/9.
- * 3. Removes excess padding in IE 7.
- * Known issue: excess padding remains in IE 6.
+/**
+ * Address Firefox 4+ setting `line-height` on `input` using `!important` in
+ * the UA stylesheet.
+ */
+
+input {
+ line-height: normal;
+}
+
+/**
+ * It's recommended that you don't attempt to style these elements.
+ * Firefox's implementation doesn't respect box-sizing, padding, or width.
+ *
+ * 1. Address box sizing set to `content-box` in IE 8/9/10.
+ * 2. Remove excess padding in IE 8/9/10.
*/
input[type="checkbox"],
input[type="radio"] {
- box-sizing: border-box; /* 1 */
- padding: 0; /* 2 */
- *height: 13px; /* 3 */
- *width: 13px; /* 3 */
+ box-sizing: border-box; /* 1 */
+ padding: 0; /* 2 */
}
-/*
- * 1. Addresses `appearance` set to `searchfield` in Safari 5 and Chrome.
- * 2. Addresses `box-sizing` set to `border-box` in Safari 5 and Chrome
- * (include `-moz` to future-proof).
+/**
+ * Fix the cursor style for Chrome's increment/decrement buttons. For certain
+ * `font-size` values of the `input`, it causes the cursor style of the
+ * decrement button to change from `default` to `text`.
+ */
+
+input[type="number"]::-webkit-inner-spin-button,
+input[type="number"]::-webkit-outer-spin-button {
+ height: auto;
+}
+
+/**
+ * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
+ * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
*/
input[type="search"] {
- -webkit-appearance: textfield; /* 1 */
- -moz-box-sizing: content-box;
- -webkit-box-sizing: content-box; /* 2 */
- box-sizing: content-box;
+ -webkit-appearance: textfield; /* 1 */
+ box-sizing: content-box; /* 2 */
}
-/*
- * Removes inner padding and search cancel button in Safari 5 and Chrome
- * on OS X.
+/**
+ * Remove inner padding and search cancel button in Safari and Chrome on OS X.
+ * Safari (but not Chrome) clips the cancel button when the search input has
+ * padding (and `textfield` appearance).
*/
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
- -webkit-appearance: none;
+ -webkit-appearance: none;
}
-/*
- * Removes inner padding and border in Firefox 3+.
+/**
+ * Define consistent border, margin, and padding.
*/
-button::-moz-focus-inner,
-input::-moz-focus-inner {
- border: 0;
- padding: 0;
+fieldset {
+ border: 1px solid #c0c0c0;
+ margin: 0 2px;
+ padding: 0.35em 0.625em 0.75em;
}
-/*
- * 1. Removes default vertical scrollbar in IE 6/7/8/9.
- * 2. Improves readability and alignment in all browsers.
+/**
+ * 1. Correct `color` not being inherited in IE 8/9/10/11.
+ * 2. Remove padding so people aren't caught out if they zero out fieldsets.
+ */
+
+legend {
+ border: 0; /* 1 */
+ padding: 0; /* 2 */
+}
+
+/**
+ * Remove default vertical scrollbar in IE 8/9/10/11.
*/
textarea {
- overflow: auto; /* 1 */
- vertical-align: top; /* 2 */
+ overflow: auto;
+}
+
+/**
+ * Don't inherit the `font-weight` (applied by a rule above).
+ * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
+ */
+
+optgroup {
+ font-weight: bold;
}
-/* ==========================================================================
- Tables
+/* Tables
========================================================================== */
-/*
+/**
* Remove most spacing between table cells.
*/
table {
- border-collapse: collapse;
- border-spacing: 0;
+ border-collapse: collapse;
+ border-spacing: 0;
+}
+
+td,
+th {
+ padding: 0;
}
diff --git a/package.json b/package.json
new file mode 100644
index 000000000..b6c26d298
--- /dev/null
+++ b/package.json
@@ -0,0 +1,18 @@
+{
+ "name": "normalize.css",
+ "version": "3.0.3",
+ "description": "Normalize.css as a node packaged module",
+ "style": "normalize.css",
+ "files": [
+ "LICENSE.md",
+ "normalize.css"
+ ],
+ "homepage": "http://necolas.github.io/normalize.css",
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/necolas/normalize.css.git"
+ },
+ "main": "normalize.css",
+ "author": "Nicolas Gallagher",
+ "license": "MIT"
+}
diff --git a/test.html b/test.html
index 750e5470d..e0e96e10d 100644
--- a/test.html
+++ b/test.html
@@ -1,350 +1,515 @@
-
-
-
- Normalize CSS
-
-
-
-
-
-
Heading 1
-
Heading 2
-
Heading 3
-
Heading 4
-
Heading 5
-
Heading 6
-
-
-
Heading 1 (in section)
-
Heading 2 (in section)
-
Heading 3 (in section)
-
Heading 4 (in section)
-
Heading 5 (in section)
-
Heading 6 (in section)
-
-
-
-
Heading 1 (in article)
-
Heading 2 (in article)
-
Heading 3 (in article)
-
Heading 4 (in article)
-
Heading 5 (in article)
-
Heading 6 (in article)
-
-
-
-
-
Heading 1 (in hgroup)
-
Heading 2 (in hgroup)
-
-
-
-
-
Text-level semantics
-
-
This should be hidden in all browsers, apart from IE6
-
-
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et m. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et m. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et m.
-
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et m. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et m. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et m.
-
- Address: somewhere, world
-
-
- The a element example
- The abbr element and abbr element with title examples
- The b element example
- The cite element example
- The code element example
- The del element example
- The dfn element and dfn element with title examples
- The em element example
- The i element example
- The img element example
- The ins element example
- The kbd element example
- The mark element example
- The q element inside a q element example
- The s element example
- The samp element example
- The small element example
- The span element example
- The strong element example
- The sub element example
- The sup element example
- The u element example
- The var element example
-
-
-
Embedded content
-
-
audio
-
-
-
-
-
img
-
-
-
-
-
svg
-
-
-
-
video
-
-
-
-
-
Interactive content
-
-
details / summary
-
- More info
-
Additional information
-
-
Point 1
-
Point 2
-
-
-
-
Grouping content
-
-
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et m.
-
-
pre
-
-
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et me.