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,196 @@
1
+ // Foundation for Sites by ZURB
2
+ // foundation.zurb.com
3
+ // Licensed under MIT Open Source
4
+
5
+ ////
6
+ /// @group tabs
7
+ ////
8
+
9
+ /// Default margin of the tab bar.
10
+ /// @type Number
11
+ $tab-margin: 0 !default;
12
+
13
+ /// Default background color of a tab bar.
14
+ /// @type Color
15
+ $tab-background: $white !default;
16
+
17
+ /// Font color of tab item.
18
+ /// @type Color
19
+ $tab-color: $primary-color !default;
20
+
21
+ /// Active background color of a tab bar.
22
+ /// @type Color
23
+ $tab-background-active: $light-gray !default;
24
+
25
+ /// Active font color of tab item.
26
+ /// @type Color
27
+ $tab-active-color: $primary-color !default;
28
+
29
+ /// Font size of tab items.
30
+ /// @type Number
31
+ $tab-item-font-size: rem-calc(12) !default;
32
+
33
+ /// Default background color on hover for items in a Menu.
34
+ $tab-item-background-hover: $white !default;
35
+
36
+ /// Default padding of a tab item.
37
+ /// @type Number
38
+ $tab-item-padding: 1.25rem 1.5rem !default;
39
+
40
+ /// Maximum number of `expand-n` classes to include in the CSS.
41
+ /// @type Number
42
+ $tab-expand-max: 6 !default;
43
+
44
+ /// Default background color of tab content.
45
+ /// @type Color
46
+ $tab-content-background: $white !default;
47
+
48
+ /// Default border color of tab content.
49
+ /// @type Color
50
+ $tab-content-border: $light-gray !default;
51
+
52
+ /// Default text color of tab content.
53
+ /// @type Color
54
+ $tab-content-color: $body-font-color !default;
55
+
56
+ /// Default padding for tab content.
57
+ /// @type Number | List
58
+ $tab-content-padding: 1rem !default;
59
+
60
+ /// Adds styles for a tab container. Apply this to a `<ul>`.
61
+ @mixin tabs-container (
62
+ $margin: $tab-margin,
63
+ $background: $tab-background,
64
+ $border-color: $tab-content-border
65
+ ) {
66
+ @include clearfix;
67
+ margin: $margin;
68
+ border: 1px solid $border-color;
69
+ background: $background;
70
+ list-style-type: none;
71
+ }
72
+
73
+ /// Augments a tab container to have vertical tabs. Use this in conjunction with `tabs-container()`.
74
+ @mixin tabs-container-vertical {
75
+ > li {
76
+ display: block;
77
+ float: none;
78
+ width: auto;
79
+ }
80
+ }
81
+
82
+ /// Adds styles for the links within a tab container. Apply this to the `<li>` elements inside a tab container.
83
+ @mixin tabs-title (
84
+ $padding: $tab-item-padding,
85
+ $font-size: $tab-item-font-size,
86
+ $color: $tab-color,
87
+ $color-active: $tab-active-color,
88
+ $background-hover: $tab-item-background-hover,
89
+ $background-active: $tab-background-active
90
+ ) {
91
+ float: #{$global-left};
92
+
93
+ > a {
94
+ display: block;
95
+ padding: $padding;
96
+ font-size: $font-size;
97
+ line-height: 1;
98
+ color: $color;
99
+
100
+ &:hover {
101
+ background: $background-hover;
102
+ color: scale-color($color, $lightness: -14%);
103
+ }
104
+
105
+ &:focus,
106
+ &[aria-selected='true'] {
107
+ background: $background-active;
108
+ color: $color-active;
109
+ }
110
+ }
111
+ }
112
+
113
+ /// Adds styles for the wrapper that surrounds a tab group's content panes.
114
+ @mixin tabs-content (
115
+ $background: $tab-content-background,
116
+ $color: $tab-content-color,
117
+ $border-color: $tab-content-border
118
+ ) {
119
+ border: 1px solid $border-color;
120
+ border-top: 0;
121
+ background: $background;
122
+ color: $color;
123
+ transition: all 0.5s ease;
124
+ }
125
+
126
+ /// Augments a tab content container to have a vertical style, by shifting the border around. Use this in conjunction with `tabs-content()`.
127
+ @mixin tabs-content-vertical (
128
+ $border-color: $tab-content-border
129
+ ) {
130
+ border: 1px solid $border-color;
131
+ border-#{$global-left}: 0;
132
+ }
133
+
134
+ /// Adds styles for an individual tab content panel within the tab content container.
135
+ @mixin tabs-panel (
136
+ $padding: $tab-content-padding
137
+ ) {
138
+ display: none;
139
+ padding: $padding;
140
+
141
+ &.is-active {
142
+ display: block;
143
+ }
144
+ }
145
+
146
+ @mixin foundation-tabs {
147
+ .tabs {
148
+ @include tabs-container;
149
+ }
150
+
151
+ // Vertical
152
+ .tabs.vertical {
153
+ @include tabs-container-vertical;
154
+ }
155
+
156
+ // Simple
157
+ .tabs.simple {
158
+ > li > a {
159
+ padding: 0;
160
+
161
+ &:hover {
162
+ background: transparent;
163
+ }
164
+ }
165
+ }
166
+
167
+ // Primary color
168
+ .tabs.primary {
169
+ background: $primary-color;
170
+
171
+ > li > a {
172
+ color: color-pick-contrast($primary-color);
173
+
174
+ &:hover,
175
+ &:focus {
176
+ background: smart-scale($primary-color);
177
+ }
178
+ }
179
+ }
180
+
181
+ .tabs-title {
182
+ @include tabs-title;
183
+ }
184
+
185
+ .tabs-content {
186
+ @include tabs-content;
187
+ }
188
+
189
+ .tabs-content.vertical {
190
+ @include tabs-content-vertical;
191
+ }
192
+
193
+ .tabs-panel {
194
+ @include tabs-panel;
195
+ }
196
+ }
@@ -0,0 +1,67 @@
1
+ // Foundation for Sites by ZURB
2
+ // foundation.zurb.com
3
+ // Licensed under MIT Open Source
4
+
5
+ ////
6
+ /// @group thumbnail
7
+ ////
8
+
9
+ /// Border around thumbnail images.
10
+ /// @type Border
11
+ $thumbnail-border: solid 4px $white !default;
12
+
13
+ /// Bottom margin for thumbnail images.
14
+ /// @type Length
15
+ $thumbnail-margin-bottom: $global-margin !default;
16
+
17
+ /// Box shadow under thumbnail images.
18
+ /// @type Shadow
19
+ $thumbnail-shadow: 0 0 0 1px rgba($black, 0.2) !default;
20
+
21
+ /// Box shadow under thumbnail images.
22
+ /// @type Shadow
23
+ $thumbnail-shadow-hover: 0 0 6px 1px rgba($primary-color, 0.5) !default;
24
+
25
+ /// Transition proprties for thumbnail images.
26
+ /// @type Transition
27
+ $thumbnail-transition: box-shadow 200ms ease-out !default;
28
+
29
+ /// Default radius for thumbnail images.
30
+ /// @type Number
31
+ $thumbnail-radius: $global-radius !default;
32
+
33
+ /// Adds thumbnail styles to an element.
34
+ @mixin thumbnail {
35
+ display: inline-block;
36
+ max-width: 100%;
37
+ margin-bottom: $thumbnail-margin-bottom;
38
+
39
+ border: $thumbnail-border;
40
+ border-radius: $thumbnail-radius;
41
+ box-shadow: $thumbnail-shadow;
42
+
43
+ line-height: 0;
44
+ }
45
+
46
+ @mixin thumbnail-link {
47
+ transition: $thumbnail-transition;
48
+
49
+ &:hover,
50
+ &:focus {
51
+ box-shadow: $thumbnail-shadow-hover;
52
+ }
53
+
54
+ image {
55
+ box-shadow: none;
56
+ }
57
+ }
58
+
59
+ @mixin foundation-thumbnail {
60
+ .thumbnail {
61
+ @include thumbnail;
62
+ }
63
+
64
+ a.thumbnail {
65
+ @include thumbnail-link;
66
+ }
67
+ }
@@ -0,0 +1,84 @@
1
+ // Foundation for Sites by ZURB
2
+ // foundation.zurb.com
3
+ // Licensed under MIT Open Source
4
+
5
+ ////
6
+ /// @group title-bar
7
+ ////
8
+
9
+ /// Background color of a title bar.
10
+ /// @type Color
11
+ $titlebar-background: $black !default;
12
+
13
+ /// Color of text inside a title bar.
14
+ /// @type Color
15
+ $titlebar-color: $white !default;
16
+
17
+ /// Padding inside a title bar.
18
+ /// @type Length
19
+ $titlebar-padding: 0.5rem !default;
20
+
21
+ /// Font weight of text inside a title bar.
22
+ /// @type Weight
23
+ $titlebar-text-font-weight: bold !default;
24
+
25
+ /// Color of menu icons inside a title bar.
26
+ /// @type Color
27
+ $titlebar-icon-color: $white !default;
28
+
29
+ /// Color of menu icons inside a title bar on hover.
30
+ /// @type Color
31
+ $titlebar-icon-color-hover: $medium-gray !default;
32
+
33
+ /// Spacing between the menu icon and text inside a title bar.
34
+ /// @type Length
35
+ $titlebar-icon-spacing: 0.25rem !default;
36
+
37
+ @mixin foundation-title-bar {
38
+ .title-bar {
39
+ padding: $titlebar-padding;
40
+ background: $titlebar-background;
41
+ color: $titlebar-color;
42
+
43
+ @if $global-flexbox {
44
+ display: flex;
45
+ justify-content: flex-start;
46
+ align-items: center;
47
+ }
48
+ @else {
49
+ @include clearfix;
50
+ }
51
+
52
+ .menu-icon {
53
+ margin-#{$global-left}: $titlebar-icon-spacing;
54
+ margin-#{$global-right}: $titlebar-icon-spacing;
55
+ }
56
+ }
57
+
58
+ @if $global-flexbox {
59
+ .title-bar-left,
60
+ .title-bar-right {
61
+ flex: 1 1 0px; // sass-lint:disable-line zero-unit
62
+ }
63
+
64
+ .title-bar-right {
65
+ text-align: right;
66
+ }
67
+ }
68
+ @else {
69
+ .title-bar-left {
70
+ float: left;
71
+ }
72
+
73
+ .title-bar-right {
74
+ float: right;
75
+ text-align: right;
76
+ }
77
+ }
78
+
79
+ .title-bar-title {
80
+ display: inline-block;
81
+ vertical-align: middle;
82
+ font-weight: $titlebar-text-font-weight;
83
+ }
84
+ }
@@ -0,0 +1,160 @@
1
+ // Foundation for Sites by ZURB
2
+ // foundation.zurb.com
3
+ // Licensed under MIT Open Source
4
+
5
+ ////
6
+ /// @group tooltip
7
+ ////
8
+
9
+ /// Default cursor of the defined term.
10
+ /// @type Keyword
11
+ $has-tip-cursor: help !default;
12
+
13
+ /// Default font weight of the defined term.
14
+ /// @type Keyword | Number
15
+ $has-tip-font-weight: $global-weight-bold !default;
16
+
17
+ /// Default border bottom of the defined term.
18
+ /// @type List
19
+ $has-tip-border-bottom: dotted 1px $dark-gray !default;
20
+
21
+ /// Default color of the tooltip background.
22
+ /// @type Color
23
+ $tooltip-background-color: $black !default;
24
+
25
+ /// Default color of the tooltip font.
26
+ /// @type Color
27
+ $tooltip-color: $white !default;
28
+
29
+ /// Default padding of the tooltip background.
30
+ /// @type Number
31
+ $tooltip-padding: 0.75rem !default;
32
+
33
+ /// Default max width for tooltips.
34
+ /// @type Number
35
+ $tooltip-max-width: 10rem !default;
36
+
37
+ /// Default font size of the tooltip text. By default, we recommend a smaller font size than the body copy.
38
+ /// @type Number
39
+ $tooltip-font-size: $small-font-size !default;
40
+
41
+ /// Default pip width for tooltips.
42
+ /// @type Number
43
+ $tooltip-pip-width: 0.75rem !default;
44
+
45
+ /// Default pip height for tooltips. This is helpful for calculating the distance of the tooltip from the tooltip word.
46
+ /// @type Number
47
+ $tooltip-pip-height: $tooltip-pip-width * 0.866 !default;
48
+
49
+ /// Default radius for tooltips.
50
+ /// @type Number
51
+ $tooltip-radius: $global-radius !default;
52
+
53
+ @mixin has-tip {
54
+ position: relative;
55
+ display: inline-block;
56
+
57
+ border-bottom: $has-tip-border-bottom;
58
+ font-weight: $has-tip-font-weight;
59
+ cursor: $has-tip-cursor;
60
+ }
61
+
62
+ @mixin tooltip {
63
+ position: absolute;
64
+ top: calc(100% + #{$tooltip-pip-height});
65
+ z-index: 1200;
66
+
67
+ max-width: $tooltip-max-width;
68
+ padding: $tooltip-padding;
69
+
70
+ border-radius: $tooltip-radius;
71
+ background-color: $tooltip-background-color;
72
+ font-size: $tooltip-font-size;
73
+ color: $tooltip-color;
74
+
75
+ &::before {
76
+ position: absolute;
77
+ }
78
+
79
+ &.bottom {
80
+ &::before {
81
+ @include css-triangle($tooltip-pip-width, $tooltip-background-color, up);
82
+ bottom: 100%;
83
+ }
84
+
85
+ &.align-center::before {
86
+ left: 50%;
87
+ transform: translateX(-50%);
88
+ }
89
+ }
90
+
91
+ &.top {
92
+ &::before {
93
+ @include css-triangle($tooltip-pip-width, $tooltip-background-color, down);
94
+ top: 100%;
95
+ bottom: auto;
96
+ }
97
+
98
+ &.align-center::before {
99
+ left: 50%;
100
+ transform: translateX(-50%);
101
+ }
102
+ }
103
+
104
+ &.left {
105
+ &::before {
106
+ @include css-triangle($tooltip-pip-width, $tooltip-background-color, right);
107
+ left: 100%;
108
+ }
109
+
110
+ &.align-center::before {
111
+ bottom: auto;
112
+ top: 50%;
113
+ transform: translateY(-50%);
114
+ }
115
+ }
116
+
117
+ &.right {
118
+ &::before {
119
+ @include css-triangle($tooltip-pip-width, $tooltip-background-color, left);
120
+ right: 100%;
121
+ left: auto;
122
+ }
123
+
124
+ &.align-center::before {
125
+ bottom: auto;
126
+ top: 50%;
127
+ transform: translateY(-50%);
128
+ }
129
+ }
130
+
131
+ &.align-top::before {
132
+ bottom: auto;
133
+ top: 10%;
134
+ }
135
+
136
+ &.align-bottom::before {
137
+ bottom: 10%;
138
+ top: auto;
139
+ }
140
+
141
+ &.align-left::before {
142
+ left: 10%;
143
+ right: auto;
144
+ }
145
+
146
+ &.align-right::before {
147
+ left: auto;
148
+ right: 10%;
149
+ }
150
+ }
151
+
152
+ @mixin foundation-tooltip {
153
+ .has-tip {
154
+ @include has-tip;
155
+ }
156
+
157
+ .tooltip {
158
+ @include tooltip;
159
+ }
160
+ }
@@ -0,0 +1,175 @@
1
+ // Foundation for Sites by ZURB
2
+ // foundation.zurb.com
3
+ // Licensed under MIT Open Source
4
+
5
+ ////
6
+ /// @group top-bar
7
+ ////
8
+
9
+ /// Padding for the top bar.
10
+ /// @type Number
11
+ $topbar-padding: 0.5rem !default;
12
+
13
+ /// Background color for the top bar. This color also cascades to menus within the top bar.
14
+ /// @type Color
15
+ $topbar-background: $light-gray !default;
16
+
17
+ /// Background color submenus within the top bar. Usefull if $topbar-background is transparent.
18
+ /// @type Color
19
+ $topbar-submenu-background: $topbar-background !default;
20
+
21
+ /// Spacing for the top bar title.
22
+ /// @type Number
23
+ $topbar-title-spacing: 0.5rem 1rem 0.5rem 0 !default;
24
+
25
+ /// Maximum width of `<input>` elements inside the top bar.
26
+ /// @type Number
27
+ $topbar-input-width: 200px !default;
28
+
29
+ /// Breakpoint at which top bar switches from mobile to desktop view.
30
+ /// @type Breakpoint
31
+ $topbar-unstack-breakpoint: medium !default;
32
+
33
+ /// Adds styles for a top bar container.
34
+ @mixin top-bar-container {
35
+ @if $global-flexbox {
36
+ display: flex;
37
+ flex-wrap: nowrap;
38
+ justify-content: space-between;
39
+ align-items: center;
40
+ }
41
+ @else {
42
+ @include clearfix;
43
+ }
44
+
45
+ padding: $topbar-padding;
46
+
47
+ &,
48
+ ul {
49
+ background-color: $topbar-background;
50
+ }
51
+
52
+ // Check if $topbar-background is differnt from $topbar-background-submenu
53
+ @if ($topbar-background != $topbar-submenu-background) {
54
+ ul ul {
55
+ background-color: $topbar-submenu-background;
56
+ }
57
+ }
58
+
59
+ // Restrain width of inputs by default to make them easier to arrange
60
+ input {
61
+ max-width: $topbar-input-width;
62
+ margin-#{$global-right}: 1rem;
63
+ }
64
+
65
+ // The above styles shouldn't apply to input group fields
66
+ .input-group-field {
67
+ width: 100%;
68
+ margin-#{$global-right}: 0;
69
+ }
70
+
71
+ input.button { // sass-lint:disable-line no-qualifying-elements
72
+ width: auto;
73
+ }
74
+ }
75
+
76
+ /// Makes sections of a top bar stack on top of each other.
77
+ @mixin top-bar-stacked {
78
+ @if $global-flexbox {
79
+ flex-wrap: wrap;
80
+
81
+ // Sub-sections
82
+ .top-bar-left,
83
+ .top-bar-right {
84
+ flex: 0 0 100%;
85
+ max-width: 100%;
86
+ }
87
+ }
88
+ @else {
89
+ // Sub-sections
90
+ .top-bar-left,
91
+ .top-bar-right {
92
+ width: 100%;
93
+ }
94
+ }
95
+ }
96
+
97
+ /// Undoes the CSS applied by the `top-bar-stacked()` mixin.
98
+ @mixin top-bar-unstack {
99
+ @if $global-flexbox {
100
+ flex-wrap: nowrap;
101
+
102
+ .top-bar-left {
103
+ flex: 1 1 auto;
104
+ margin-right: auto;
105
+ }
106
+
107
+ .top-bar-right {
108
+ flex: 0 1 auto;
109
+ margin-left: auto;
110
+ }
111
+ }
112
+ @else {
113
+ .top-bar-left,
114
+ .top-bar-right {
115
+ width: auto;
116
+ }
117
+ }
118
+ }
119
+
120
+ @mixin foundation-top-bar {
121
+ // Top bar container
122
+ .top-bar {
123
+ @include top-bar-container;
124
+
125
+ // Stack on small screens by default
126
+ @include top-bar-stacked;
127
+
128
+ @include breakpoint($topbar-unstack-breakpoint) {
129
+ @include top-bar-unstack;
130
+ }
131
+
132
+ // Generate classes for stacking on each screen size (defined in $breakpoint-classes)
133
+ @each $size in $breakpoint-classes {
134
+ @if $size != $-zf-zero-breakpoint {
135
+ &.stacked-for-#{$size} {
136
+ @include breakpoint($size down) {
137
+ @include top-bar-stacked;
138
+ }
139
+ }
140
+ }
141
+ }
142
+ }
143
+
144
+ // Sub-sections
145
+ @if $global-flexbox {
146
+ .top-bar-title {
147
+ flex: 0 0 auto;
148
+ margin: $topbar-title-spacing;
149
+ }
150
+
151
+ .top-bar-left,
152
+ .top-bar-right {
153
+ flex: 0 0 auto;
154
+ }
155
+ }
156
+ @else {
157
+ .top-bar-title {
158
+ display: inline-block;
159
+ float: left;
160
+ padding: $topbar-title-spacing;
161
+
162
+ .menu-icon {
163
+ bottom: 2px;
164
+ }
165
+ }
166
+
167
+ .top-bar-left {
168
+ float: left;
169
+ }
170
+
171
+ .top-bar-right {
172
+ float: right;
173
+ }
174
+ }
175
+ }