From 2789f8d0afd09355dad6abb0bea98aab0be13a4b Mon Sep 17 00:00:00 2001 From: Thomas Hooper Date: Tue, 1 Dec 2015 17:32:50 +0000 Subject: [PATCH 001/119] Replace lost button and input focus style Fix #481 --- normalize.css | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/normalize.css b/normalize.css index 5e5e3c898..a5cee0140 100644 --- a/normalize.css +++ b/normalize.css @@ -314,6 +314,15 @@ input::-moz-focus-inner { padding: 0; } +/** + * Replace focus style removed in the border reset above + */ + +button:-moz-focusring, +input:-moz-focusring { + outline: 1px dotted ButtonText; +} + /** * Address Firefox 4+ setting `line-height` on `input` using `!important` in * the UA stylesheet. From 72a77f0316ff55c9a68af22741ca37a1cccb09c4 Mon Sep 17 00:00:00 2001 From: John Date: Sun, 20 Dec 2015 18:53:20 +0200 Subject: [PATCH 002/119] Fix typo in README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index cccbf96d6..9dc0ac0e1 100644 --- a/README.md +++ b/README.md @@ -50,7 +50,7 @@ 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 +of font-size for preformatted text. The duplication of `monospace` is intentional. [Source](http://en.wikipedia.org/wiki/User:Davidgothberg/Test59). #### `sub, sup` From 2f8e4748ac94c90e2f1814e5d582993e7a900a02 Mon Sep 17 00:00:00 2001 From: Nicolas Gallagher Date: Mon, 4 Jan 2016 21:24:59 -0800 Subject: [PATCH 003/119] Remove 'hgroup' Fix #472 Close #474 --- normalize.css | 1 - 1 file changed, 1 deletion(-) diff --git a/normalize.css b/normalize.css index 5e5e3c898..6af74add7 100644 --- a/normalize.css +++ b/normalize.css @@ -37,7 +37,6 @@ figcaption, figure, footer, header, -hgroup, main, menu, nav, From 8cfa3e765e0cb55c174657e412430424a9fee97a Mon Sep 17 00:00:00 2001 From: Nicolas Gallagher Date: Mon, 4 Jan 2016 21:27:41 -0800 Subject: [PATCH 004/119] Remove Bower and Component(1) files Close #455 --- CONTRIBUTING.md | 4 ++-- README.md | 2 -- bower.json | 13 ------------- component.json | 8 -------- 4 files changed, 2 insertions(+), 25 deletions(-) delete mode 100644 bower.json delete mode 100644 component.json diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index abcbae257..30fa608eb 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -169,8 +169,8 @@ cutting new releases. 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. + added to the CHANGELOG (inc. date), the `package.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` diff --git a/README.md b/README.md index 9dc0ac0e1..b00ea8f2f 100644 --- a/README.md +++ b/README.md @@ -12,8 +12,6 @@ normalizing. ## 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). diff --git a/bower.json b/bower.json deleted file mode 100644 index 44f2ee2b5..000000000 --- a/bower.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "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 deleted file mode 100644 index 82e70d50b..000000000 --- a/component.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "name": "normalize.css", - "repo": "necolas/normalize.css", - "version": "3.0.3", - "styles": ["normalize.css"], - "author": "Nicolas Gallagher", - "license": "MIT" -} From 64de79a543546eaba548eed9d2be20986857a0e8 Mon Sep 17 00:00:00 2001 From: battaglr Date: Thu, 2 Apr 2015 03:27:11 -0300 Subject: [PATCH 005/119] Add link to contribution guidelines Makes it easier to jump to the contribution guidelines while reading the readme. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b00ea8f2f..8f7cc876a 100644 --- a/README.md +++ b/README.md @@ -80,7 +80,7 @@ inherited by `legend`. ## Contributing -Please read the CONTRIBUTING.md +Please read the [contribution guidelines](CONTRIBUTING.md). ## Acknowledgements From fe567632afcf8afcf17925ab2a507ed87504cce8 Mon Sep 17 00:00:00 2001 From: "Patrick H. Lauke" Date: Wed, 6 Jan 2016 10:11:41 +0000 Subject: [PATCH 006/119] Remove box-sizing for input[type="search"] This normalizes the CSS to what the suggested default browser CSS should be, which is now implemented in IE11, Edge, Blink, WebKit and Gecko (for the latter, see https://www.w3.org/Bugs/Public/show_bug.cgi?id=28784) References twbs/bootstrap#17379 Closes #471 --- normalize.css | 6 ++---- test.html | 6 ------ 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/normalize.css b/normalize.css index 6af74add7..74052f483 100644 --- a/normalize.css +++ b/normalize.css @@ -348,13 +348,11 @@ input[type="number"]::-webkit-outer-spin-button { } /** - * 1. Address `appearance` set to `searchfield` in Safari and Chrome. - * 2. Address `box-sizing` set to `border-box` in Safari and Chrome. + * Address `appearance` set to `searchfield` in Safari and Chrome. */ input[type="search"] { - -webkit-appearance: textfield; /* 1 */ - box-sizing: content-box; /* 2 */ + -webkit-appearance: textfield; } /** diff --git a/test.html b/test.html index e0e96e10d..c33eff1af 100644 --- a/test.html +++ b/test.html @@ -429,12 +429,6 @@

should be styleable

-

should have a content-box box model

-
-
- -
-

should not have a cancel button in Safari or Chrome

From bb55babbd1fc484861398692db06d62a495c8e7d Mon Sep 17 00:00:00 2001 From: Paul Radzkov Date: Thu, 12 Jun 2014 00:40:23 +0300 Subject: [PATCH 007/119] Address inconsistent styling of b and strong --- CHANGELOG.md | 2 ++ normalize.css | 11 +++++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index aaa7a8f6a..f62888e6a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,7 @@ === HEAD +* Address inconsistent styling of b and strong. + === 3.0.3 (March 30, 2015) * Remove unnecessary vendor prefixes. diff --git a/normalize.css b/normalize.css index 74052f483..2eee4fbb8 100644 --- a/normalize.css +++ b/normalize.css @@ -111,12 +111,19 @@ abbr[title] { } /** - * Address style set to `bolder` in Firefox 4+, Safari, and Chrome. + * Address inconsistent styling of b and strong. + * 1. Correct duplicate application of `bolder` in Safari 6.0.2. + * 2. Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+. */ b, strong { - font-weight: bold; + font-weight: inherit; /* 1 */ +} + +b, +strong { + font-weight: bolder; /* 2 */ } /** From 46e3e0554c7b81fbfa5cfa1d1531e63f860bb741 Mon Sep 17 00:00:00 2001 From: James Nowland Date: Mon, 1 Dec 2014 15:56:54 +1100 Subject: [PATCH 008/119] Normalize `hr` overflow Address IE 8,9,10,11 setting overflow to hidden. --- CHANGELOG.md | 1 + normalize.css | 9 ++++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f62888e6a..9030498b8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,7 @@ === HEAD * Address inconsistent styling of b and strong. +* Correct `hr` overflow in IE 8/9/10/11 and Edge 12. === 3.0.3 (March 30, 2015) diff --git a/normalize.css b/normalize.css index 2eee4fbb8..e3061d469 100644 --- a/normalize.css +++ b/normalize.css @@ -212,12 +212,15 @@ figure { } /** - * Address differences between Firefox and other browsers. + * Address inconsistent styling of `hr`. + * 1. Correct `box-sizing` set to `border-box` in Firefox. + * 2. Correct `overflow` set to `hidden` in IE 8/9/10/11 and Edge 12. */ hr { - box-sizing: content-box; - height: 0; + box-sizing: content-box; /* 1 */ + height: 0; /* 1 */ + overflow: visible; /* 2 */ } /** From 5973b6a6e8ff03d23e0a178e4c59ba8a7989a26d Mon Sep 17 00:00:00 2001 From: Dominic Magnifico Date: Thu, 21 Jan 2016 21:59:13 -0700 Subject: [PATCH 009/119] Ensure long-hand background declaration usage for consistency. --- CHANGELOG.md | 1 + normalize.css | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9030498b8..f192b5a08 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,7 @@ * Address inconsistent styling of b and strong. * Correct `hr` overflow in IE 8/9/10/11 and Edge 12. +* Ensure `mark` long-hand background declaration usage. === 3.0.3 (March 30, 2015) diff --git a/normalize.css b/normalize.css index e3061d469..9cd1fb2af 100644 --- a/normalize.css +++ b/normalize.css @@ -149,7 +149,7 @@ h1 { */ mark { - background: #ff0; + background-color: #ff0; color: #000; } From b5ffb63df1956220d79d3a56d88d8b934d99febe Mon Sep 17 00:00:00 2001 From: Dominic Magnifico Date: Thu, 21 Jan 2016 23:50:18 -0700 Subject: [PATCH 010/119] Remove color inheritance for button, input, optgroup, select and textarea elements. Color inheritance here causes possible usability issues when working on black backgrounds with white text. Addresses #349 and #339. --- normalize.css | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/normalize.css b/normalize.css index 9cd1fb2af..ae781439d 100644 --- a/normalize.css +++ b/normalize.css @@ -252,10 +252,8 @@ samp { */ /** - * 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. + * 1. Correct font properties not being inherited. + * 2. Address margins set differently in Firefox 4+, Safari, and Chrome. */ button, @@ -263,9 +261,8 @@ input, optgroup, select, textarea { - color: inherit; /* 1 */ - font: inherit; /* 2 */ - margin: 0; /* 3 */ + font: inherit; /* 1 */ + margin: 0; /* 2 */ } /** From faf5abcb3f397c1ae1e74d57283313adfb097918 Mon Sep 17 00:00:00 2001 From: Dominic Magnifico Date: Thu, 21 Jan 2016 23:51:06 -0700 Subject: [PATCH 011/119] Remove unnecessary color inheritance test now that it has been removed from form elements. --- test.html | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/test.html b/test.html index c33eff1af..ab5efdb67 100644 --- a/test.html +++ b/test.html @@ -258,18 +258,6 @@

should render em-unit preformatted text at the

button, input, optgroup, select, textarea

-

should inherit color from ancestor

-
-
-
-
- -

should inherit font from ancestor


From a3531ef27b26719dccfbec33890f2a067fdb830e Mon Sep 17 00:00:00 2001 From: Jonathan Neal Date: Fri, 22 Jan 2016 20:52:37 -0500 Subject: [PATCH 012/119] Update CHANGELOG.md for color inheritence change --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index f192b5a08..61be4dcca 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ * Address inconsistent styling of b and strong. * Correct `hr` overflow in IE 8/9/10/11 and Edge 12. * Ensure `mark` long-hand background declaration usage. +* Remove color inheritance from form controls. === 3.0.3 (March 30, 2015) From 5304c784ffbd03da265fcbf7bf49f6964cbcfc9c Mon Sep 17 00:00:00 2001 From: Kaz Nishimura Date: Sun, 16 Aug 2015 10:24:32 +0900 Subject: [PATCH 013/119] Address inconsistent styling of abbr[title] --- CHANGELOG.md | 1 + normalize.css | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 61be4dcca..7797fe659 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ * Correct `hr` overflow in IE 8/9/10/11 and Edge 12. * Ensure `mark` long-hand background declaration usage. * Remove color inheritance from form controls. +* Address inconsistent styling of abbr[title]. === 3.0.3 (March 30, 2015) diff --git a/normalize.css b/normalize.css index ae781439d..6b7e885cf 100644 --- a/normalize.css +++ b/normalize.css @@ -103,11 +103,15 @@ a:hover { ========================================================================== */ /** - * Address styling not present in IE 8/9/10/11, Safari, and Chrome. + * Address inconsistent styling of `abbr[title]`. + * 1. Correct styling in Firefox 39 and Opera 12. + * 2. Correct missing styling in Chrome, Edge, IE, Opera, and Safari. */ abbr[title] { - border-bottom: 1px dotted; + border-bottom: none; /* 1 */ + text-decoration: underline; /* 2 */ + text-decoration: underline dotted; /* 2 */ } /** From 5daad010a2f19c12b89f317ba9d2c8e4573210d7 Mon Sep 17 00:00:00 2001 From: Fritz Lin Date: Sat, 7 Nov 2015 19:20:52 +0800 Subject: [PATCH 014/119] Add comment addressing intentional duplicated monospace font https://github.com/necolas/normalize.css/issues/480 https://github.com/necolas/normalize.css/blob/2bdda84272650aedfb45d8abe11a6d177933a803/README.md#pre-code-kbd-samp --- CHANGELOG.md | 1 + normalize.css | 7 ++++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7797fe659..70fe14955 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ * Ensure `mark` long-hand background declaration usage. * Remove color inheritance from form controls. * Address inconsistent styling of abbr[title]. +* Correct inheritance and scaling of font-size for preformatted text. === 3.0.3 (March 30, 2015) diff --git a/normalize.css b/normalize.css index 6b7e885cf..8debc1d49 100644 --- a/normalize.css +++ b/normalize.css @@ -236,15 +236,16 @@ pre { } /** - * Address odd `em`-unit font size rendering in all browsers. + * 1. Correct inheritance and scaling of font-size for preformatted text. + * 2. Address odd `em`-unit font size rendering in all browsers. */ code, kbd, pre, samp { - font-family: monospace, monospace; - font-size: 1em; + font-family: monospace, monospace; /* 1 */ + font-size: 1em; /* 2 */ } /* Forms From 65e14b86144144bb5486eac5cbd613afd8f4b86f Mon Sep 17 00:00:00 2001 From: Jonathan Neal Date: Wed, 3 Feb 2016 11:59:20 -0500 Subject: [PATCH 015/119] Update documentation and CHANGELOG.md --- CHANGELOG.md | 1 + normalize.css | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 70fe14955..759001f7d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ * Remove color inheritance from form controls. * Address inconsistent styling of abbr[title]. * Correct inheritance and scaling of font-size for preformatted text. +* Replace focus style removed in the border reset in Firefox 4+. === 3.0.3 (March 30, 2015) diff --git a/normalize.css b/normalize.css index d98f7783a..c2ce20cd6 100644 --- a/normalize.css +++ b/normalize.css @@ -326,7 +326,7 @@ input::-moz-focus-inner { } /** - * Replace focus style removed in the border reset above + * Restore focus style in Firefox 4+ (unset by a rule above) */ button:-moz-focusring, @@ -416,7 +416,7 @@ textarea { } /** - * Don't inherit the `font-weight` (applied by a rule above). + * Restore font weight (unset by a rule above). * NOTE: the default cannot safely be changed in Chrome and Safari on OS X. */ From 02c5c7adbbec1707900fde86068405735c733b42 Mon Sep 17 00:00:00 2001 From: Jonathan Neal Date: Wed, 3 Feb 2016 12:00:11 -0500 Subject: [PATCH 016/119] Remove opinionated table resets --- CHANGELOG.md | 1 + normalize.css | 17 ----------------- 2 files changed, 1 insertion(+), 17 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 759001f7d..ea49be831 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ * Address inconsistent styling of abbr[title]. * Correct inheritance and scaling of font-size for preformatted text. * Replace focus style removed in the border reset in Firefox 4+. +* Remove opinionated table resets. === 3.0.3 (March 30, 2015) diff --git a/normalize.css b/normalize.css index c2ce20cd6..be38d6b4f 100644 --- a/normalize.css +++ b/normalize.css @@ -423,20 +423,3 @@ textarea { optgroup { font-weight: bold; } - -/* Tables - ========================================================================== */ - -/** - * Remove most spacing between table cells. - */ - -table { - border-collapse: collapse; - border-spacing: 0; -} - -td, -th { - padding: 0; -} From 4813e51b35247ec619700b5cd433eee6c99435d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C4=83t=C4=83lin=20Mari=C8=99?= Date: Wed, 3 Feb 2016 19:11:03 +0200 Subject: [PATCH 017/119] Update `Browser support` section from `README.md` * Add Edge to the list. * For consistency, remove the company names. * Order the browser list alphabetically. --- README.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 8f7cc876a..ca643551a 100644 --- a/README.md +++ b/README.md @@ -30,12 +30,13 @@ library code. ## Browser support -* Google Chrome (latest) -* Mozilla Firefox (latest) -* Mozilla Firefox ESR -* Opera (latest) -* Apple Safari 6+ +* Chrome (latest) +* Edge (latest) +* Firefox (latest) +* Firefox ESR * Internet Explorer 8+ +* Opera (latest) +* Safari 6+ [Normalize.css v1 provides legacy browser support](https://github.com/necolas/normalize.css/tree/v1) (IE 6+, Safari 4+), From 21e0c54ec01538e2e95f4974cc6638f315820f5a Mon Sep 17 00:00:00 2001 From: Aleks Hudochenkov Date: Sat, 6 Feb 2016 00:18:41 +0300 Subject: [PATCH 018/119] Use Stylelint as a gatekeeper #508 --- .gitignore | 2 ++ .stylelintrc | 34 ++++++++++++++++++++++++++++++++++ package.json | 8 +++++++- 3 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 .gitignore create mode 100644 .stylelintrc diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..93f136199 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +node_modules +npm-debug.log diff --git a/.stylelintrc b/.stylelintrc new file mode 100644 index 000000000..64dead837 --- /dev/null +++ b/.stylelintrc @@ -0,0 +1,34 @@ +{ + "rules": { + "block-closing-brace-newline-after": "always", + "block-closing-brace-newline-before": "always", + "block-no-empty": true, + "block-opening-brace-newline-after": "always", + "block-opening-brace-space-before": "always", + "color-hex-case": "lower", + "color-hex-length": "short", + "color-no-invalid-hex": true, + "comment-empty-line-before": "always", + "comment-whitespace-inside": "always", + "declaration-block-no-single-line": true, + "declaration-block-semicolon-newline-after": "always", + "declaration-block-semicolon-space-before": "never", + "declaration-colon-space-after": "always", + "declaration-colon-space-before": "never", + "indentation": 2, + "max-empty-lines": 1, + "max-line-length": 80, + "no-eol-whitespace": true, + "no-missing-eof-newline": true, + "number-leading-zero": "always", + "number-no-trailing-zeros": true, + "rule-trailing-semicolon": "always", + "selector-combinator-space-after": "always", + "selector-combinator-space-before": "always", + "selector-list-comma-newline-after": "always", + "selector-list-comma-space-before": "never", + "string-quotes": "double", + "value-list-comma-space-after": "always", + "value-list-comma-space-before": "never" + } +} diff --git a/package.json b/package.json index b6c26d298..de7339260 100644 --- a/package.json +++ b/package.json @@ -14,5 +14,11 @@ }, "main": "normalize.css", "author": "Nicolas Gallagher", - "license": "MIT" + "license": "MIT", + "devDependencies": { + "stylelint": "^4.2.0" + }, + "scripts": { + "test": "stylelint normalize.css" + } } From 393c87ef6596e98200b3984993ab586f115a6466 Mon Sep 17 00:00:00 2001 From: Aleks Hudochenkov Date: Sat, 6 Feb 2016 00:27:19 +0300 Subject: [PATCH 019/119] Add Travis CI for linting #508 --- .travis.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 000000000..a4bb7b945 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,4 @@ +sudo: false +language: node_js +node_js: + - stable From 6605185b049b209f11a10deb2d115ddeac1d244b Mon Sep 17 00:00:00 2001 From: Aleks Hudochenkov Date: Sat, 6 Feb 2016 23:17:10 +0300 Subject: [PATCH 020/119] Specify browsers for displaying `audio` without controls issue --- normalize.css | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/normalize.css b/normalize.css index be38d6b4f..3a71d04c7 100644 --- a/normalize.css +++ b/normalize.css @@ -59,8 +59,7 @@ video { } /** - * Prevent modern browsers from displaying `audio` without controls. - * Remove excess height in iOS 5 devices. + * Prevent displaying `audio` without controls in Mobile Safari 4/5/6/7. */ audio:not([controls]) { From bc3dd58602c6968337b11ebd6a1dde044d43f974 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C4=83t=C4=83lin=20Mari=C8=99?= Date: Tue, 9 Feb 2016 12:27:29 +0200 Subject: [PATCH 021/119] 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 " --- .travis.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index a4bb7b945..833d09d14 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,4 +1,3 @@ -sudo: false language: node_js node_js: - stable From e66b004a430065ceeac25375a2be3337c870ce07 Mon Sep 17 00:00:00 2001 From: battaglr Date: Mon, 14 Mar 2016 19:58:28 -0300 Subject: [PATCH 022/119] Remove double space --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ca643551a..eacccb1f1 100644 --- a/README.md +++ b/README.md @@ -50,7 +50,7 @@ Additional detail and explanation of the esoteric parts of normalize.css. The `font-family: monospace, monospace` hack fixes the inheritance and scaling of font-size for preformatted text. The duplication of `monospace` is -intentional. [Source](http://en.wikipedia.org/wiki/User:Davidgothberg/Test59). +intentional. [Source](http://en.wikipedia.org/wiki/User:Davidgothberg/Test59). #### `sub, sup` From e6a0ce435db2ebcf3a3784ff1dae4bdb2c8b0b08 Mon Sep 17 00:00:00 2001 From: battaglr Date: Mon, 14 Mar 2016 19:58:46 -0300 Subject: [PATCH 023/119] Add Bower install details --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index eacccb1f1..1b4dc3cdc 100644 --- a/README.md +++ b/README.md @@ -12,6 +12,8 @@ normalizing. ## Install * [npm](http://npmjs.org/): `npm install --save normalize.css` +* [Bower](http://bower.io/): `bower install --save + https://github.com/necolas/normalize.css.git` * [cdnjs](https://cdnjs.com/libraries/normalize) * [Download](http://necolas.github.io/normalize.css/latest/normalize.css). From 60cadb0921606a6f76d05f3507bf98c68bf35297 Mon Sep 17 00:00:00 2001 From: battaglr Date: Mon, 14 Mar 2016 22:18:13 -0300 Subject: [PATCH 024/119] Mark opinionated declarations --- normalize.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/normalize.css b/normalize.css index 3a71d04c7..fdad6d946 100644 --- a/normalize.css +++ b/normalize.css @@ -1,7 +1,7 @@ /*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ /** - * 1. Set default font family to sans-serif. + * 1. Set default font family to sans-serif (opinionated). * 2. Prevent iOS and IE text size adjust after device orientation change, * without disabling user zoom. */ @@ -13,7 +13,7 @@ html { } /** - * Remove default margin. + * Remove default margin (opinionated). */ body { From 0542f0423f0c04010d797ad11b7d4aa950438710 Mon Sep 17 00:00:00 2001 From: battaglr Date: Mon, 14 Mar 2016 22:30:13 -0300 Subject: [PATCH 025/119] Use explicit `outline-width` property instead of `outline` --- normalize.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/normalize.css b/normalize.css index 3a71d04c7..8471ce6d1 100644 --- a/normalize.css +++ b/normalize.css @@ -90,12 +90,12 @@ a { /** * Improve readability of focused elements when they are also in an - * active/hover state. + * active/hover state (opinionated). */ a:active, a:hover { - outline: 0; + outline-width: 0; } /* Text-level semantics From 977827d56f4b1ec7d0750bc5fea426c2019c5cb9 Mon Sep 17 00:00:00 2001 From: Jonathan Neal Date: Tue, 15 Mar 2016 17:57:06 -0400 Subject: [PATCH 026/119] Use inherit to fix legend color Clarifies that the fix applies to within
--- normalize.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/normalize.css b/normalize.css index de6919150..ecec996ef 100644 --- a/normalize.css +++ b/normalize.css @@ -397,12 +397,12 @@ fieldset { } /** - * 1. Correct `color` not being inherited in IE 8/9/10/11. + * 1. Correct `color` not being inherited from fieldset in IE 8/9/10/11. * 2. Remove padding so people aren't caught out if they zero out fieldsets. */ legend { - border: 0; /* 1 */ + color: inherit; /* 1 */ padding: 0; /* 2 */ } From 53bd51a093c3e1385387a9bfe0028943da77ef9f Mon Sep 17 00:00:00 2001 From: Jonathan Neal Date: Wed, 16 Mar 2016 01:35:22 -0400 Subject: [PATCH 027/119] Remove unnecessary input line-height --- normalize.css | 9 --------- test.html | 6 ------ 2 files changed, 15 deletions(-) diff --git a/normalize.css b/normalize.css index ecec996ef..58a872443 100644 --- a/normalize.css +++ b/normalize.css @@ -333,15 +333,6 @@ input:-moz-focusring { outline: 1px dotted ButtonText; } -/** - * 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. diff --git a/test.html b/test.html index ab5efdb67..d5a0015f7 100644 --- a/test.html +++ b/test.html @@ -375,12 +375,6 @@

should not have extra inner padding in Firefox

-

input

-

should not inherit line-height

-
- -
-

input[type="checkbox"], input[type="radio"]

should have a border-box box model

From f19fc5bbe4732ac31e3ce0045c95f88135c27959 Mon Sep 17 00:00:00 2001 From: Jonathan Neal Date: Wed, 16 Mar 2016 00:59:20 -0400 Subject: [PATCH 028/119] Update the dfn support message --- normalize.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/normalize.css b/normalize.css index ecec996ef..e19d379ca 100644 --- a/normalize.css +++ b/normalize.css @@ -130,7 +130,7 @@ strong { } /** - * Address styling not present in Safari and Chrome. + * Address styling not present in Android < 4.4. */ dfn { From 500092a1812b0f041e3823e1d716d30ad2440d72 Mon Sep 17 00:00:00 2001 From: Jonathan Neal Date: Thu, 17 Mar 2016 10:55:40 -0400 Subject: [PATCH 029/119] Only normalize border-style on img --- normalize.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/normalize.css b/normalize.css index decb3250f..ae57050cc 100644 --- a/normalize.css +++ b/normalize.css @@ -188,11 +188,11 @@ sub { ========================================================================== */ /** - * Remove border when inside `a` element in IE 8/9/10. + * Correct border-style given when inside `a` element in IE 8/9/10. */ img { - border: 0; + border-style: none; } /** From cbdd0b1683304ab9132e572dc0a53f927f56d833 Mon Sep 17 00:00:00 2001 From: Jonathan Neal Date: Thu, 17 Mar 2016 21:33:55 -0400 Subject: [PATCH 030/119] Correct wrapping not present in IE8/9/10/11 and Edge 12/13 --- normalize.css | 13 +++++++++---- test.html | 6 ++++++ 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/normalize.css b/normalize.css index ae57050cc..49fcdecf1 100644 --- a/normalize.css +++ b/normalize.css @@ -388,13 +388,18 @@ fieldset { } /** - * 1. Correct `color` not being inherited from fieldset in IE 8/9/10/11. - * 2. Remove padding so people aren't caught out if they zero out fieldsets. + * 1. Correct wrapping not present in IE8/9/10/11 and Edge 12/13. + * 2. Correct `color` not being inherited from fieldset in IE 8/9/10/11. + * 3. Remove padding so people aren't caught out if they zero out fieldsets. */ legend { - color: inherit; /* 1 */ - padding: 0; /* 2 */ + box-sizing: border-box; /* 1 */ + color: inherit; /* 2 */ + display: table; /* 1 */ + max-width: 100%; /* 1 */ + padding: 0; /* 3 */ + white-space: normal; /* 1 */ } /** diff --git a/test.html b/test.html index d5a0015f7..db56a9ed8 100644 --- a/test.html +++ b/test.html @@ -437,6 +437,12 @@

should not have padding

legend
+

should wrap text

+
+
+ Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et me. +
+

textarea

should not have a scrollbar unless overflowing

From 9a3b1b32f460cdac60d934aad59cf498bd515d6e Mon Sep 17 00:00:00 2001 From: Jonathan Neal Date: Thu, 17 Mar 2016 23:57:16 -0400 Subject: [PATCH 031/119] Reduce selector weight of input types --- normalize.css | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/normalize.css b/normalize.css index ae57050cc..cabe6a8c5 100644 --- a/normalize.css +++ b/normalize.css @@ -298,9 +298,9 @@ select { */ button, -html input[type="button"], /* 1 */ -input[type="reset"], -input[type="submit"] { +html [type="button"], /* 1 */ +[type="reset"], +[type="submit"] { -webkit-appearance: button; /* 2 */ cursor: pointer; /* 3 */ } @@ -309,8 +309,8 @@ input[type="submit"] { * Re-set default cursor for disabled elements. */ -button[disabled], -html input[disabled] { +[disabled], +html [disabled] { cursor: default; } @@ -341,8 +341,8 @@ input:-moz-focusring { * 2. Remove excess padding in IE 8/9/10. */ -input[type="checkbox"], -input[type="radio"] { +[type="checkbox"], +[type="radio"] { box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ } @@ -353,8 +353,8 @@ input[type="radio"] { * decrement button to change from `default` to `text`. */ -input[type="number"]::-webkit-inner-spin-button, -input[type="number"]::-webkit-outer-spin-button { +[type="number"]::-webkit-inner-spin-button, +[type="number"]::-webkit-outer-spin-button { height: auto; } @@ -362,7 +362,7 @@ input[type="number"]::-webkit-outer-spin-button { * Address `appearance` set to `searchfield` in Safari and Chrome. */ -input[type="search"] { +[type="search"] { -webkit-appearance: textfield; } @@ -372,8 +372,8 @@ input[type="search"] { * padding (and `textfield` appearance). */ -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { +[type="search"]::-webkit-search-cancel-button, +[type="search"]::-webkit-search-decoration { -webkit-appearance: none; } From 28f2f6c292a628abc95358d9b19fae90029ddcd5 Mon Sep 17 00:00:00 2001 From: Jonathan Neal Date: Thu, 17 Mar 2016 23:58:17 -0400 Subject: [PATCH 032/119] Move input type appearance normalization into its own rule --- normalize.css | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/normalize.css b/normalize.css index cabe6a8c5..d568396a1 100644 --- a/normalize.css +++ b/normalize.css @@ -293,8 +293,6 @@ select { * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` * and `video` controls. * 2. Correct inability to style clickable `input` types in iOS. - * 3. Improve usability and consistency of cursor style between image-type - * `input` and others. */ button, @@ -302,15 +300,24 @@ html [type="button"], /* 1 */ [type="reset"], [type="submit"] { -webkit-appearance: button; /* 2 */ - cursor: pointer; /* 3 */ +} + +/** + * Improve consistency of cursor style between image-type `input` and others. + */ + +button, +[type="button"], +[type="reset"], +[type="submit"] { + cursor: pointer; } /** * Re-set default cursor for disabled elements. */ -[disabled], -html [disabled] { +[disabled] { cursor: default; } From c7bef7960b7db184073a09e9da3120d1fa94f5bc Mon Sep 17 00:00:00 2001 From: Jonathan Neal Date: Fri, 18 Mar 2016 00:01:15 -0400 Subject: [PATCH 033/119] Remove opinionated pre overflow --- normalize.css | 8 -------- test.html | 6 ------ 2 files changed, 14 deletions(-) diff --git a/normalize.css b/normalize.css index ae57050cc..72b5e695a 100644 --- a/normalize.css +++ b/normalize.css @@ -226,14 +226,6 @@ hr { overflow: visible; /* 2 */ } -/** - * Contain overflow in all browsers. - */ - -pre { - overflow: auto; -} - /** * 1. Correct inheritance and scaling of font-size for preformatted text. * 2. Address odd `em`-unit font size rendering in all browsers. diff --git a/test.html b/test.html index d5a0015f7..b7ebe8612 100644 --- a/test.html +++ b/test.html @@ -241,12 +241,6 @@

should have a content-box box model


-

pre

-

should trigger a scrollbar when too wide for its container

-
-
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et me.
-
-

code, kbd, pre, samp

should render em-unit preformatted text at the same absolute size as normal text

From 3123b8e9f5923fd06e4eeb9e0727b7cc42fd94f6 Mon Sep 17 00:00:00 2001 From: Jonathan Neal Date: Sat, 19 Mar 2016 17:00:31 -0400 Subject: [PATCH 034/119] Update project configuration --- .editorconfig | 12 ++++++++++++ .stylelintrc | 34 ---------------------------------- bower.json | 17 +++++++++++++++++ package.json | 24 ++++++++++++++---------- 4 files changed, 43 insertions(+), 44 deletions(-) create mode 100644 .editorconfig delete mode 100644 .stylelintrc create mode 100644 bower.json diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 000000000..4039ff111 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,12 @@ +root = true + +[*] +charset = utf-8 +end_of_line = lf +indent_size = 2 +indent_style = space +insert_final_newline = true +trim_trailing_whitespace = true + +[*.md] +trim_trailing_whitespace = false diff --git a/.stylelintrc b/.stylelintrc deleted file mode 100644 index 64dead837..000000000 --- a/.stylelintrc +++ /dev/null @@ -1,34 +0,0 @@ -{ - "rules": { - "block-closing-brace-newline-after": "always", - "block-closing-brace-newline-before": "always", - "block-no-empty": true, - "block-opening-brace-newline-after": "always", - "block-opening-brace-space-before": "always", - "color-hex-case": "lower", - "color-hex-length": "short", - "color-no-invalid-hex": true, - "comment-empty-line-before": "always", - "comment-whitespace-inside": "always", - "declaration-block-no-single-line": true, - "declaration-block-semicolon-newline-after": "always", - "declaration-block-semicolon-space-before": "never", - "declaration-colon-space-after": "always", - "declaration-colon-space-before": "never", - "indentation": 2, - "max-empty-lines": 1, - "max-line-length": 80, - "no-eol-whitespace": true, - "no-missing-eof-newline": true, - "number-leading-zero": "always", - "number-no-trailing-zeros": true, - "rule-trailing-semicolon": "always", - "selector-combinator-space-after": "always", - "selector-combinator-space-before": "always", - "selector-list-comma-newline-after": "always", - "selector-list-comma-space-before": "never", - "string-quotes": "double", - "value-list-comma-space-after": "always", - "value-list-comma-space-before": "never" - } -} diff --git a/bower.json b/bower.json new file mode 100644 index 000000000..e8f0d67e0 --- /dev/null +++ b/bower.json @@ -0,0 +1,17 @@ +{ + "name": "normalize-css", + "description": "A modern alternative to CSS resets", + "main": "normalize.css", + "authors": [ + "Jonathan Neal (http://jonathantneal.com/)", + "Nicolas Gallagher (http://nicolasgallagher.com/)" + ], + "license": "MIT", + "ignore": [ + "CHANGELOG.md", + "CONTRIBUTING.md", + "package.json", + "README.md", + "test.html" + ] +} diff --git a/package.json b/package.json index de7339260..e14926562 100644 --- a/package.json +++ b/package.json @@ -1,24 +1,28 @@ { "name": "normalize.css", "version": "3.0.3", - "description": "Normalize.css as a node packaged module", + "description": "A modern alternative to CSS resets", "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", "devDependencies": { - "stylelint": "^4.2.0" + "stylelint": "^5.1.0", + "stylelint-config-standard": "^4.0.1" }, "scripts": { "test": "stylelint normalize.css" + }, + "repository": "necolas/normalize.css", + "contributors": [ + "Jonathan Neal (http://jonathantneal.com/)", + "Nicolas Gallagher (http://nicolasgallagher.com/)" + ], + "license": "MIT", + "bugs": "https://github.com/necolas/normalize.css/issues", + "homepage": "https://necolas.github.io/normalize.css#readme", + "stylelint": { + "extends": "stylelint-config-standard" } } From 0c90242399c09af53850d52e992c977a538a8424 Mon Sep 17 00:00:00 2001 From: battaglr Date: Sat, 19 Mar 2016 17:01:16 -0400 Subject: [PATCH 035/119] Update and organize the normalize.css file --- normalize.css | 285 +++++++++++++++++++++++++------------------------- 1 file changed, 145 insertions(+), 140 deletions(-) diff --git a/normalize.css b/normalize.css index eb8610a4b..0919059eb 100644 --- a/normalize.css +++ b/normalize.css @@ -1,9 +1,8 @@ /*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ /** - * 1. Set default font family to sans-serif (opinionated). - * 2. Prevent iOS and IE text size adjust after device orientation change, - * without disabling user zoom. + * 1. Change the default font family in all browsers (opinionated). + * 2. Prevent adjustments of font size after orientation changes in IE and iOS. */ html { @@ -13,7 +12,7 @@ html { } /** - * Remove default margin (opinionated). + * Remove the margin in all browsers (opinionated). */ body { @@ -24,42 +23,39 @@ body { ========================================================================== */ /** - * 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. + * Add the correct display in IE 9-. + * 1. Add the correct display in Edge, IE, and Firefox. + * 2. Add the correct display in IE. */ article, aside, -details, +details, /* 1 */ figcaption, figure, footer, header, -main, +main, /* 2 */ menu, nav, section, -summary { +summary { /* 1 */ display: block; } /** - * 1. Correct `inline-block` display not defined in IE 8/9. - * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. + * Add the correct display in IE 9-. */ audio, canvas, progress, video { - display: inline-block; /* 1 */ - vertical-align: baseline; /* 2 */ + display: inline-block; } /** - * Prevent displaying `audio` without controls in Mobile Safari 4/5/6/7. + * Add the correct display in iOS 4-7. */ audio:not([controls]) { @@ -68,12 +64,20 @@ audio:not([controls]) { } /** - * Address `[hidden]` styling not present in IE 8/9/10. - * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22. + * Add the correct vertical alignment in Chrome, Firefox, and Opera. */ -[hidden], -template { +progress { + vertical-align: baseline; +} + +/** + * Add the correct display in IE 10-. + * 1. Add the correct display in IE. + */ + +template, /* 1 */ +[hidden] { display: none; } @@ -81,7 +85,7 @@ template { ========================================================================== */ /** - * Remove the gray background color from active links in IE 10. + * Remove the gray background on active links in IE 10. */ a { @@ -89,8 +93,8 @@ a { } /** - * Improve readability of focused elements when they are also in an - * active/hover state (opinionated). + * Remove the outline on focused links when they are also active or hovered + * in all browsers (opinionated). */ a:active, @@ -102,9 +106,8 @@ a:hover { ========================================================================== */ /** - * Address inconsistent styling of `abbr[title]`. - * 1. Correct styling in Firefox 39 and Opera 12. - * 2. Correct missing styling in Chrome, Edge, IE, Opera, and Safari. + * 1. Remove the bottom border in Firefox 39-. + * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */ abbr[title] { @@ -114,23 +117,25 @@ abbr[title] { } /** - * Address inconsistent styling of b and strong. - * 1. Correct duplicate application of `bolder` in Safari 6.0.2. - * 2. Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+. + * Prevent the duplicate application of `bolder` by the next rule in Safari 6. */ b, strong { - font-weight: inherit; /* 1 */ + font-weight: inherit; } +/** + * Add the correct font weight in Chrome, Edge, and Safari. + */ + b, strong { - font-weight: bolder; /* 2 */ + font-weight: bolder; } /** - * Address styling not present in Android < 4.4. + * Add the correct font style in Android 4.3-. */ dfn { @@ -138,8 +143,8 @@ dfn { } /** - * Address variable `h1` font-size and margin within `section` and `article` - * contexts in Firefox 4+, Safari, and Chrome. + * Correct the font size and margin on `h1` elements within `section` and + * `article` contexts in Chrome, Firefox, and Safari. */ h1 { @@ -148,7 +153,7 @@ h1 { } /** - * Address styling not present in IE 8/9. + * Add the correct background and color in IE 9-. */ mark { @@ -157,7 +162,7 @@ mark { } /** - * Address inconsistent and variable font size in all browsers. + * Add the correct font size in all browsers. */ small { @@ -165,7 +170,8 @@ small { } /** - * Prevent `sub` and `sup` affecting `line-height` in all browsers. + * Prevent `sub` and `sup` elements from affecting the line height in + * all browsers. */ sub, @@ -176,19 +182,19 @@ sup { vertical-align: baseline; } -sup { - top: -0.5em; -} - sub { bottom: -0.25em; } +sup { + top: -0.5em; +} + /* Embedded content ========================================================================== */ /** - * Correct border-style given when inside `a` element in IE 8/9/10. + * Remove the border on images inside links in IE 10-. */ img { @@ -196,7 +202,7 @@ img { } /** - * Correct overflow not hidden in IE 9/10/11. + * Hide the overflow in IE. */ svg:not(:root) { @@ -207,7 +213,20 @@ svg:not(:root) { ========================================================================== */ /** - * Address margin not present in IE 8/9 and Safari. + * 1. Correct the inheritance and scaling of font size in all browsers. + * 2. Correct the odd `em` font sizing in all browsers. + */ + +code, +kbd, +pre, +samp { + font-family: monospace, monospace; /* 1 */ + font-size: 1em; /* 2 */ +} + +/** + * Add the correct margin in IE 8. */ figure { @@ -215,9 +234,8 @@ figure { } /** - * Address inconsistent styling of `hr`. - * 1. Correct `box-sizing` set to `border-box` in Firefox. - * 2. Correct `overflow` set to `hidden` in IE 8/9/10/11 and Edge 12. + * 1. Add the correct box sizing in Firefox. + * 2. Show the overflow in Edge and IE. */ hr { @@ -226,76 +244,64 @@ hr { overflow: visible; /* 2 */ } -/** - * 1. Correct inheritance and scaling of font-size for preformatted text. - * 2. Address odd `em`-unit font size rendering in all browsers. - */ - -code, -kbd, -pre, -samp { - font-family: monospace, monospace; /* 1 */ - font-size: 1em; /* 2 */ -} - /* 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 font properties not being inherited. - * 2. Address margins set differently in Firefox 4+, Safari, and Chrome. + * Change font properties to `inherit` in all browsers (opinionated). */ button, input, -optgroup, select, textarea { - font: inherit; /* 1 */ - margin: 0; /* 2 */ + font: inherit; } /** - * Address `overflow` set to `hidden` in IE 8/9/10/11. + * Restore the font weight unset by the previous rule. */ -button { +optgroup { + font-weight: bold; +} + +/** + * Show the overflow in IE. + * 1. Show the overflow in Edge. + * 2. Show the overflow in Edge, Firefox, and IE. + */ + +button, +input, /* 1 */ +select { /* 2 */ 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. + * Remove the margin in Safari. + * 1. Remove the margin in Firefox and Safari. */ button, -select { - text-transform: none; +input, +select, +textarea { /* 1 */ + margin: 0; } /** - * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` - * and `video` controls. - * 2. Correct inability to style clickable `input` types in iOS. + * Remove the inheritence of text transform in Edge, Firefox, and IE. + * 1. Remove the inheritence of text transform in Firefox. */ button, -html [type="button"], /* 1 */ -[type="reset"], -[type="submit"] { - -webkit-appearance: button; /* 2 */ +select { /* 1 */ + text-transform: none; } /** - * Improve consistency of cursor style between image-type `input` and others. + * Change the cursor in all browsers (opinionated). */ button, @@ -306,7 +312,7 @@ button, } /** - * Re-set default cursor for disabled elements. + * Restore the default cursor to disabled elements unset by the previous rule. */ [disabled] { @@ -314,7 +320,20 @@ button, } /** - * Remove inner padding and border in Firefox 4+. + * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video` + * controls in Android 4. + * 2. Correct the inability to style clickable types in iOS. + */ + +button, +html [type="button"], /* 1 */ +[type="reset"], +[type="submit"] { + -webkit-appearance: button; /* 2 */ +} + +/** + * Remove the inner border and padding in Firefox. */ button::-moz-focus-inner, @@ -324,7 +343,7 @@ input::-moz-focus-inner { } /** - * Restore focus style in Firefox 4+ (unset by a rule above) + * Restore the focus styles unset by the previous rule. */ button:-moz-focusring, @@ -333,87 +352,73 @@ input:-moz-focusring { } /** - * 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. - */ - -[type="checkbox"], -[type="radio"] { - box-sizing: border-box; /* 1 */ - padding: 0; /* 2 */ -} - -/** - * 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`. + * Change the border, margin, and padding in all browsers (opinionated). */ -[type="number"]::-webkit-inner-spin-button, -[type="number"]::-webkit-outer-spin-button { - height: auto; +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; } /** - * Address `appearance` set to `searchfield` in Safari and Chrome. + * 1. Correct the text wrapping in Edge and IE. + * 2. Correct the color inheritance from `fieldset` elements in IE. + * 3. Remove the padding so developers are not caught out when they zero out + * `fieldset` elements in all browsers. */ -[type="search"] { - -webkit-appearance: textfield; +legend { + box-sizing: border-box; /* 1 */ + color: inherit; /* 2 */ + display: table; /* 1 */ + max-width: 100%; /* 1 */ + padding: 0; /* 3 */ + white-space: normal; /* 1 */ } /** - * 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). + * Remove the default vertical scrollbar in IE. */ -[type="search"]::-webkit-search-cancel-button, -[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; +textarea { + overflow: auto; } /** - * Define consistent border, margin, and padding. + * 1. Add the correct box sizing in IE 10-. + * 2. Remove the padding in IE 10-. */ -fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; +[type="checkbox"], +[type="radio"] { + box-sizing: border-box; /* 1 */ + padding: 0; /* 2 */ } /** - * 1. Correct wrapping not present in IE8/9/10/11 and Edge 12/13. - * 2. Correct `color` not being inherited from fieldset in IE 8/9/10/11. - * 3. Remove padding so people aren't caught out if they zero out fieldsets. + * Correct the cursor style of increment and decrement buttons in Chrome. */ -legend { - box-sizing: border-box; /* 1 */ - color: inherit; /* 2 */ - display: table; /* 1 */ - max-width: 100%; /* 1 */ - padding: 0; /* 3 */ - white-space: normal; /* 1 */ +[type="number"]::-webkit-inner-spin-button, +[type="number"]::-webkit-outer-spin-button { + height: auto; } /** - * Remove default vertical scrollbar in IE 8/9/10/11. + * Correct the odd appearance of search inputs in Chrome and Safari. */ -textarea { - overflow: auto; +[type="search"] { + -webkit-appearance: textfield; } /** - * Restore font weight (unset by a rule above). - * NOTE: the default cannot safely be changed in Chrome and Safari on OS X. + * Remove the inner padding and cancel buttons in Chrome on OS X and + * Safari on OS X. */ -optgroup { - font-weight: bold; +[type="search"]::-webkit-search-cancel-button, +[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; } From 7f2eaef38d5a55c9a1707ae0f6fd1f050cf8fdcf Mon Sep 17 00:00:00 2001 From: Jonathan Neal Date: Sat, 19 Mar 2016 17:11:59 -0400 Subject: [PATCH 036/119] Update documentation and tests --- CHANGELOG.md | 79 ++++++++++++++++++++++------------- CONTRIBUTING.md | 46 ++++++++++++++++++--- LICENSE.md | 4 +- README.md | 107 ++++++++++++++++++++++++++++++++---------------- test.html | 57 +++----------------------- 5 files changed, 172 insertions(+), 121 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ea49be831..ac6a5c987 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,31 +1,50 @@ -=== HEAD - -* Address inconsistent styling of b and strong. -* Correct `hr` overflow in IE 8/9/10/11 and Edge 12. -* Ensure `mark` long-hand background declaration usage. -* Remove color inheritance from form controls. -* Address inconsistent styling of abbr[title]. -* Correct inheritance and scaling of font-size for preformatted text. -* Replace focus style removed in the border reset in Firefox 4+. +# Changes to normalize.css + +### HEAD + +* Add the correct font weight for `b` and `strong` in Chrome, Edge, and Safari. +* Correct inconsistent `overflow` for `hr` in Edge and IE. +* Correct inconsistent `box-sizing` for `hr` in Firefox. +* Correct inconsistent `text-decoration` and `border-bottom` for `abbr[title]` + in Chrome, Edge, Firefox IE, Opera, and Safari. +* Correct inheritance and scaling of `font-size` for preformatted text. +* Correct `legend` text wrapping not present in Edge and IE. +* Remove unnecessary normalization of `line-height` for `input`. +* Remove unnecessary normalization of `color` for form controls. +* Remove unnecessary `box-sizing` for `input[type="search"]` in Chrome, Edge, + Firefox, IE, and Safari. * Remove opinionated table resets. - -=== 3.0.3 (March 30, 2015) +* Remove opinionated `pre` overflow. +* Remove selector weight from some input selectors. +* Update normalization of `border-style` for `img`. +* Update normalization of `color` inheritance for `legend`. +* Update normalization of `background-color` for `mark`. +* Update normalization of `outline` for `:-moz-focusring` removed by a previous + normalization in Firefox. +* Update opinionated style of `outline-width` for `a:active` and `a:hover`. +* Update comments to identify opinionated styles. +* Update comments to specify browser/versions affected by all changes. +* Update comments to use one voice. + +--- + +### 3.0.3 (March 30, 2015) * Remove unnecessary vendor prefixes. * Add `main` property. -=== 3.0.2 (October 4, 2014) +### 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) +### 3.0.1 (March 27, 2014) * Add package.json for npm support. -=== 3.0.0 (January 28, 2014) +### 3.0.0 (January 28, 2014) -=== 3.0.0-rc.1 (January 26, 2014) +### 3.0.0-rc.1 (January 26, 2014) * Explicit tests for each normalization. * Fix i18n for `q` element. @@ -41,21 +60,23 @@ * Set correct display for `progress` in IE 8/9. * Fix `font` and `color` inheritance for forms. -=== 2.1.3 (August 26, 2013) +--- + +### 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) +### 2.1.2 (May 11, 2013) * Revert root `color` and `background` normalizations. -=== 2.1.1 (April 8, 2013) +### 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) +### 2.1.0 (January 21, 2013) * Normalize `text-transform` for `button` and `select`. * Normalize `h1` margin when within HTML5 sectioning elements. @@ -64,11 +85,11 @@ * Add `main` element to HTML5 display definitions. * Fix cursor style for disabled button `input`. -=== 2.0.1 (August 20, 2012) +### 2.0.1 (August 20, 2012) * Remove stray IE 6/7 `inline-block` hack from HTML5 display settings. -=== 2.0.0 (August 19, 2012) +### 2.0.0 (August 19, 2012) * Remove legacy browser form normalizations. * Remove all list normalizations. @@ -77,19 +98,21 @@ * 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) +--- + +### 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) * Add MIT License. -* Hide `audio` elements without controls in iOS 5 (#69). +* Hide `audio` elements without controls in iOS 5. * Normalize heading margins and font size. -* Move font-family normalization from `body` to `html` (#62). -* Remove scrollbar normalization (#64 #65). -* Remove excess padding from checkbox and radio inputs in IE 7 (#42). -* Add IE9 correction for SVG overflow (#16). +* Move font-family normalization from `body` to `html`. +* Remove scrollbar normalization. +* Remove excess padding from checkbox and radio inputs in IE 7. +* Add IE9 correction for SVG overflow. * Add fix for legend not inheriting color in IE 6/7/8/9. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 30fa608eb..434ca45d2 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -21,7 +21,6 @@ requests](#pull-requests), but please respect the following restrictions: respect the opinions of others. - ## Bug reports A bug is a _demonstrable problem_ that is caused by the code in the repository. @@ -64,7 +63,6 @@ Example: > merits). - ## Feature requests Feature requests are welcome. But take a moment to find out whether your idea @@ -73,7 +71,6 @@ 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 @@ -90,7 +87,7 @@ 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, +1. [Fork](https://help.github.com/articles/fork-a-repo/) the project, clone your fork, and configure the remotes: ```bash @@ -122,9 +119,19 @@ project: [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 + Be sure to test the `normalize.css` file for style conformance. + + ```bash + npm test + ``` + + Be sure to add a test to the `test.html` file if appropriate, and test your change in all supported browsers. + ```bash + git pull --rebase upstream master + ``` + 5. Locally rebase the upstream development branch into your topic branch: ```bash @@ -146,8 +153,24 @@ project: **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. +### CSS Conventions + +Keep the CSS file as readable as possible by following these guidelines: + +- Comments are short and to the point. +- Comments without a number reference the entire rule. +- Comments describe the selector when the selector does not make the + normalization obvious. +- Comments begin with “Correct the...” when they deal with less obvious side + effects. +- Rules are sorted by cascade, specificity, and then alphabetic order. +- Selectors are sorted by specificity and then alphabetic order. +- `in browser` applies to all versions. +- `in browser v-` applies to all versions up to and including the version. +- `in browser v+` applies to all versions after and including the version. +- `in browser v-v` applies to all versions including and between the versions. + - ## Maintainers If you have commit access, please follow this process for merging patches and @@ -175,3 +198,14 @@ cutting new releases. 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. + +### Semver strategy + +[Semver](http://semver.org/) is a widely accepted method for deciding how +version numbers are incremented in a project. Versions are written as +MAJOR.MINOR.PATCH. + +Changes limited to fallback declarations for browsers which do not support +newer features produce a PATCH release. + +Changes limited to normalizations for older browsers produce a MINOR release. diff --git a/LICENSE.md b/LICENSE.md index c6bcc9bf2..43b5ddcc9 100644 --- a/LICENSE.md +++ b/LICENSE.md @@ -1,4 +1,6 @@ -Copyright (c) Nicolas Gallagher and Jonathan Neal +# The MIT License (MIT) + +Copyright © Nicolas Gallagher and Jonathan Neal Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in diff --git a/README.md b/README.md index 1b4dc3cdc..34842ec42 100644 --- a/README.md +++ b/README.md @@ -1,26 +1,36 @@ -# normalize.css v3 +# normalize.css -Normalize.css is a customisable CSS file that makes browsers render all -elements more consistently and in line with modern standards. +Normalize Logo -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. +> A modern alternative to CSS resets -[View the test file](http://necolas.github.io/normalize.css/latest/test.html) +[![npm][npm-image]][npm-url] [![license][license-image]][license-url] +[![changelog][changelog-image]][changelog-url] +[![gitter][gitter-image]][gitter-url] -## Install -* [npm](http://npmjs.org/): `npm install --save normalize.css` -* [Bower](http://bower.io/): `bower install --save - https://github.com/necolas/normalize.css.git` -* [cdnjs](https://cdnjs.com/libraries/normalize) -* [Download](http://necolas.github.io/normalize.css/latest/normalize.css). +**NPM** -No other styles should come before Normalize.css. +```sh +npm install --save normalize.css +``` + +**Bower** + +```sh +bower install --save normalize-css +``` + +**CDN** + +See https://cdnjs.com/libraries/normalize + +**Download** + +See https://necolas.github.io/normalize.css/latest/normalize.css -It is recommended that you include the `normalize.css` file as untouched -library code. ## What does it do? @@ -30,21 +40,23 @@ library code. * Improves usability with subtle improvements. * Explains what code does using detailed comments. + ## Browser support -* Chrome (latest) -* Edge (latest) -* Firefox (latest) +* Chrome (last two) +* Edge (last two) +* Firefox (last two) * Firefox ESR * Internet Explorer 8+ -* Opera (latest) +* 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. +*[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 + +## Extended details and known issues Additional detail and explanation of the esoteric parts of normalize.css. @@ -52,21 +64,37 @@ Additional detail and explanation of the esoteric parts of normalize.css. The `font-family: monospace, monospace` hack fixes the inheritance and scaling of font-size for preformatted text. The duplication of `monospace` is -intentional. [Source](http://en.wikipedia.org/wiki/User:Davidgothberg/Test59). +intentional. [Source](https://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). +browsers. [Source](https://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) +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` -#### `input[type="search"]` +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 @@ -74,18 +102,27 @@ 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). +showing past searches). Safari (but not Chrome) will clip the cancel button on +when it has padding (and `textfield` appearance). -#### `legend` - -Adding `border: 0` corrects an IE 8–11 bug where `color` (yes, `color`) is not -inherited by `legend`. ## Contributing -Please read the [contribution guidelines](CONTRIBUTING.md). +Please read the [contribution guidelines](CONTRIBUTING.md) in order to make the +contribution process easy and effective for everyone involved. + ## Acknowledgements Normalize.css is a project by [Nicolas Gallagher](https://github.com/necolas), co-created with [Jonathan Neal](https://github.com/jonathantneal). + + +[changelog-image]: https://img.shields.io/badge/changelog-md-blue.svg?style=flat-square +[changelog-url]: CHANGELOG.md +[license-image]: https://img.shields.io/npm/l/normalize.css.svg?style=flat-square +[license-url]: LICENSE.md +[npm-image]: https://img.shields.io/npm/v/normalize.css.svg?style=flat-square +[npm-url]: https://www.npmjs.com/package/normalize.css +[gitter-image]: https://img.shields.io/badge/chat-gitter-blue.svg?style=flat-square +[gitter-url]: https://gitter.im/necolas/normalize.css diff --git a/test.html b/test.html index f8ea790a4..a9d55246e 100644 --- a/test.html +++ b/test.html @@ -1,9 +1,9 @@ - + Normalize CSS: UI tests - +

-

+

+

@@ -344,7 +341,6 @@

disabled button and inputshould have default cursor style

-

@@ -362,13 +358,46 @@

should not have extra inner padding in Firefox

}

-

-

input[type="checkbox"], input[type="radio"]

+

fieldset

+

should have consistent border, padding, and margin

+
+
+
+
+
+ +

legend

+

should inherit color

+
+
+ legend +
+
+

should not have padding

+
+
+ legend +
+
+

should wrap text

+
+
+ Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et me. +
+
+ +

textarea

+

should not have a scrollbar unless overflowing

+
+ +
+ +

[type="checkbox"], [type="radio"]

should have a border-box box model