minimal-mistakes-jekyll 4.1.1 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (168) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +18 -0
  3. data/LICENSE.txt +20 -20
  4. data/README.md +1 -2
  5. data/_includes/analytics-providers/custom.html +2 -2
  6. data/_includes/analytics-providers/google-universal.html +8 -8
  7. data/_includes/analytics-providers/google.html +10 -10
  8. data/_includes/analytics.html +11 -11
  9. data/_includes/archive-single.html +37 -37
  10. data/_includes/author-profile-custom-links.html +6 -6
  11. data/_includes/author-profile.html +241 -241
  12. data/_includes/base_path +4 -4
  13. data/_includes/breadcrumbs.html +38 -38
  14. data/_includes/browser-upgrade.html +2 -2
  15. data/_includes/category-list.html +25 -25
  16. data/_includes/comment.html +21 -21
  17. data/_includes/comments-providers/custom.html +2 -2
  18. data/_includes/comments-providers/discourse.html +13 -13
  19. data/_includes/comments-providers/disqus.html +21 -21
  20. data/_includes/comments-providers/facebook.html +7 -7
  21. data/_includes/comments-providers/google-plus.html +1 -1
  22. data/_includes/comments-providers/scripts.html +17 -17
  23. data/_includes/comments-providers/staticman.html +41 -41
  24. data/_includes/comments.html +79 -79
  25. data/_includes/feature_row +49 -49
  26. data/_includes/figure +12 -12
  27. data/_includes/footer.html +21 -21
  28. data/_includes/footer/custom.html +2 -2
  29. data/_includes/gallery +46 -46
  30. data/_includes/group-by-array +46 -46
  31. data/_includes/head.html +18 -18
  32. data/_includes/head/custom.html +4 -4
  33. data/_includes/masthead.html +20 -20
  34. data/_includes/nav_list +46 -46
  35. data/_includes/page__hero.html +52 -52
  36. data/_includes/page__hero_video.html +4 -0
  37. data/_includes/page__taxonomy.html +6 -6
  38. data/_includes/paginator.html +67 -67
  39. data/_includes/post_pagination.html +13 -13
  40. data/_includes/read-time.html +14 -14
  41. data/_includes/scripts.html +4 -4
  42. data/_includes/seo.html +145 -145
  43. data/_includes/sidebar.html +22 -22
  44. data/_includes/social-share.html +13 -13
  45. data/_includes/tag-list.html +25 -25
  46. data/_includes/toc +6 -6
  47. data/_includes/video +11 -0
  48. data/_layouts/archive-taxonomy.html +14 -14
  49. data/_layouts/archive.html +2 -0
  50. data/_layouts/compress.html +10 -10
  51. data/_layouts/default.html +28 -28
  52. data/_layouts/home.html +11 -11
  53. data/_layouts/single.html +76 -74
  54. data/_layouts/splash.html +2 -0
  55. data/_sass/_archive.scss +237 -237
  56. data/_sass/_footer.scss +79 -79
  57. data/_sass/_forms.scss +390 -390
  58. data/_sass/_masthead.scss +52 -52
  59. data/_sass/_mixins.scss +52 -52
  60. data/_sass/_navigation.scss +543 -543
  61. data/_sass/_notices.scss +98 -98
  62. data/_sass/_page.scss +400 -400
  63. data/_sass/_print.scss +17 -17
  64. data/_sass/_reset.scss +186 -186
  65. data/_sass/_sidebar.scss +230 -230
  66. data/_sass/_syntax.scss +145 -145
  67. data/_sass/_tables.scss +37 -37
  68. data/_sass/_utilities.scss +37 -1
  69. data/_sass/_variables.scss +127 -127
  70. data/_sass/vendor/breakpoint/_breakpoint.scss +114 -114
  71. data/_sass/vendor/breakpoint/_context.scss +94 -94
  72. data/_sass/vendor/breakpoint/_helpers.scss +151 -151
  73. data/_sass/vendor/breakpoint/_legacy-settings.scss +49 -49
  74. data/_sass/vendor/breakpoint/_no-query.scss +15 -15
  75. data/_sass/vendor/breakpoint/_parsers.scss +215 -215
  76. data/_sass/vendor/breakpoint/_respond-to.scss +82 -82
  77. data/_sass/vendor/breakpoint/_settings.scss +70 -70
  78. data/_sass/vendor/breakpoint/parsers/_double.scss +33 -33
  79. data/_sass/vendor/breakpoint/parsers/_query.scss +82 -82
  80. data/_sass/vendor/breakpoint/parsers/_resolution.scss +31 -31
  81. data/_sass/vendor/breakpoint/parsers/_single.scss +26 -26
  82. data/_sass/vendor/breakpoint/parsers/_triple.scss +36 -36
  83. data/_sass/vendor/breakpoint/parsers/double/_default-pair.scss +21 -21
  84. data/_sass/vendor/breakpoint/parsers/double/_default.scss +22 -22
  85. data/_sass/vendor/breakpoint/parsers/double/_double-string.scss +21 -21
  86. data/_sass/vendor/breakpoint/parsers/resolution/_resolution.scss +60 -60
  87. data/_sass/vendor/breakpoint/parsers/single/_default.scss +13 -13
  88. data/_sass/vendor/breakpoint/parsers/triple/_default.scss +18 -18
  89. data/_sass/vendor/font-awesome/_animated.scss +34 -34
  90. data/_sass/vendor/font-awesome/_bordered-pulled.scss +25 -25
  91. data/_sass/vendor/font-awesome/_core.scss +12 -12
  92. data/_sass/vendor/font-awesome/_fixed-width.scss +6 -6
  93. data/_sass/vendor/font-awesome/_font-awesome.scss +18 -18
  94. data/_sass/vendor/font-awesome/_icons.scss +789 -789
  95. data/_sass/vendor/font-awesome/_larger.scss +13 -13
  96. data/_sass/vendor/font-awesome/_list.scss +19 -19
  97. data/_sass/vendor/font-awesome/_mixins.scss +60 -60
  98. data/_sass/vendor/font-awesome/_path.scss +15 -15
  99. data/_sass/vendor/font-awesome/_rotated-flipped.scss +20 -20
  100. data/_sass/vendor/font-awesome/_screen-reader.scss +5 -5
  101. data/_sass/vendor/font-awesome/_stacked.scss +20 -20
  102. data/_sass/vendor/font-awesome/_variables.scss +800 -800
  103. data/_sass/vendor/magnific-popup/_settings.scss +45 -45
  104. data/_sass/vendor/susy/_su.scss +4 -4
  105. data/_sass/vendor/susy/_susy.scss +4 -4
  106. data/_sass/vendor/susy/_susyone.scss +4 -4
  107. data/_sass/vendor/susy/susy/_su.scss +7 -7
  108. data/_sass/vendor/susy/susy/language/_susy.scss +24 -24
  109. data/_sass/vendor/susy/susy/language/_susyone.scss +13 -13
  110. data/_sass/vendor/susy/susy/language/susy/_background.scss +385 -385
  111. data/_sass/vendor/susy/susy/language/susy/_bleed.scss +200 -200
  112. data/_sass/vendor/susy/susy/language/susy/_box-sizing.scss +47 -47
  113. data/_sass/vendor/susy/susy/language/susy/_breakpoint-plugin.scss +185 -185
  114. data/_sass/vendor/susy/susy/language/susy/_container.scss +81 -81
  115. data/_sass/vendor/susy/susy/language/susy/_context.scss +36 -36
  116. data/_sass/vendor/susy/susy/language/susy/_gallery.scss +94 -94
  117. data/_sass/vendor/susy/susy/language/susy/_grids.scss +64 -64
  118. data/_sass/vendor/susy/susy/language/susy/_gutters.scss +154 -154
  119. data/_sass/vendor/susy/susy/language/susy/_isolate.scss +77 -77
  120. data/_sass/vendor/susy/susy/language/susy/_margins.scss +94 -94
  121. data/_sass/vendor/susy/susy/language/susy/_padding.scss +74 -74
  122. data/_sass/vendor/susy/susy/language/susy/_rows.scss +138 -138
  123. data/_sass/vendor/susy/susy/language/susy/_settings.scss +216 -216
  124. data/_sass/vendor/susy/susy/language/susy/_span.scss +163 -163
  125. data/_sass/vendor/susy/susy/language/susy/_validation.scss +16 -16
  126. data/_sass/vendor/susy/susy/language/susyone/_background.scss +18 -18
  127. data/_sass/vendor/susy/susy/language/susyone/_functions.scss +377 -377
  128. data/_sass/vendor/susy/susy/language/susyone/_grid.scss +312 -312
  129. data/_sass/vendor/susy/susy/language/susyone/_isolation.scss +51 -51
  130. data/_sass/vendor/susy/susy/language/susyone/_margin.scss +93 -93
  131. data/_sass/vendor/susy/susy/language/susyone/_media.scss +105 -105
  132. data/_sass/vendor/susy/susy/language/susyone/_padding.scss +92 -92
  133. data/_sass/vendor/susy/susy/language/susyone/_settings.scss +60 -60
  134. data/_sass/vendor/susy/susy/output/_float.scss +9 -9
  135. data/_sass/vendor/susy/susy/output/_shared.scss +15 -15
  136. data/_sass/vendor/susy/susy/output/_support.scss +9 -9
  137. data/_sass/vendor/susy/susy/output/float/_container.scss +16 -16
  138. data/_sass/vendor/susy/susy/output/float/_end.scss +40 -40
  139. data/_sass/vendor/susy/susy/output/float/_isolate.scss +22 -22
  140. data/_sass/vendor/susy/susy/output/float/_span.scss +35 -35
  141. data/_sass/vendor/susy/susy/output/shared/_background.scss +26 -26
  142. data/_sass/vendor/susy/susy/output/shared/_container.scss +21 -21
  143. data/_sass/vendor/susy/susy/output/shared/_direction.scss +42 -42
  144. data/_sass/vendor/susy/susy/output/shared/_inspect.scss +25 -25
  145. data/_sass/vendor/susy/susy/output/shared/_margins.scss +23 -23
  146. data/_sass/vendor/susy/susy/output/shared/_output.scss +14 -14
  147. data/_sass/vendor/susy/susy/output/shared/_padding.scss +23 -23
  148. data/_sass/vendor/susy/susy/output/support/_background.scss +58 -58
  149. data/_sass/vendor/susy/susy/output/support/_box-sizing.scss +19 -19
  150. data/_sass/vendor/susy/susy/output/support/_clearfix.scss +18 -18
  151. data/_sass/vendor/susy/susy/output/support/_prefix.scss +19 -19
  152. data/_sass/vendor/susy/susy/output/support/_rem.scss +22 -22
  153. data/_sass/vendor/susy/susy/output/support/_support.scss +85 -85
  154. data/_sass/vendor/susy/susy/su/_grid.scss +103 -103
  155. data/_sass/vendor/susy/susy/su/_settings.scss +73 -73
  156. data/_sass/vendor/susy/susy/su/_utilities.scss +111 -111
  157. data/_sass/vendor/susy/susy/su/_validation.scss +57 -57
  158. data/assets/css/main.scss +78 -78
  159. data/assets/fonts/fontawesome-webfont.svg +2671 -2671
  160. data/assets/js/_main.js +72 -100
  161. data/assets/js/main.min.js +4 -5
  162. data/assets/js/plugins/jquery.fitvids.js +81 -81
  163. data/assets/js/plugins/jquery.greedy-navigation.js +71 -71
  164. data/assets/js/plugins/jquery.magnific-popup.js +2049 -2049
  165. data/assets/js/plugins/jquery.smooth-scroll.min.js +8 -8
  166. data/assets/js/vendor/jquery/jquery-1.12.4.min.js +4 -4
  167. metadata +7 -6
  168. data/assets/js/plugins/stickyfill.min.js +0 -8
@@ -1,51 +1,51 @@
1
- // ---------------------------------------------------------------------------
2
- // Isolation
3
-
4
- // Isolate the position of a grid element (use in addition to span-columns)
5
- //
6
- // $location : The grid column to isolate in, relative to the container;
7
- // $context : [optional] The context (columns spanned by parent).
8
- // $from : The start direction of your layout (e.g. 'left' for ltr languages)
9
- @mixin isolate(
10
- $location,
11
- $context: $total-columns,
12
- $from: $from-direction,
13
- $style: fix-static-misalignment()
14
- ) {
15
- $to: opposite-position($from);
16
- margin-#{$to}: -100%;
17
- margin-#{$from}: space($location - 1, $context, $style);
18
- }
19
-
20
- // Isolate a group of elements in a grid, using nth-child selectors
21
- //
22
- // $columns : The column-width of each item on the grid;
23
- // $context : [optional] The context (columns spanned by parent).
24
- // $selector : [child | of-type | last-of-type ] (default is 'child')
25
- // $from : The start direction of your layout (e.g. 'left' for ltr languages)
26
- @mixin isolate-grid(
27
- $columns,
28
- $context: $total-columns,
29
- $selector: 'child',
30
- $from: $from-direction,
31
- $style: fix-static-misalignment()
32
- ) {
33
- $to: opposite-position($from);
34
- $location: 1;
35
- $line: floor($context / $columns);
36
-
37
- @include span-columns($columns, $context, $from: $from, $style: $style);
38
- margin-#{$to}: -100%;
39
-
40
- @for $item from 1 through $line {
41
- $nth: '#{$line}n + #{$item}';
42
- &:#{format-nth($nth,$selector)} {
43
- margin-#{$from}: space($location - 1, $context, $style);
44
- @if $location == 1 { clear: $from; }
45
- @else { clear: none; }
46
-
47
- $location: $location + $columns;
48
- @if $location > $context { $location: 1; }
49
- }
50
- }
51
- }
1
+ // ---------------------------------------------------------------------------
2
+ // Isolation
3
+
4
+ // Isolate the position of a grid element (use in addition to span-columns)
5
+ //
6
+ // $location : The grid column to isolate in, relative to the container;
7
+ // $context : [optional] The context (columns spanned by parent).
8
+ // $from : The start direction of your layout (e.g. 'left' for ltr languages)
9
+ @mixin isolate(
10
+ $location,
11
+ $context: $total-columns,
12
+ $from: $from-direction,
13
+ $style: fix-static-misalignment()
14
+ ) {
15
+ $to: opposite-position($from);
16
+ margin-#{$to}: -100%;
17
+ margin-#{$from}: space($location - 1, $context, $style);
18
+ }
19
+
20
+ // Isolate a group of elements in a grid, using nth-child selectors
21
+ //
22
+ // $columns : The column-width of each item on the grid;
23
+ // $context : [optional] The context (columns spanned by parent).
24
+ // $selector : [child | of-type | last-of-type ] (default is 'child')
25
+ // $from : The start direction of your layout (e.g. 'left' for ltr languages)
26
+ @mixin isolate-grid(
27
+ $columns,
28
+ $context: $total-columns,
29
+ $selector: 'child',
30
+ $from: $from-direction,
31
+ $style: fix-static-misalignment()
32
+ ) {
33
+ $to: opposite-position($from);
34
+ $location: 1;
35
+ $line: floor($context / $columns);
36
+
37
+ @include span-columns($columns, $context, $from: $from, $style: $style);
38
+ margin-#{$to}: -100%;
39
+
40
+ @for $item from 1 through $line {
41
+ $nth: '#{$line}n + #{$item}';
42
+ &:#{format-nth($nth,$selector)} {
43
+ margin-#{$from}: space($location - 1, $context, $style);
44
+ @if $location == 1 { clear: $from; }
45
+ @else { clear: none; }
46
+
47
+ $location: $location + $columns;
48
+ @if $location > $context { $location: 1; }
49
+ }
50
+ }
51
+ }
@@ -1,93 +1,93 @@
1
- // ---------------------------------------------------------------------------
2
- // Margin Mixins
3
-
4
- // Apply 'columns' margin before an element to push it along the grid.
5
- //
6
- // $columns : The number of columns to span.
7
- // $context : [optional] The context (columns spanned by parent).
8
- // : Context is required on any nested elements.
9
- // : Context MUST NOT be declared on a root element.
10
- // $from : The start direction of your layout (e.g. 'left' for ltr languages)
11
- // $style : The container style to use.
12
- @mixin pre(
13
- $columns,
14
- $context : $total-columns,
15
- $from : $from-direction,
16
- $style : fix-static-misalignment()
17
- ) {
18
- $from : unquote($from);
19
- margin-#{$from}: space($columns, $context, $style);
20
- }
21
-
22
- // 'push' is a synonymn for 'pre'
23
- @mixin push(
24
- $columns,
25
- $context : $total-columns,
26
- $from : $from-direction,
27
- $style : fix-static-misalignment()
28
- ) {
29
- $from : unquote($from);
30
- @include pre($columns, $context, $from, $style);
31
- }
32
-
33
- // Apply negative 'columns' margin before an element to pull it along the grid.
34
- //
35
- // $columns : The number of columns to span.
36
- // $context : [optional] The context (columns spanned by parent).
37
- // : Context is required on any nested elements.
38
- // : Context MUST NOT be declared on a root element.
39
- // $from : The start direction of your layout (e.g. 'left' for ltr languages)
40
- // $style : The container style to use.
41
- @mixin pull(
42
- $columns,
43
- $context : $total-columns,
44
- $from : $from-direction,
45
- $style : fix-static-misalignment()
46
- ) {
47
- $from : unquote($from);
48
- margin-#{$from}: 0 - space($columns, $context, $style);
49
- }
50
-
51
- // Apply 'columns' margin after an element to contain it in a grid.
52
- //
53
- // $columns : The number of columns to span.
54
- // $context : [optional] The context (columns spanned by parent).
55
- // : Context is required on any nested elements.
56
- // : Context MUST NOT be declared on a root element.
57
- // $from : The start direction of your layout (e.g. 'left' for ltr languages)
58
- // $style : The container style to use.
59
- @mixin post(
60
- $columns,
61
- $context : $total-columns,
62
- $from : $from-direction,
63
- $style : fix-static-misalignment()
64
- ) {
65
- $from : unquote($from);
66
- $to : opposite-position($from);
67
- margin-#{$to}: space($columns, $context, $style);
68
- }
69
-
70
- // Apply 'columns' before and/or after an element to contain it on a grid.
71
- //
72
- // $pre : The number of columns to add as margin before.
73
- // $post : The number of columns to add as margin after.
74
- // $context : [optional] The context (columns spanned by parent).
75
- // : Context is required on any nested elements.
76
- // : Context MUST NOT be declared on a root element.
77
- // $from : The start direction of your layout (e.g. 'left' for ltr languages)
78
- // $style : The container style to use.
79
- @mixin squish(
80
- $pre : false,
81
- $post : false,
82
- $context : $total-columns,
83
- $from : $from-direction,
84
- $style : fix-static-misalignment()
85
- ) {
86
- $from : unquote($from);
87
- @if $pre {
88
- @include pre($pre, $context, $from, $style)
89
- }
90
- @if $post {
91
- @include post($post, $context, $from, $style)
92
- }
93
- }
1
+ // ---------------------------------------------------------------------------
2
+ // Margin Mixins
3
+
4
+ // Apply 'columns' margin before an element to push it along the grid.
5
+ //
6
+ // $columns : The number of columns to span.
7
+ // $context : [optional] The context (columns spanned by parent).
8
+ // : Context is required on any nested elements.
9
+ // : Context MUST NOT be declared on a root element.
10
+ // $from : The start direction of your layout (e.g. 'left' for ltr languages)
11
+ // $style : The container style to use.
12
+ @mixin pre(
13
+ $columns,
14
+ $context : $total-columns,
15
+ $from : $from-direction,
16
+ $style : fix-static-misalignment()
17
+ ) {
18
+ $from : unquote($from);
19
+ margin-#{$from}: space($columns, $context, $style);
20
+ }
21
+
22
+ // 'push' is a synonymn for 'pre'
23
+ @mixin push(
24
+ $columns,
25
+ $context : $total-columns,
26
+ $from : $from-direction,
27
+ $style : fix-static-misalignment()
28
+ ) {
29
+ $from : unquote($from);
30
+ @include pre($columns, $context, $from, $style);
31
+ }
32
+
33
+ // Apply negative 'columns' margin before an element to pull it along the grid.
34
+ //
35
+ // $columns : The number of columns to span.
36
+ // $context : [optional] The context (columns spanned by parent).
37
+ // : Context is required on any nested elements.
38
+ // : Context MUST NOT be declared on a root element.
39
+ // $from : The start direction of your layout (e.g. 'left' for ltr languages)
40
+ // $style : The container style to use.
41
+ @mixin pull(
42
+ $columns,
43
+ $context : $total-columns,
44
+ $from : $from-direction,
45
+ $style : fix-static-misalignment()
46
+ ) {
47
+ $from : unquote($from);
48
+ margin-#{$from}: 0 - space($columns, $context, $style);
49
+ }
50
+
51
+ // Apply 'columns' margin after an element to contain it in a grid.
52
+ //
53
+ // $columns : The number of columns to span.
54
+ // $context : [optional] The context (columns spanned by parent).
55
+ // : Context is required on any nested elements.
56
+ // : Context MUST NOT be declared on a root element.
57
+ // $from : The start direction of your layout (e.g. 'left' for ltr languages)
58
+ // $style : The container style to use.
59
+ @mixin post(
60
+ $columns,
61
+ $context : $total-columns,
62
+ $from : $from-direction,
63
+ $style : fix-static-misalignment()
64
+ ) {
65
+ $from : unquote($from);
66
+ $to : opposite-position($from);
67
+ margin-#{$to}: space($columns, $context, $style);
68
+ }
69
+
70
+ // Apply 'columns' before and/or after an element to contain it on a grid.
71
+ //
72
+ // $pre : The number of columns to add as margin before.
73
+ // $post : The number of columns to add as margin after.
74
+ // $context : [optional] The context (columns spanned by parent).
75
+ // : Context is required on any nested elements.
76
+ // : Context MUST NOT be declared on a root element.
77
+ // $from : The start direction of your layout (e.g. 'left' for ltr languages)
78
+ // $style : The container style to use.
79
+ @mixin squish(
80
+ $pre : false,
81
+ $post : false,
82
+ $context : $total-columns,
83
+ $from : $from-direction,
84
+ $style : fix-static-misalignment()
85
+ ) {
86
+ $from : unquote($from);
87
+ @if $pre {
88
+ @include pre($pre, $context, $from, $style)
89
+ }
90
+ @if $post {
91
+ @include post($post, $context, $from, $style)
92
+ }
93
+ }
@@ -1,105 +1,105 @@
1
- // ---------------------------------------------------------------------------
2
- // Media Mixins
3
-
4
- // Create a new layout context for (@content) descendants.
5
- //
6
- // $layout-cols : a (unitless) number of columns to use for this layout.
7
- @mixin layout(
8
- $layout-cols
9
- ) {
10
- // store default $total-columns setting for later, then change it.
11
- $default-layout : $total-columns;
12
- $total-columns : $layout-cols !global;
13
-
14
- // apply children in this new layout context.
15
- @content;
16
-
17
- // return to default $total-columns setting.
18
- $total-columns : $default-layout !global;
19
- }
20
-
21
- // Nest a block of code inside a new media-query and layout context.
22
- //
23
- // $media-layout : a list of values [$min $layout $max $ie] including...
24
- // : - one unitless number (columns in a layout)
25
- // : - two optional lengths (min and max-width media-query breakpoints).
26
- // : - one optional boolean or string to trigger fallback support for IE.
27
- // $font-size : [optional] The base font-size of your layout, if you are using ems.
28
- // : - defaults to $base-font-size
29
- @mixin at-breakpoint(
30
- $media-layout,
31
- $font-size: $base-font-size
32
- ) {
33
- $media-layout : medialayout($media-layout,$font-size);
34
- $min : nth($media-layout,1);
35
- $layout : nth($media-layout,2);
36
- $max : nth($media-layout,3);
37
- $ie : nth($media-layout,4);
38
-
39
- @if not($breakpoint-media-output) and not($breakpoint-ie-output) and not($breakpoint-raw-output) {
40
- @warn "Either $breakpoint-media-output, $breakpoint-ie-output, or $breakpoint-raw-output must be true for at-breakpoint to work.";
41
- }
42
-
43
- // We need to have either a min-width breakpoint or a layout in order to proceed.
44
- @if $min or $layout or $max {
45
-
46
- // If we don't have a layout, we create one based on the min-width.
47
- @if not($layout) {
48
- $layout: get-layout($min);
49
- }
50
-
51
- // If we still don't have a layout, we have a problem.
52
- @if $layout {
53
- // Set our new layout context.
54
- @include layout($layout) {
55
- @if $breakpoint-media-output {
56
- @include with-browser-ranges(css-mediaqueries) {
57
- @if $min and $max {
58
- // Both $min and $max
59
- @media (min-width: $min) and (max-width: $max) {
60
- @content;
61
- }
62
- } @else {
63
- @if not($min) and not($max) {
64
- // Neither $min nor $max:
65
- // We can create a breakpoint based on the number of columns in the layout.
66
- $min: fix-ems(container-outer-width($width: false));
67
- }
68
- @if $min {
69
- // Min only:
70
- @media (min-width: $min) {
71
- @content;
72
- }
73
- } @else {
74
- // Max only:
75
- @media (max-width: $max) {
76
- @content;
77
- }
78
- }
79
- }
80
- }
81
- }
82
- // Set an IE fallback
83
- @if $ie and $breakpoint-ie-output {
84
- @if (type-of($ie) == 'bool') {
85
- $ie: 'lt-ie9';
86
- }
87
- .#{$ie} & {
88
- @content;
89
- }
90
- }
91
-
92
- @if $breakpoint-raw-output {
93
- @content;
94
- }
95
- }
96
- } @else {
97
- @warn "We were unable to determine a layout for your breakpoint.";
98
- }
99
-
100
- } @else {
101
- @warn "You need to provide either a valid layout (number of columns)"
102
- + "or a valid media-query min-width breakpoint (length).";
103
- }
104
-
105
- }
1
+ // ---------------------------------------------------------------------------
2
+ // Media Mixins
3
+
4
+ // Create a new layout context for (@content) descendants.
5
+ //
6
+ // $layout-cols : a (unitless) number of columns to use for this layout.
7
+ @mixin layout(
8
+ $layout-cols
9
+ ) {
10
+ // store default $total-columns setting for later, then change it.
11
+ $default-layout : $total-columns;
12
+ $total-columns : $layout-cols !global;
13
+
14
+ // apply children in this new layout context.
15
+ @content;
16
+
17
+ // return to default $total-columns setting.
18
+ $total-columns : $default-layout !global;
19
+ }
20
+
21
+ // Nest a block of code inside a new media-query and layout context.
22
+ //
23
+ // $media-layout : a list of values [$min $layout $max $ie] including...
24
+ // : - one unitless number (columns in a layout)
25
+ // : - two optional lengths (min and max-width media-query breakpoints).
26
+ // : - one optional boolean or string to trigger fallback support for IE.
27
+ // $font-size : [optional] The base font-size of your layout, if you are using ems.
28
+ // : - defaults to $base-font-size
29
+ @mixin at-breakpoint(
30
+ $media-layout,
31
+ $font-size: $base-font-size
32
+ ) {
33
+ $media-layout : medialayout($media-layout,$font-size);
34
+ $min : nth($media-layout,1);
35
+ $layout : nth($media-layout,2);
36
+ $max : nth($media-layout,3);
37
+ $ie : nth($media-layout,4);
38
+
39
+ @if not($breakpoint-media-output) and not($breakpoint-ie-output) and not($breakpoint-raw-output) {
40
+ @warn "Either $breakpoint-media-output, $breakpoint-ie-output, or $breakpoint-raw-output must be true for at-breakpoint to work.";
41
+ }
42
+
43
+ // We need to have either a min-width breakpoint or a layout in order to proceed.
44
+ @if $min or $layout or $max {
45
+
46
+ // If we don't have a layout, we create one based on the min-width.
47
+ @if not($layout) {
48
+ $layout: get-layout($min);
49
+ }
50
+
51
+ // If we still don't have a layout, we have a problem.
52
+ @if $layout {
53
+ // Set our new layout context.
54
+ @include layout($layout) {
55
+ @if $breakpoint-media-output {
56
+ @include with-browser-ranges(css-mediaqueries) {
57
+ @if $min and $max {
58
+ // Both $min and $max
59
+ @media (min-width: $min) and (max-width: $max) {
60
+ @content;
61
+ }
62
+ } @else {
63
+ @if not($min) and not($max) {
64
+ // Neither $min nor $max:
65
+ // We can create a breakpoint based on the number of columns in the layout.
66
+ $min: fix-ems(container-outer-width($width: false));
67
+ }
68
+ @if $min {
69
+ // Min only:
70
+ @media (min-width: $min) {
71
+ @content;
72
+ }
73
+ } @else {
74
+ // Max only:
75
+ @media (max-width: $max) {
76
+ @content;
77
+ }
78
+ }
79
+ }
80
+ }
81
+ }
82
+ // Set an IE fallback
83
+ @if $ie and $breakpoint-ie-output {
84
+ @if (type-of($ie) == 'bool') {
85
+ $ie: 'lt-ie9';
86
+ }
87
+ .#{$ie} & {
88
+ @content;
89
+ }
90
+ }
91
+
92
+ @if $breakpoint-raw-output {
93
+ @content;
94
+ }
95
+ }
96
+ } @else {
97
+ @warn "We were unable to determine a layout for your breakpoint.";
98
+ }
99
+
100
+ } @else {
101
+ @warn "You need to provide either a valid layout (number of columns)"
102
+ + "or a valid media-query min-width breakpoint (length).";
103
+ }
104
+
105
+ }