jekyll-theme-foundation 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (137) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +21 -0
  3. data/README.md +48 -0
  4. data/_includes/google-analytics.html +8 -0
  5. data/_includes/head.html +17 -0
  6. data/_includes/scripts.html +4 -0
  7. data/_layouts/default.html +16 -0
  8. data/_layouts/home.html +5 -0
  9. data/_layouts/page.html +5 -0
  10. data/_layouts/post.html +5 -0
  11. data/_sass/_vendor/normalize-scss/sass/_normalize.scss +3 -0
  12. data/_sass/_vendor/normalize-scss/sass/normalize/_import-now.scss +11 -0
  13. data/_sass/_vendor/normalize-scss/sass/normalize/_normalize-mixin.scss +676 -0
  14. data/_sass/_vendor/normalize-scss/sass/normalize/_variables.scss +36 -0
  15. data/_sass/_vendor/normalize-scss/sass/normalize/_vertical-rhythm.scss +61 -0
  16. data/_sass/_vendor/sassy-lists/stylesheets/functions/_contain.scss +31 -0
  17. data/_sass/_vendor/sassy-lists/stylesheets/functions/_purge.scss +38 -0
  18. data/_sass/_vendor/sassy-lists/stylesheets/functions/_remove.scss +31 -0
  19. data/_sass/_vendor/sassy-lists/stylesheets/functions/_replace.scss +46 -0
  20. data/_sass/_vendor/sassy-lists/stylesheets/functions/_to-list.scss +27 -0
  21. data/_sass/_vendor/sassy-lists/stylesheets/helpers/_missing-dependencies.scss +25 -0
  22. data/_sass/_vendor/sassy-lists/stylesheets/helpers/_true.scss +13 -0
  23. data/_sass/assets/foundation-float.scss +5 -0
  24. data/_sass/assets/foundation-prototype.scss +3 -0
  25. data/_sass/assets/foundation-rtl.scss +5 -0
  26. data/_sass/assets/foundation.scss +3 -0
  27. data/_sass/jekyll-theme-foundation.scss +5 -0
  28. data/_sass/scss/_global.scss +249 -0
  29. data/_sass/scss/components/_accordion-menu.scss +171 -0
  30. data/_sass/scss/components/_accordion.scss +155 -0
  31. data/_sass/scss/components/_badge.scss +63 -0
  32. data/_sass/scss/components/_breadcrumbs.scss +117 -0
  33. data/_sass/scss/components/_button-group.scss +253 -0
  34. data/_sass/scss/components/_button.scss +385 -0
  35. data/_sass/scss/components/_callout.scss +106 -0
  36. data/_sass/scss/components/_card.scss +129 -0
  37. data/_sass/scss/components/_close-button.scss +102 -0
  38. data/_sass/scss/components/_drilldown.scss +142 -0
  39. data/_sass/scss/components/_dropdown-menu.scss +274 -0
  40. data/_sass/scss/components/_dropdown.scss +79 -0
  41. data/_sass/scss/components/_flex-video.scss +1 -0
  42. data/_sass/scss/components/_flex.scss +117 -0
  43. data/_sass/scss/components/_float.scss +27 -0
  44. data/_sass/scss/components/_label.scss +64 -0
  45. data/_sass/scss/components/_media-object.scss +114 -0
  46. data/_sass/scss/components/_menu-icon.scss +9 -0
  47. data/_sass/scss/components/_menu.scss +495 -0
  48. data/_sass/scss/components/_off-canvas.scss +506 -0
  49. data/_sass/scss/components/_orbit.scss +196 -0
  50. data/_sass/scss/components/_pagination.scss +193 -0
  51. data/_sass/scss/components/_progress-bar.scss +64 -0
  52. data/_sass/scss/components/_responsive-embed.scss +70 -0
  53. data/_sass/scss/components/_reveal.scss +180 -0
  54. data/_sass/scss/components/_slider.scss +137 -0
  55. data/_sass/scss/components/_sticky.scss +39 -0
  56. data/_sass/scss/components/_switch.scss +247 -0
  57. data/_sass/scss/components/_table.scss +330 -0
  58. data/_sass/scss/components/_tabs.scss +196 -0
  59. data/_sass/scss/components/_thumbnail.scss +67 -0
  60. data/_sass/scss/components/_title-bar.scss +84 -0
  61. data/_sass/scss/components/_tooltip.scss +160 -0
  62. data/_sass/scss/components/_top-bar.scss +175 -0
  63. data/_sass/scss/components/_visibility.scss +132 -0
  64. data/_sass/scss/forms/_checkbox.scss +41 -0
  65. data/_sass/scss/forms/_error.scss +88 -0
  66. data/_sass/scss/forms/_fieldset.scss +53 -0
  67. data/_sass/scss/forms/_forms.scss +34 -0
  68. data/_sass/scss/forms/_help-text.scss +30 -0
  69. data/_sass/scss/forms/_input-group.scss +142 -0
  70. data/_sass/scss/forms/_label.scss +50 -0
  71. data/_sass/scss/forms/_meter.scss +116 -0
  72. data/_sass/scss/forms/_progress.scss +94 -0
  73. data/_sass/scss/forms/_range.scss +149 -0
  74. data/_sass/scss/forms/_select.scss +86 -0
  75. data/_sass/scss/forms/_text.scss +179 -0
  76. data/_sass/scss/foundation.scss +133 -0
  77. data/_sass/scss/grid/_classes.scss +176 -0
  78. data/_sass/scss/grid/_column.scss +112 -0
  79. data/_sass/scss/grid/_flex-grid.scss +259 -0
  80. data/_sass/scss/grid/_grid.scss +48 -0
  81. data/_sass/scss/grid/_gutter.scss +82 -0
  82. data/_sass/scss/grid/_layout.scss +76 -0
  83. data/_sass/scss/grid/_position.scss +76 -0
  84. data/_sass/scss/grid/_row.scss +99 -0
  85. data/_sass/scss/grid/_size.scss +24 -0
  86. data/_sass/scss/prototype/_arrow.scss +36 -0
  87. data/_sass/scss/prototype/_border-box.scss +35 -0
  88. data/_sass/scss/prototype/_border-none.scss +35 -0
  89. data/_sass/scss/prototype/_bordered.scss +54 -0
  90. data/_sass/scss/prototype/_box.scss +23 -0
  91. data/_sass/scss/prototype/_display.scss +50 -0
  92. data/_sass/scss/prototype/_font-styling.scss +95 -0
  93. data/_sass/scss/prototype/_list-style-type.scss +95 -0
  94. data/_sass/scss/prototype/_overflow.scss +72 -0
  95. data/_sass/scss/prototype/_position.scss +114 -0
  96. data/_sass/scss/prototype/_prototype.scss +87 -0
  97. data/_sass/scss/prototype/_relation.scss +157 -0
  98. data/_sass/scss/prototype/_rotate.scss +31 -0
  99. data/_sass/scss/prototype/_rounded.scss +54 -0
  100. data/_sass/scss/prototype/_separator.scss +96 -0
  101. data/_sass/scss/prototype/_shadow.scss +43 -0
  102. data/_sass/scss/prototype/_sizing.scss +73 -0
  103. data/_sass/scss/prototype/_spacing.scss +204 -0
  104. data/_sass/scss/prototype/_text-decoration.scss +48 -0
  105. data/_sass/scss/prototype/_text-transformation.scss +48 -0
  106. data/_sass/scss/prototype/_text-utilities.scss +88 -0
  107. data/_sass/scss/settings/_settings.scss +869 -0
  108. data/_sass/scss/typography/_alignment.scss +22 -0
  109. data/_sass/scss/typography/_base.scss +509 -0
  110. data/_sass/scss/typography/_helpers.scss +80 -0
  111. data/_sass/scss/typography/_print.scss +86 -0
  112. data/_sass/scss/typography/_typography.scss +26 -0
  113. data/_sass/scss/util/_breakpoint.scss +348 -0
  114. data/_sass/scss/util/_color.scss +129 -0
  115. data/_sass/scss/util/_direction.scss +31 -0
  116. data/_sass/scss/util/_flex.scss +85 -0
  117. data/_sass/scss/util/_math.scss +72 -0
  118. data/_sass/scss/util/_mixins.scss +313 -0
  119. data/_sass/scss/util/_selector.scss +41 -0
  120. data/_sass/scss/util/_typography.scss +26 -0
  121. data/_sass/scss/util/_unit.scss +152 -0
  122. data/_sass/scss/util/_util.scss +14 -0
  123. data/_sass/scss/util/_value.scss +160 -0
  124. data/_sass/scss/xy-grid/_cell.scss +169 -0
  125. data/_sass/scss/xy-grid/_classes.scss +476 -0
  126. data/_sass/scss/xy-grid/_collapse.scss +74 -0
  127. data/_sass/scss/xy-grid/_frame.scss +85 -0
  128. data/_sass/scss/xy-grid/_grid.scss +35 -0
  129. data/_sass/scss/xy-grid/_gutters.scss +45 -0
  130. data/_sass/scss/xy-grid/_layout.scss +33 -0
  131. data/_sass/scss/xy-grid/_position.scss +28 -0
  132. data/_sass/scss/xy-grid/_xy-grid.scss +51 -0
  133. data/assets/css/main.scss +5 -0
  134. data/assets/css/motion-ui.min.css +1 -0
  135. data/assets/js/foundation.min.js +5 -0
  136. data/assets/js/motion-ui.min.js +1 -0
  137. metadata +235 -0
@@ -0,0 +1,495 @@
1
+ // Foundation for Sites by ZURB
2
+ // foundation.zurb.com
3
+ // Licensed under MIT Open Source
4
+
5
+ ////
6
+ /// @group menu
7
+ ////
8
+
9
+ /// Margin of a menu.
10
+ /// @type Number
11
+ $menu-margin: 0 !default;
12
+
13
+ /// Left-hand margin of a nested menu.
14
+ /// @type Number
15
+ $menu-nested-margin: $global-menu-nested-margin !default;
16
+
17
+ /// Padding for items in a pill menu.
18
+ /// @type Number
19
+ $menu-items-padding: $global-menu-padding !default;
20
+
21
+ /// margin for items in a simple menu.
22
+ /// @type Number
23
+ $menu-simple-margin: 1rem !default;
24
+
25
+ /// Text color of an active menu item.
26
+ /// @type Color
27
+ $menu-item-color-active: $white !default;
28
+
29
+ /// Background color of an active menu item.
30
+ /// @type Color
31
+ $menu-item-background-active: get-color(primary) !default;
32
+
33
+ /// Spacing between an icon and text in a menu item.
34
+ /// @type Number
35
+ $menu-icon-spacing: 0.25rem !default;
36
+
37
+ /// Background color for an hovered menu item.
38
+ /// @type Color
39
+ $menu-item-background-hover: $light-gray !default;
40
+
41
+ /// Backward compatibility for menu state. If true, this duplicate `active` with `is-active`.
42
+ /// But please note that `active` will be removed in upcoming versions.
43
+ /// @type Boolean
44
+ $menu-state-back-compat: true !default;
45
+
46
+ /// Backward compatibility for menu centered. If true, this duplicate `.menu-centered > .menu` with `.menu.align-center`.
47
+ /// But please note that `menu-centered` will be removed in upcoming versions.
48
+ /// @type Boolean
49
+ $menu-centered-back-compat: true !default;
50
+
51
+ /// Backward compatibility for using `icon-*` classes without `.icons` classes
52
+ /// But please note that this backward compatibility will be removed in upcoming versions.
53
+ /// @type Boolean
54
+ $menu-icons-back-compat: true !default;
55
+
56
+ /// Creates the base styles for a Menu.
57
+ @mixin menu-base {
58
+ padding: 0;
59
+ margin: 0;
60
+ list-style: none;
61
+ position: relative;
62
+
63
+ @if $global-flexbox {
64
+ display: flex;
65
+ flex-wrap: wrap;
66
+ }
67
+
68
+ li {
69
+ @include disable-mouse-outline;
70
+ }
71
+
72
+ a,
73
+ .button {
74
+ line-height: 1;
75
+ text-decoration: none;
76
+ display: block;
77
+ padding: $menu-items-padding;
78
+ }
79
+
80
+ // Reset styles of inner elements
81
+ input,
82
+ select,
83
+ a,
84
+ button {
85
+ margin-bottom: 0;
86
+ }
87
+
88
+ input {
89
+ display: inline-block;
90
+ }
91
+ }
92
+
93
+ /// Expands the items of a Menu, so each item is the same width.
94
+ @mixin menu-expand {
95
+ @if $global-flexbox {
96
+ li {
97
+ flex: 1 1 0px; // sass-lint:disable-line zero-unit
98
+ }
99
+ }
100
+ @else {
101
+ display: table;
102
+ width: 100%;
103
+
104
+ > li {
105
+ display: table-cell;
106
+ vertical-align: middle;
107
+ }
108
+ }
109
+ }
110
+
111
+ /// Align menu items.
112
+ @mixin menu-align($alignment) {
113
+ @if $alignment == left {
114
+ @if $global-flexbox {
115
+ justify-content: flex-start;
116
+ }
117
+ @else {
118
+ text-align: $global-left;
119
+ }
120
+ }
121
+ @else if $alignment == right {
122
+ @if $global-flexbox {
123
+ li {
124
+ display: flex;
125
+ justify-content: flex-end;
126
+
127
+ .submenu li {
128
+ justify-content: flex-start;
129
+ }
130
+ }
131
+
132
+ &.vertical li {
133
+ display: block;
134
+ text-align: $global-right;
135
+
136
+ .submenu li {
137
+ text-align: $global-right;
138
+ }
139
+ }
140
+ }
141
+ @else {
142
+ text-align: $global-right;
143
+
144
+ .submenu li {
145
+ text-align: $global-left;
146
+ }
147
+
148
+ &.vertical {
149
+ .submenu li {
150
+ text-align: $global-right;
151
+ }
152
+ }
153
+ }
154
+ }
155
+ @else if $alignment == center {
156
+ @if $global-flexbox {
157
+ li {
158
+ display: flex;
159
+ justify-content: center;
160
+
161
+ .submenu li {
162
+ justify-content: flex-start;
163
+ }
164
+ }
165
+ }
166
+ @else {
167
+ text-align: center;
168
+
169
+ .submenu li {
170
+ text-align: $global-left;
171
+ }
172
+ }
173
+ }
174
+ }
175
+
176
+ /// Sets the direction of a Menu.
177
+ /// @param {Keyword} $dir [horizontal] - Direction of the Menu. Can be `horizontal` or `vertical`.
178
+ @mixin menu-direction($dir: horizontal) {
179
+ @if $dir == horizontal {
180
+ @if $global-flexbox {
181
+ flex-wrap: wrap;
182
+ flex-direction: row;
183
+ }
184
+ @else {
185
+ li {
186
+ display: inline-block;
187
+ }
188
+ }
189
+ }
190
+ @else if $dir == vertical {
191
+ @if $global-flexbox {
192
+ flex-wrap: nowrap;
193
+ flex-direction: column;
194
+ }
195
+ @else {
196
+ li {
197
+ display: block;
198
+ }
199
+ }
200
+ }
201
+ @else {
202
+ @warn 'The direction used for menu-direction() must be horizontal or vertical.';
203
+ }
204
+ }
205
+
206
+ /// Creates a simple Menu, which has no padding or hover state.
207
+ /// @param {Keyword} $dir [$global-left] - Direction of the menu. This effects the side of the `<li>` that receives the margin.
208
+ /// @param {Number} $margin [$menu-simple-margin] - The margin to apply to each `<li>`.
209
+ @mixin menu-simple($dir: $global-left, $margin: $menu-simple-margin) {
210
+ @if $global-flexbox {
211
+ align-items: center;
212
+ }
213
+
214
+ li + li {
215
+ margin-#{$dir}: $margin;
216
+ }
217
+
218
+ a {
219
+ padding: 0;
220
+ }
221
+ }
222
+
223
+ /// Adds styles for a nested Menu, by adding `margin-left` to the menu.
224
+ /// @param {Keyword|Number} $margin [$menu-nested-margin] - Length of the margin.
225
+ /// @param {Keyword} $nested-alignment [left] - Alignment of the nested class
226
+ @mixin menu-nested(
227
+ $margin: $menu-nested-margin,
228
+ $nested-alignment: left
229
+ ) {
230
+ @if $nested-alignment == right {
231
+ margin-#{$global-right}: $margin;
232
+ margin-#{$global-left}: 0;
233
+ }
234
+ @else {
235
+ margin-#{$global-right}: 0;
236
+ margin-#{$global-left}: $margin;
237
+ }
238
+
239
+ }
240
+
241
+ /// Adds basic styles for icons in menus.
242
+ @mixin menu-icons() {
243
+ @if $global-flexbox {
244
+ a {
245
+ display: flex;
246
+ }
247
+ }
248
+ @else {
249
+ img,
250
+ i,
251
+ svg {
252
+ vertical-align: middle;
253
+
254
+ + span {
255
+ vertical-align: middle;
256
+ }
257
+ }
258
+ }
259
+ }
260
+
261
+ /// Adds position classes for icons within a menu.
262
+ @mixin menu-icon-position($position: left, $spacing: $menu-icon-spacing) {
263
+ @if $position == left {
264
+ li a {
265
+ @if $global-flexbox {
266
+ flex-flow: row nowrap;
267
+ }
268
+
269
+ img,
270
+ i,
271
+ svg {
272
+ margin-#{$global-right}: $spacing;
273
+
274
+ @if not $global-flexbox {
275
+ display: inline-block;
276
+ }
277
+ }
278
+ }
279
+ }
280
+ @else if $position == right {
281
+ li a {
282
+ @if $global-flexbox {
283
+ flex-flow: row nowrap;
284
+ }
285
+
286
+ img,
287
+ i,
288
+ svg {
289
+ margin-#{$global-left}: $spacing;
290
+
291
+ @if not $global-flexbox {
292
+ display: inline-block;
293
+ }
294
+ }
295
+ }
296
+ }
297
+ @else if $position == top {
298
+ li a {
299
+ @if $global-flexbox {
300
+ flex-flow: column nowrap;
301
+ }
302
+ @else {
303
+ text-align: center;
304
+ }
305
+
306
+ img,
307
+ i,
308
+ svg {
309
+ @if not $global-flexbox {
310
+ display: block;
311
+ margin: 0 auto $spacing;
312
+ }
313
+ @else {
314
+ align-self: stretch;
315
+ margin-bottom: $spacing;
316
+ text-align: center;
317
+ }
318
+ }
319
+ }
320
+ }
321
+ @else if $position == bottom {
322
+ li a {
323
+ @if $global-flexbox {
324
+ flex-flow: column nowrap;
325
+ }
326
+ @else {
327
+ text-align: center;
328
+ }
329
+
330
+ img,
331
+ i,
332
+ svg {
333
+ @if not $global-flexbox {
334
+ display: block;
335
+ margin: $spacing auto 0;
336
+ }
337
+ @else {
338
+ align-self: stretch;
339
+ margin-bottom: $spacing;
340
+ text-align: center;
341
+ }
342
+ }
343
+ }
344
+ }
345
+ }
346
+
347
+ @mixin menu-text {
348
+ padding: $global-menu-padding;
349
+
350
+ font-weight: bold;
351
+ line-height: 1;
352
+ color: inherit;
353
+ }
354
+
355
+ @mixin menu-state-active {
356
+ background: $menu-item-background-active;
357
+ color: $menu-item-color-active;
358
+ }
359
+
360
+ @mixin foundation-menu {
361
+ .menu {
362
+ @include menu-base;
363
+
364
+ // Default orientation: horizontal
365
+ &, &.horizontal {
366
+ @include menu-direction(horizontal);
367
+ }
368
+
369
+ // Vertical orientation modifier
370
+ &.vertical {
371
+ @include menu-direction(vertical);
372
+ }
373
+
374
+ // Even-width modifier for horizontal orientation
375
+ &.expanded {
376
+ @include menu-expand;
377
+ }
378
+
379
+ // Simple
380
+ &.simple {
381
+ @include menu-simple;
382
+ }
383
+
384
+ // Breakpoint specific versions
385
+ @include -zf-each-breakpoint($small: false) {
386
+ &.#{$-zf-size}-horizontal {
387
+ @include menu-direction(horizontal);
388
+ }
389
+
390
+ &.#{$-zf-size}-vertical {
391
+ @include menu-direction(vertical);
392
+ }
393
+
394
+ &.#{$-zf-size}-expanded {
395
+ @include menu-expand;
396
+ }
397
+
398
+ &.#{$-zf-size}-simple {
399
+ @include menu-expand;
400
+ }
401
+ }
402
+
403
+ // Nesting
404
+ &.nested {
405
+ @include menu-nested;
406
+ }
407
+
408
+ // Icon Base Styles
409
+ &.icons {
410
+ @include menu-icons;
411
+ }
412
+
413
+ // Backward Compatibility for active state
414
+ @if $menu-icons-back-compat {
415
+ &.icon-top,
416
+ &.icon-right,
417
+ &.icon-bottom,
418
+ &.icon-left {
419
+ @include menu-icons;
420
+ }
421
+ }
422
+
423
+ // Icon Left
424
+ &.icon-left {
425
+ @include menu-icon-position(left);
426
+ }
427
+
428
+ // Icon Right
429
+ &.icon-right {
430
+ @include menu-icon-position(right);
431
+ }
432
+
433
+ // Icon Top
434
+ &.icon-top {
435
+ @include menu-icon-position(top);
436
+ }
437
+
438
+ // Icon Bottom
439
+ &.icon-bottom {
440
+ @include menu-icon-position(bottom);
441
+ }
442
+
443
+ // Active state
444
+ .is-active > a {
445
+ @include menu-state-active;
446
+ }
447
+
448
+ // Backward Compatibility for active state
449
+ @if $menu-state-back-compat {
450
+ .active > a {
451
+ @include menu-state-active;
452
+ }
453
+ }
454
+
455
+ // Align left
456
+ &.align-#{$global-left} {
457
+ @include menu-align(left);
458
+ }
459
+
460
+ // Align right
461
+ &.align-#{$global-right} {
462
+ @include menu-align(right);
463
+
464
+ .nested {
465
+ @include menu-nested($nested-alignment: right);
466
+ }
467
+ }
468
+
469
+ // Align center
470
+ &.align-center {
471
+ @include menu-align(center);
472
+ }
473
+
474
+ .menu-text {
475
+ @include menu-text;
476
+ }
477
+ }
478
+
479
+ @if $menu-centered-back-compat {
480
+ .menu-centered {
481
+ > .menu {
482
+ @if $global-flexbox {
483
+ justify-content: center;
484
+ }
485
+
486
+ @include menu-align(center);
487
+ }
488
+ }
489
+ }
490
+
491
+ // Prevent FOUC when using the Responsive Menu plugin
492
+ .no-js [data-responsive-menu] ul {
493
+ display: none;
494
+ }
495
+ }