Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/JohnAlbin/normalize-scss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohnAlbin <virtually.johnalbin@gmail.com>2016-10-24 08:48:19 +0300
committerJohnAlbin <virtually.johnalbin@gmail.com>2016-10-24 09:24:13 +0300
commit6dcf2941f392560414d0f7ebcc4df60b51976d5e (patch)
tree5578b3db0c2e8a0edaf6ddb301466294aeac13b8
parent86f93372c6ec845280c6a727ad6fb88458e280ac (diff)
Don't output vertical rhythm if only $indent-amount variable is set. #88
-rw-r--r--fork-versions/default/_normalize.scss7
-rw-r--r--sass/normalize/_normalize-mixin.scss10
-rw-r--r--test/fixtures/fork-versions/default/output.css2
-rw-r--r--test/fixtures/import-now/output.css2
-rw-r--r--test/fixtures/normalize/exclude-single/output.css2
-rw-r--r--test/fixtures/normalize/exclude-string/output.css2
-rw-r--r--test/fixtures/variables/default/output.css2
-rw-r--r--test/fixtures/variables/indent-amount-and-vertical-rhythm/input.scss5
-rw-r--r--test/fixtures/variables/indent-amount-and-vertical-rhythm/output.css512
-rw-r--r--test/fixtures/variables/indent-amount/output.css84
-rw-r--r--test/test_variables.js6
11 files changed, 545 insertions, 89 deletions
diff --git a/fork-versions/default/_normalize.scss b/fork-versions/default/_normalize.scss
index daae7f1..2eb3e92 100644
--- a/fork-versions/default/_normalize.scss
+++ b/fork-versions/default/_normalize.scss
@@ -169,7 +169,12 @@ figure {
*/
figure {
- @include normalize-margin(1 $indent-amount);
+ @if $normalize-vertical-rhythm {
+ @include normalize-margin(1 $indent-amount);
+ }
+ @else {
+ margin: 1em $indent-amount;
+ }
}
/**
diff --git a/sass/normalize/_normalize-mixin.scss b/sass/normalize/_normalize-mixin.scss
index 05561f5..33a381e 100644
--- a/sass/normalize/_normalize-mixin.scss
+++ b/sass/normalize/_normalize-mixin.scss
@@ -39,8 +39,7 @@
or $h3-font-size != 1.17 * $base-font-size
or $h4-font-size != 1 * $base-font-size
or $h5-font-size != 0.83 * $base-font-size
- or $h6-font-size != 0.67 * $base-font-size
- or $indent-amount != 40px {
+ or $h6-font-size != 0.67 * $base-font-size {
$normalize-vertical-rhythm: true !global;
}
@@ -201,7 +200,12 @@
*/
figure {
- @include normalize-margin(1 $indent-amount);
+ @if $normalize-vertical-rhythm {
+ @include normalize-margin(1 $indent-amount);
+ }
+ @else {
+ margin: 1em $indent-amount;
+ }
}
/**
diff --git a/test/fixtures/fork-versions/default/output.css b/test/fixtures/fork-versions/default/output.css
index deb3095..dda3b63 100644
--- a/test/fixtures/fork-versions/default/output.css
+++ b/test/fixtures/fork-versions/default/output.css
@@ -58,7 +58,7 @@ figure {
* Add the correct margin in IE 8.
*/
figure {
- margin: 1.5em 40px; }
+ margin: 1em 40px; }
/**
* 1. Add the correct box sizing in Firefox.
diff --git a/test/fixtures/import-now/output.css b/test/fixtures/import-now/output.css
index 24cd578..2a37664 100644
--- a/test/fixtures/import-now/output.css
+++ b/test/fixtures/import-now/output.css
@@ -58,7 +58,7 @@ figure {
* Add the correct margin in IE 8.
*/
figure {
- margin: 1.5em 40px; }
+ margin: 1em 40px; }
/**
* 1. Add the correct box sizing in Firefox.
diff --git a/test/fixtures/normalize/exclude-single/output.css b/test/fixtures/normalize/exclude-single/output.css
index bddeb76..ce75668 100644
--- a/test/fixtures/normalize/exclude-single/output.css
+++ b/test/fixtures/normalize/exclude-single/output.css
@@ -58,7 +58,7 @@ figure {
* Add the correct margin in IE 8.
*/
figure {
- margin: 1.5em 40px; }
+ margin: 1em 40px; }
/**
* 1. Add the correct box sizing in Firefox.
diff --git a/test/fixtures/normalize/exclude-string/output.css b/test/fixtures/normalize/exclude-string/output.css
index 8c1c26c..7b77e43 100644
--- a/test/fixtures/normalize/exclude-string/output.css
+++ b/test/fixtures/normalize/exclude-string/output.css
@@ -58,7 +58,7 @@ figure {
* Add the correct margin in IE 8.
*/
figure {
- margin: 1.5em 40px; }
+ margin: 1em 40px; }
/**
* 1. Add the correct box sizing in Firefox.
diff --git a/test/fixtures/variables/default/output.css b/test/fixtures/variables/default/output.css
index 24cd578..2a37664 100644
--- a/test/fixtures/variables/default/output.css
+++ b/test/fixtures/variables/default/output.css
@@ -58,7 +58,7 @@ figure {
* Add the correct margin in IE 8.
*/
figure {
- margin: 1.5em 40px; }
+ margin: 1em 40px; }
/**
* 1. Add the correct box sizing in Firefox.
diff --git a/test/fixtures/variables/indent-amount-and-vertical-rhythm/input.scss b/test/fixtures/variables/indent-amount-and-vertical-rhythm/input.scss
new file mode 100644
index 0000000..1fa8dac
--- /dev/null
+++ b/test/fixtures/variables/indent-amount-and-vertical-rhythm/input.scss
@@ -0,0 +1,5 @@
+$normalize-vertical-rhythm: true;
+$indent-amount: 3em;
+
+@import 'normalize';
+@include normalize();
diff --git a/test/fixtures/variables/indent-amount-and-vertical-rhythm/output.css b/test/fixtures/variables/indent-amount-and-vertical-rhythm/output.css
new file mode 100644
index 0000000..b1c387c
--- /dev/null
+++ b/test/fixtures/variables/indent-amount-and-vertical-rhythm/output.css
@@ -0,0 +1,512 @@
+/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
+/* Document
+ ========================================================================== */
+/**
+ * 1. Change the default font family in all browsers (opinionated).
+ * 2. Correct the line height in all browsers.
+ * 3. Prevent adjustments of font size after orientation changes in
+ * IE on Windows Phone and in iOS.
+ */
+html {
+ font-family: sans-serif;
+ /* 1 */
+ font-size: 100%;
+ line-height: 1.5em;
+ /* 2 */
+ -ms-text-size-adjust: 100%;
+ /* 3 */
+ -webkit-text-size-adjust: 100%;
+ /* 3 */ }
+
+/* Sections
+ ========================================================================== */
+/**
+ * Remove the margin in all browsers (opinionated).
+ */
+body {
+ margin: 0; }
+
+/**
+ * Add the correct display in IE 9-.
+ */
+article,
+aside,
+footer,
+header,
+nav,
+section {
+ display: block; }
+
+/**
+ * Correct the font size and margin on `h1` elements within `section` and
+ * `article` contexts in Chrome, Firefox, and Safari.
+ */
+h1 {
+ font-size: 2em;
+ line-height: 1.5em;
+ /* Set 1 unit of vertical rhythm on the top and bottom margins. */
+ margin: 0.75em 0; }
+
+h2 {
+ font-size: 1.5em;
+ line-height: 2em;
+ margin: 1em 0; }
+
+h3 {
+ font-size: 1.17em;
+ line-height: 1.28205em;
+ margin: 1.28205em 0; }
+
+h4 {
+ font-size: 1em;
+ line-height: 1.5em;
+ margin: 1.5em 0; }
+
+h5 {
+ font-size: 0.83em;
+ line-height: 1.80723em;
+ margin: 1.80723em 0; }
+
+h6 {
+ font-size: 0.67em;
+ line-height: 2.23881em;
+ margin: 2.23881em 0; }
+
+/* Grouping content
+ ========================================================================== */
+/**
+ * Set 1 unit of vertical rhythm on the top and bottom margin.
+ */
+blockquote {
+ margin: 1.5em 3em; }
+
+dl,
+ol,
+ul {
+ margin: 1.5em 0; }
+
+/**
+ * Turn off margins on nested lists.
+ */
+ol ol,
+ol ul,
+ul ol,
+ul ul {
+ margin: 0; }
+
+dd {
+ margin: 0 0 0 3em; }
+
+ol,
+ul {
+ padding: 0 0 0 3em; }
+
+/**
+ * Add the correct display in IE 9-.
+ */
+figcaption,
+figure {
+ display: block; }
+
+/**
+ * Add the correct margin in IE 8.
+ */
+figure {
+ margin: 1.5em 3em; }
+
+/**
+ * 1. Add the correct box sizing in Firefox.
+ * 2. Show the overflow in Edge and IE.
+ */
+hr {
+ box-sizing: content-box;
+ /* 1 */
+ height: 0;
+ /* 1 */
+ overflow: visible;
+ /* 2 */ }
+
+/**
+ * Add the correct display in IE.
+ */
+main {
+ display: block; }
+
+/**
+ * Set 1 unit of vertical rhythm on the top and bottom margin.
+ */
+p,
+pre {
+ margin: 1.5em 0; }
+
+/**
+ * 1. Correct the inheritance and scaling of font size in all browsers.
+ * 2. Correct the odd `em` font sizing in all browsers.
+ */
+pre {
+ font-family: monospace, monospace;
+ /* 1 */
+ font-size: 1em;
+ /* 2 */ }
+
+/* Links
+ ========================================================================== */
+/**
+ * 1. Remove the gray background on active links in IE 10.
+ * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
+ */
+a {
+ background-color: transparent;
+ /* 1 */
+ -webkit-text-decoration-skip: objects;
+ /* 2 */ }
+
+/**
+ * Remove the outline on focused links when they are also active or hovered
+ * in all browsers (opinionated).
+ */
+a:active,
+a:hover {
+ outline-width: 0; }
+
+/* Text-level semantics
+ ========================================================================== */
+/**
+ * 1. Remove the bottom border in Firefox 39-.
+ * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
+ */
+abbr[title] {
+ border-bottom: none;
+ /* 1 */
+ text-decoration: underline;
+ /* 2 */
+ text-decoration: underline dotted;
+ /* 2 */ }
+
+/**
+ * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
+ */
+b,
+strong {
+ font-weight: inherit; }
+
+/**
+ * Add the correct font weight in Chrome, Edge, and Safari.
+ */
+b,
+strong {
+ font-weight: bolder; }
+
+/**
+ * 1. Correct the inheritance and scaling of font size in all browsers.
+ * 2. Correct the odd `em` font sizing in all browsers.
+ */
+code,
+kbd,
+samp {
+ font-family: monospace, monospace;
+ /* 1 */
+ font-size: 1em;
+ /* 2 */ }
+
+/**
+ * Add the correct font style in Android 4.3-.
+ */
+dfn {
+ font-style: italic; }
+
+/**
+ * Add the correct background and color in IE 9-.
+ */
+mark {
+ background-color: #ff0;
+ color: #000; }
+
+/**
+ * Add the correct font size in all browsers.
+ */
+small {
+ font-size: 80%; }
+
+/**
+ * Prevent `sub` and `sup` elements from affecting the line height in
+ * all browsers.
+ */
+sub,
+sup {
+ font-size: 75%;
+ line-height: 0;
+ position: relative;
+ vertical-align: baseline; }
+
+sub {
+ bottom: -0.25em; }
+
+sup {
+ top: -0.5em; }
+
+/* Embedded content
+ ========================================================================== */
+/**
+ * Add the correct display in IE 9-.
+ */
+audio,
+video {
+ display: inline-block; }
+
+/**
+ * Add the correct display in iOS 4-7.
+ */
+audio:not([controls]) {
+ display: none;
+ height: 0; }
+
+/**
+ * Remove the border on images inside links in IE 10-.
+ */
+img {
+ border-style: none; }
+
+/**
+ * Hide the overflow in IE.
+ */
+svg:not(:root) {
+ overflow: hidden; }
+
+/* Forms
+ ========================================================================== */
+/**
+ * Known issues:
+ * - 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.
+ * - It is recommended that you do not style checkbox and radio inputs as
+ * Firefox's implementation does not respect box-sizing, padding, or width.
+ * - Certain font size values applied to number inputs cause the cursor style of
+ * the decrement button to change from default to text.
+ * - The search input is not fully stylable by default. In Chrome and Safari on
+ * OSX/iOS you can't control font, padding, border, or background. In Chrome
+ * and Safari on Windows you can't control border properly. It will apply
+ * border-width but will only show a border color (which cannot be controlled)
+ * for the outer 1px of that border. Applying -webkit-appearance: textfield
+ * addresses these issues without removing the benefits of search inputs (e.g.
+ * showing past searches). Safari (but not Chrome) will clip the cancel button
+ * on when it has padding (and textfield appearance).
+ */
+/**
+ * 1. Change the font styles in all browsers (opinionated).
+ * 2. Remove the margin in Firefox and Safari.
+ */
+button,
+input,
+optgroup,
+select,
+textarea {
+ font-family: sans-serif;
+ /* 1 */
+ font-size: 100%;
+ /* 1 */
+ line-height: 1.5em;
+ /* 1 */
+ margin: 0;
+ /* 2 */ }
+
+/**
+ * Show the overflow in IE.
+ */
+button {
+ overflow: visible; }
+
+/**
+ * Remove the inheritance of text transform in Edge, Firefox, and IE.
+ * 1. Remove the inheritance of text transform in Firefox.
+ */
+button,
+select {
+ /* 1 */
+ text-transform: none; }
+
+/**
+ * 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 and Safari.
+ */
+button,
+html [type="button"],
+[type="reset"],
+[type="submit"] {
+ -webkit-appearance: button;
+ /* 2 */ }
+
+button,
+[type="button"],
+[type="reset"],
+[type="submit"] {
+ /**
+ * Remove the inner border and padding in Firefox.
+ */
+ /**
+ * Restore the focus styles unset by the previous rule.
+ */ }
+ button::-moz-focus-inner,
+ [type="button"]::-moz-focus-inner,
+ [type="reset"]::-moz-focus-inner,
+ [type="submit"]::-moz-focus-inner {
+ border-style: none;
+ padding: 0; }
+ button:-moz-focusring,
+ [type="button"]:-moz-focusring,
+ [type="reset"]:-moz-focusring,
+ [type="submit"]:-moz-focusring {
+ outline: 1px dotted ButtonText; }
+
+/**
+ * Show the overflow in Edge.
+ */
+input {
+ overflow: visible; }
+
+/**
+ * 1. Add the correct box sizing in IE 10-.
+ * 2. Remove the padding in IE 10-.
+ */
+[type="checkbox"],
+[type="radio"] {
+ box-sizing: border-box;
+ /* 1 */
+ padding: 0;
+ /* 2 */ }
+
+/**
+ * Correct the cursor style of increment and decrement buttons in Chrome.
+ */
+[type="number"]::-webkit-inner-spin-button,
+[type="number"]::-webkit-outer-spin-button {
+ height: auto; }
+
+/**
+ * 1. Correct the odd appearance in Chrome and Safari.
+ * 2. Correct the outline style in Safari.
+ */
+[type="search"] {
+ -webkit-appearance: textfield;
+ /* 1 */
+ outline-offset: -2px;
+ /* 2 */
+ /**
+ * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
+ */ }
+ [type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
+ -webkit-appearance: none; }
+
+/**
+ * 1. Correct the inability to style clickable types in iOS and Safari.
+ * 2. Change font properties to `inherit` in Safari.
+ */
+::-webkit-file-upload-button {
+ -webkit-appearance: button;
+ /* 1 */
+ font: inherit;
+ /* 2 */ }
+
+/**
+ * Change the border, margin, and padding in all browsers (opinionated).
+ */
+fieldset {
+ border: 1px solid #c0c0c0;
+ margin: 0 2px;
+ padding: 0.35em 0.625em 0.75em; }
+
+/**
+ * 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.
+ */
+legend {
+ box-sizing: border-box;
+ /* 1 */
+ display: table;
+ /* 1 */
+ max-width: 100%;
+ /* 1 */
+ white-space: normal;
+ /* 1 */
+ color: inherit;
+ /* 2 */
+ padding: 0;
+ /* 3 */ }
+
+/**
+ * 1. Add the correct display in IE 9-.
+ * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
+ */
+progress {
+ display: inline-block;
+ /* 1 */
+ vertical-align: baseline;
+ /* 2 */ }
+
+/**
+ * Remove the default vertical scrollbar in IE.
+ */
+textarea {
+ overflow: auto; }
+
+/* Interactive
+ ========================================================================== */
+/*
+ * Add the correct display in Edge, IE, and Firefox.
+ */
+details {
+ display: block; }
+
+/*
+ * Add the correct display in all browsers.
+ */
+summary {
+ display: list-item; }
+
+/*
+ * Add the correct display in IE 9-.
+ */
+menu {
+ display: block;
+ /*
+ * 1. Set 1 unit of vertical rhythm on the top and bottom margin.
+ * 2. Set consistent space for the list style image.
+ */
+ margin: 1.5em 0;
+ /* 1 */
+ padding: 0 0 0 3em;
+ /* 2 */
+ /**
+ * Turn off margins on nested lists.
+ */ }
+ menu menu,
+ ol menu,
+ ul menu {
+ margin: 0; }
+
+/* Scripting
+ ========================================================================== */
+/**
+ * Add the correct display in IE 9-.
+ */
+canvas {
+ display: inline-block; }
+
+/**
+ * Add the correct display in IE.
+ */
+template {
+ display: none; }
+
+/* Hidden
+ ========================================================================== */
+/**
+ * Add the correct display in IE 10-.
+ */
+[hidden] {
+ display: none; }
diff --git a/test/fixtures/variables/indent-amount/output.css b/test/fixtures/variables/indent-amount/output.css
index b1c387c..6e7a201 100644
--- a/test/fixtures/variables/indent-amount/output.css
+++ b/test/fixtures/variables/indent-amount/output.css
@@ -10,8 +10,7 @@
html {
font-family: sans-serif;
/* 1 */
- font-size: 100%;
- line-height: 1.5em;
+ line-height: 1.15;
/* 2 */
-ms-text-size-adjust: 100%;
/* 3 */
@@ -43,65 +42,12 @@ section {
*/
h1 {
font-size: 2em;
- line-height: 1.5em;
/* Set 1 unit of vertical rhythm on the top and bottom margins. */
margin: 0.75em 0; }
-h2 {
- font-size: 1.5em;
- line-height: 2em;
- margin: 1em 0; }
-
-h3 {
- font-size: 1.17em;
- line-height: 1.28205em;
- margin: 1.28205em 0; }
-
-h4 {
- font-size: 1em;
- line-height: 1.5em;
- margin: 1.5em 0; }
-
-h5 {
- font-size: 0.83em;
- line-height: 1.80723em;
- margin: 1.80723em 0; }
-
-h6 {
- font-size: 0.67em;
- line-height: 2.23881em;
- margin: 2.23881em 0; }
-
/* Grouping content
========================================================================== */
/**
- * Set 1 unit of vertical rhythm on the top and bottom margin.
- */
-blockquote {
- margin: 1.5em 3em; }
-
-dl,
-ol,
-ul {
- margin: 1.5em 0; }
-
-/**
- * Turn off margins on nested lists.
- */
-ol ol,
-ol ul,
-ul ol,
-ul ul {
- margin: 0; }
-
-dd {
- margin: 0 0 0 3em; }
-
-ol,
-ul {
- padding: 0 0 0 3em; }
-
-/**
* Add the correct display in IE 9-.
*/
figcaption,
@@ -112,7 +58,7 @@ figure {
* Add the correct margin in IE 8.
*/
figure {
- margin: 1.5em 3em; }
+ margin: 1em 3em; }
/**
* 1. Add the correct box sizing in Firefox.
@@ -133,13 +79,6 @@ main {
display: block; }
/**
- * Set 1 unit of vertical rhythm on the top and bottom margin.
- */
-p,
-pre {
- margin: 1.5em 0; }
-
-/**
* 1. Correct the inheritance and scaling of font size in all browsers.
* 2. Correct the odd `em` font sizing in all browsers.
*/
@@ -307,7 +246,7 @@ textarea {
/* 1 */
font-size: 100%;
/* 1 */
- line-height: 1.5em;
+ line-height: 1.15;
/* 1 */
margin: 0;
/* 2 */ }
@@ -472,22 +411,7 @@ summary {
* Add the correct display in IE 9-.
*/
menu {
- display: block;
- /*
- * 1. Set 1 unit of vertical rhythm on the top and bottom margin.
- * 2. Set consistent space for the list style image.
- */
- margin: 1.5em 0;
- /* 1 */
- padding: 0 0 0 3em;
- /* 2 */
- /**
- * Turn off margins on nested lists.
- */ }
- menu menu,
- ol menu,
- ul menu {
- margin: 0; }
+ display: block; }
/* Scripting
========================================================================== */
diff --git a/test/test_variables.js b/test/test_variables.js
index 7102e21..92d9439 100644
--- a/test/test_variables.js
+++ b/test/test_variables.js
@@ -28,4 +28,10 @@ describe('Configuration variables', function() {
return sassyTest.renderFixture('variables/indent-amount');
});
});
+
+ describe('$indent-amount and $normalize-vertical-rhythm', function() {
+ it('should alter the indent amount of elements', function() {
+ return sassyTest.renderFixture('variables/indent-amount-and-vertical-rhythm');
+ });
+ });
});