bootstrap-italia 2.17.3 → 3.0.0-alpha.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 (155) hide show
  1. package/README.EN.md +1 -1
  2. package/README.md +1 -1
  3. package/dist/css/bootstrap-italia.min.css +1 -9
  4. package/dist/css/bootstrap-italia.min.css.map +1 -1
  5. package/dist/fonts/Titillium_Sans_Pro/OFL.txt +92 -0
  6. package/dist/fonts/Titillium_Sans_Pro/TitilliumSansPro-Bold.woff +0 -0
  7. package/dist/fonts/Titillium_Sans_Pro/TitilliumSansPro-Bold.woff2 +0 -0
  8. package/dist/fonts/Titillium_Sans_Pro/TitilliumSansPro-BoldItalic.woff +0 -0
  9. package/dist/fonts/Titillium_Sans_Pro/TitilliumSansPro-BoldItalic.woff2 +0 -0
  10. package/dist/fonts/Titillium_Sans_Pro/TitilliumSansPro-Italic.woff +0 -0
  11. package/dist/fonts/Titillium_Sans_Pro/TitilliumSansPro-Italic.woff2 +0 -0
  12. package/dist/fonts/Titillium_Sans_Pro/TitilliumSansPro-Light.woff +0 -0
  13. package/dist/fonts/Titillium_Sans_Pro/TitilliumSansPro-Light.woff2 +0 -0
  14. package/dist/fonts/Titillium_Sans_Pro/TitilliumSansPro-LightItalic.woff +0 -0
  15. package/dist/fonts/Titillium_Sans_Pro/TitilliumSansPro-LightItalic.woff2 +0 -0
  16. package/dist/fonts/Titillium_Sans_Pro/TitilliumSansPro-Regular.woff +0 -0
  17. package/dist/fonts/Titillium_Sans_Pro/TitilliumSansPro-Regular.woff2 +0 -0
  18. package/dist/fonts/Titillium_Sans_Pro/TitilliumSansPro-Semibold.woff +0 -0
  19. package/dist/fonts/Titillium_Sans_Pro/TitilliumSansPro-Semibold.woff2 +0 -0
  20. package/dist/fonts/Titillium_Sans_Pro/TitilliumSansPro-SemiboldItalic.woff +0 -0
  21. package/dist/fonts/Titillium_Sans_Pro/TitilliumSansPro-SemiboldItalic.woff2 +0 -0
  22. package/dist/js/bootstrap-italia.bundle.min.js +10 -10
  23. package/dist/js/bootstrap-italia.min.js +4 -4
  24. package/dist/plugins/dropdown.js +1 -1
  25. package/dist/plugins/dropdown.js.map +1 -1
  26. package/dist/plugins/fonts-loader.js +340 -111
  27. package/dist/plugins/fonts-loader.js.map +1 -1
  28. package/dist/version.js +1 -1
  29. package/dist/version.js.map +1 -1
  30. package/package.json +3 -3
  31. package/src/fonts/Titillium_Sans_Pro/OFL.txt +92 -0
  32. package/src/fonts/Titillium_Sans_Pro/TitilliumSansPro-Bold.woff +0 -0
  33. package/src/fonts/Titillium_Sans_Pro/TitilliumSansPro-Bold.woff2 +0 -0
  34. package/src/fonts/Titillium_Sans_Pro/TitilliumSansPro-BoldItalic.woff +0 -0
  35. package/src/fonts/Titillium_Sans_Pro/TitilliumSansPro-BoldItalic.woff2 +0 -0
  36. package/src/fonts/Titillium_Sans_Pro/TitilliumSansPro-Italic.woff +0 -0
  37. package/src/fonts/Titillium_Sans_Pro/TitilliumSansPro-Italic.woff2 +0 -0
  38. package/src/fonts/Titillium_Sans_Pro/TitilliumSansPro-Light.woff +0 -0
  39. package/src/fonts/Titillium_Sans_Pro/TitilliumSansPro-Light.woff2 +0 -0
  40. package/src/fonts/Titillium_Sans_Pro/TitilliumSansPro-LightItalic.woff +0 -0
  41. package/src/fonts/Titillium_Sans_Pro/TitilliumSansPro-LightItalic.woff2 +0 -0
  42. package/src/fonts/Titillium_Sans_Pro/TitilliumSansPro-Regular.woff +0 -0
  43. package/src/fonts/Titillium_Sans_Pro/TitilliumSansPro-Regular.woff2 +0 -0
  44. package/src/fonts/Titillium_Sans_Pro/TitilliumSansPro-Semibold.woff +0 -0
  45. package/src/fonts/Titillium_Sans_Pro/TitilliumSansPro-Semibold.woff2 +0 -0
  46. package/src/fonts/Titillium_Sans_Pro/TitilliumSansPro-SemiboldItalic.woff +0 -0
  47. package/src/fonts/Titillium_Sans_Pro/TitilliumSansPro-SemiboldItalic.woff2 +0 -0
  48. package/src/js/plugins/dropdown.js +1 -1
  49. package/src/js/plugins/fonts-loader.js +340 -111
  50. package/src/js/version.js +1 -1
  51. package/src/scss/base/_maps.scss +11 -0
  52. package/src/scss/base/_mixins.scss +2 -1
  53. package/src/scss/base/_reboot.scss +15 -147
  54. package/src/scss/base/_root.scss +272 -45
  55. package/src/scss/base/_utilities.scss +3 -3
  56. package/src/scss/base/_variables.scss +44 -55
  57. package/src/scss/base/_version.scss +1 -1
  58. package/src/scss/base/mixins/_banner.scss +7 -9
  59. package/src/scss/base/mixins/_focus.scss +14 -0
  60. package/src/scss/bootstrap-italia.scss +29 -32
  61. package/src/scss/components/_accept-overlay.scss +74 -50
  62. package/src/scss/components/_accordion.scss +120 -97
  63. package/src/scss/components/_affix.scss +14 -0
  64. package/src/scss/components/_alert.scss +60 -45
  65. package/src/scss/components/_anchor.scss +14 -0
  66. package/src/scss/components/_avatar.scss +236 -369
  67. package/src/scss/components/_back-to-top.scss +70 -54
  68. package/src/scss/components/_badge.scss +69 -36
  69. package/src/scss/components/_bottomnav.scss +14 -0
  70. package/src/scss/components/_breadcrumb.scss +78 -71
  71. package/src/scss/components/_button-group.scss +21 -7
  72. package/src/scss/components/_buttons.scss +289 -318
  73. package/src/scss/components/_calendar.scss +22 -8
  74. package/src/scss/components/_callout.scss +133 -125
  75. package/src/scss/components/_card-old.scss +14 -0
  76. package/src/scss/components/_card.scss +476 -518
  77. package/src/scss/components/_carousel.scss +14 -0
  78. package/src/scss/components/_chips.scss +150 -209
  79. package/src/scss/components/_code.scss +31 -6
  80. package/src/scss/components/_cookiebar.scss +14 -0
  81. package/src/scss/components/_dimmer.scss +14 -0
  82. package/src/scss/components/_dropdown.scss +144 -179
  83. package/src/scss/components/_figcaption.scss +14 -0
  84. package/src/scss/components/_font.scss +14 -0
  85. package/src/scss/components/_footer.scss +99 -75
  86. package/src/scss/components/_forward.scss +14 -0
  87. package/src/scss/components/_grid.scss +31 -22
  88. package/src/scss/components/_gridlist.scss +41 -19
  89. package/src/scss/components/_header.scss +150 -142
  90. package/src/scss/components/_headercenter.scss +129 -193
  91. package/src/scss/components/_headercentertheme.scss +14 -0
  92. package/src/scss/components/_headernavbar.scss +22 -14
  93. package/src/scss/components/_headernavbartheme.scss +16 -2
  94. package/src/scss/components/_headerslim.scss +133 -137
  95. package/src/scss/components/_headerslimtheme.scss +14 -0
  96. package/src/scss/components/_hero.scss +93 -202
  97. package/src/scss/components/_images.scss +14 -0
  98. package/src/scss/components/_imgresponsive.scss +14 -0
  99. package/src/scss/components/_linklist.scss +241 -262
  100. package/src/scss/components/_list-group.scss +26 -14
  101. package/src/scss/components/_list.scss +66 -123
  102. package/src/scss/components/_map.scss +14 -0
  103. package/src/scss/components/_masonry-loader.scss +14 -0
  104. package/src/scss/components/_megamenu.scss +191 -256
  105. package/src/scss/components/_modal.scss +115 -204
  106. package/src/scss/components/_nav.scss +43 -41
  107. package/src/scss/components/_navbar.scss +408 -91
  108. package/src/scss/components/_navigation.scss +56 -459
  109. package/src/scss/components/_navigationtheme.scss +109 -171
  110. package/src/scss/components/_navscroll.scss +210 -208
  111. package/src/scss/components/_navscrolltheme.scss +14 -0
  112. package/src/scss/components/_notifications.scss +14 -0
  113. package/src/scss/components/_offcanvas.scss +14 -0
  114. package/src/scss/components/_overlay-panel.scss +14 -0
  115. package/src/scss/components/_page-scroll.scss +14 -0
  116. package/src/scss/components/_pagination.scss +135 -80
  117. package/src/scss/components/_placeholders.scss +14 -0
  118. package/src/scss/components/_point-list.scss +15 -0
  119. package/src/scss/components/_popover.scss +29 -19
  120. package/src/scss/components/_print.scss +14 -0
  121. package/src/scss/components/_progress-bars.scss +14 -0
  122. package/src/scss/components/_progress-donuts.scss +14 -0
  123. package/src/scss/components/_progress-spinners.scss +14 -0
  124. package/src/scss/components/_rating-list.scss +14 -0
  125. package/src/scss/components/_rating.scss +76 -45
  126. package/src/scss/components/_sections.scss +51 -30
  127. package/src/scss/components/_sidebar.scss +119 -121
  128. package/src/scss/components/_sidebarthemes.scss +14 -0
  129. package/src/scss/components/_skiplinks.scss +14 -0
  130. package/src/scss/components/_steppers.scss +14 -0
  131. package/src/scss/components/_sticky.scss +14 -0
  132. package/src/scss/components/_tab.scss +14 -0
  133. package/src/scss/components/_tables.scss +14 -0
  134. package/src/scss/components/_thumbnav.scss +14 -0
  135. package/src/scss/components/_timeline.scss +14 -0
  136. package/src/scss/components/_toasts.scss +14 -0
  137. package/src/scss/components/_toolbar.scss +14 -0
  138. package/src/scss/components/_tooltip.scss +23 -9
  139. package/src/scss/components/_type.scss +176 -176
  140. package/src/scss/components/_videoplayer.scss +25 -5
  141. package/src/scss/forms/_accessible-autocomplete.scss +25 -27
  142. package/src/scss/forms/_autocomplete.scss +99 -144
  143. package/src/scss/forms/_form-control.scss +47 -116
  144. package/src/scss/forms/_form-input-file.scss +7 -6
  145. package/src/scss/forms/_form-input-number.scss +38 -22
  146. package/src/scss/forms/_form-input-upload.scss +149 -147
  147. package/src/scss/forms/_form-password.scss +14 -11
  148. package/src/scss/forms/_form-select.scss +3 -92
  149. package/src/scss/forms/_forms.scss +304 -247
  150. package/src/scss/forms/_input-group.scss +23 -36
  151. package/src/scss/forms/_just-validate.scss +11 -12
  152. package/src/scss/utilities/focus.scss +3 -12
  153. package/src/scss/utilities/icons.scss +59 -13
  154. package/src/scss/components/_pager.scss +0 -166
  155. package/src/scss/forms/_form-text.scss +0 -11
@@ -1,39 +1,107 @@
1
- // Navbar
1
+ // Component: navbar
2
+ //
3
+ // Description: Component styles for navbar
4
+ //
5
+
6
+ // Variables
7
+ //
8
+
9
+ // Properties
2
10
  //
3
- // Provide a static navbar from which we expand to create full-width, fixed, and
4
- // other navbar variations.
5
11
 
6
12
  .navbar {
7
- // scss-docs-start navbar-css-vars
8
- --#{$prefix}navbar-padding-x: #{if($navbar-padding-x == null, 0, $navbar-padding-x)};
9
- --#{$prefix}navbar-padding-y: #{$navbar-padding-y};
10
- --#{$prefix}navbar-color: #{$navbar-light-color};
11
- --#{$prefix}navbar-hover-color: #{$navbar-light-hover-color};
12
- --#{$prefix}navbar-disabled-color: #{$navbar-light-disabled-color};
13
13
  --#{$prefix}navbar-active-color: #{$navbar-light-active-color};
14
- --#{$prefix}navbar-brand-padding-y: #{$navbar-brand-padding-y};
15
- --#{$prefix}navbar-brand-margin-end: #{$navbar-brand-margin-end};
14
+ --#{$prefix}navbar-background: var(--#{$prefix}color-background-primary);
15
+ --#{$prefix}navbar-brand-color: var(--#{$prefix}color-text-inverse);
16
16
  --#{$prefix}navbar-brand-font-size: #{$navbar-brand-font-size};
17
- --#{$prefix}navbar-brand-color: #{$navbar-light-brand-color};
18
- --#{$prefix}navbar-brand-hover-color: #{$navbar-light-brand-hover-color};
17
+ --#{$prefix}navbar-brand-margin-end: #{$navbar-brand-margin-end};
18
+ --#{$prefix}navbar-brand-padding-y: #{$navbar-brand-padding-y};
19
+ --#{$prefix}navbar-close-button-font-size: 0.75rem;
20
+ --#{$prefix}navbar-close-button-icon-size: 2rem;
21
+ --#{$prefix}navbar-close-button-size: 44px;
22
+ --#{$prefix}navbar-color: #{$navbar-light-color};
23
+ --#{$prefix}navbar-disabled-color: #{$navbar-light-disabled-color};
24
+ --#{$prefix}navbar-disabled-item-opacity: 0.6;
25
+ --#{$prefix}navbar-dropdown-icon-line-height: 1rem;
26
+ --#{$prefix}navbar-dropdown-icon-size: 0.75rem;
27
+ --#{$prefix}navbar-dropdown-icon-width: 1rem;
28
+ --#{$prefix}navbar-hamburger-size: 1.5rem;
29
+ --#{$prefix}navbar-hover-color: #{$navbar-light-hover-color};
30
+ --#{$prefix}navbar-link-border-size: var(--#{$prefix}border-thick);
31
+ --#{$prefix}navbar-link-color: var(--#{$prefix}color-link); // nav link color default - mobile
32
+ --#{$prefix}navbar-link-font-size: var(--#{$prefix}label-font-size-l);
33
+ --#{$prefix}navbar-link-font-weight: var(--#{$prefix}font-weight-solid);
34
+ --#{$prefix}navbar-link-line-height: var(--#{$prefix}label-leading);
35
+ --#{$prefix}navbar-link-padding-x: var(--#{$prefix}spacing-m);
36
+ --#{$prefix}navbar-link-padding-y: var(--#{$prefix}spacing-s);
37
+ --#{$prefix}navbar-links-margin-top: 102px;
19
38
  --#{$prefix}navbar-nav-link-padding-x: #{$navbar-nav-link-padding-x};
20
- --#{$prefix}navbar-toggler-padding-y: #{$navbar-toggler-padding-y};
21
- --#{$prefix}navbar-toggler-padding-x: #{$navbar-toggler-padding-x};
22
- --#{$prefix}navbar-toggler-font-size: #{$navbar-toggler-font-size};
23
- --#{$prefix}navbar-toggler-icon-bg: #{escape-svg($navbar-light-toggler-icon-bg)};
39
+ --#{$prefix}navbar-sidebar-bg-color-mobile: rgba(0, 0, 0, 0.6);
40
+ --#{$prefix}navbar-toggle-button-icon-color: var(--#{$prefix}icon-inverse);
41
+ --#{$prefix}navbar-toggle-button-icon-size: 1.5rem;
24
42
  --#{$prefix}navbar-toggler-border-color: #{$navbar-light-toggler-border-color};
25
43
  --#{$prefix}navbar-toggler-border-radius: #{$navbar-toggler-border-radius};
26
44
  --#{$prefix}navbar-toggler-focus-width: #{$navbar-toggler-focus-width};
45
+ --#{$prefix}navbar-toggler-font-size: #{$navbar-toggler-font-size};
46
+ --#{$prefix}navbar-toggler-icon-bg: #{escape-svg($navbar-light-toggler-icon-bg)};
47
+ --#{$prefix}navbar-toggler-padding-x: #{$navbar-toggler-padding-x};
48
+ --#{$prefix}navbar-toggler-padding-y: #{$navbar-toggler-padding-y};
27
49
  --#{$prefix}navbar-toggler-transition: #{$navbar-toggler-transition};
28
- // scss-docs-end navbar-css-vars
50
+ @include media-breakpoint-up(lg) {
51
+ --#{$prefix}navbar-link-color: var(--#{$prefix}color-text-inverse); // nav link color default - desktop
52
+ --#{$prefix}navbar-link-active-border-color: var(--#{$prefix}color-border-inverse);
53
+ }
54
+
55
+ .theme-light &,
56
+ .theme-light-desk & {
57
+ --#{$prefix}navbar-background: var(--#{$prefix}color-background-inverse);
58
+ --#{$prefix}navbar-link-color: var(--#{$prefix}color-link); // nav link color theme light
59
+ --#{$prefix}navbar-toggle-button-icon-color: var(--#{$prefix}icon-primary);
60
+ --#{$prefix}navbar-link-active-border-color: var(--#{$prefix}color-border-primary);
61
+ }
62
+
63
+ .theme-dark &,
64
+ .theme-dark-mobile & {
65
+ --#{$prefix}navbar-background: var(--#{$prefix}color-background-primary);
66
+ --#{$prefix}navbar-link-color: var(--#{$prefix}color-text-inverse); // nav link color theme dark
67
+ --#{$prefix}navbar-toggle-button-icon-color: var(--#{$prefix}icon-inverse);
68
+ --#{$prefix}navbar-link-active-border-color: var(--#{$prefix}color-border-inverse);
69
+ }
70
+ }
71
+
72
+ // Styles
73
+ //
29
74
 
75
+ // Navbar mobile backdrop, inspired by "modal" approachAdd commentMore actions
76
+ .navbar-backdrop {
77
+ --#{$prefix}backdrop-zindex: #{$zindex-modal-backdrop};
78
+ --#{$prefix}backdrop-bg: #{$modal-backdrop-bg};
79
+ --#{$prefix}backdrop-opacity: #{$modal-backdrop-opacity};
80
+ @include overlay-backdrop(var(--#{$prefix}backdrop-zindex), var(--#{$prefix}backdrop-bg), var(--#{$prefix}backdrop-opacity));
81
+ @media (min-width: #{map-get($grid-breakpoints, lg)}) {
82
+ display: none; // to handle resize from md to lg when open
83
+ }
84
+ }
85
+ /* stylelint-disable-next-line no-duplicate-selectors */
86
+ .navbar {
30
87
  position: relative;
31
88
  display: flex;
32
- flex-wrap: wrap; // allow us to do the line break for collapsing content
89
+ flex-wrap: wrap; // line break for collapsing content
33
90
  align-items: center;
34
91
  justify-content: space-between; // space out brand from logo
35
- padding: var(--#{$prefix}navbar-padding-y) var(--#{$prefix}navbar-padding-x);
36
- @include gradient-bg();
92
+ background: var(--#{$prefix}navbar-background);
93
+ @include media-breakpoint-up(lg) {
94
+ padding: 0 var(--#{$prefix}header-spacing-inset);
95
+ }
96
+ @include media-breakpoint-up(lg) {
97
+ --#{$prefix}navbar-link-font-size: var(--#{$prefix}label-font-size-l);
98
+ }
99
+
100
+ @each $breakpoint, $container-max-width in $container-max-widths {
101
+ > .container#{breakpoint-infix($breakpoint, $container-max-widths)} {
102
+ @extend %container-flex-properties;
103
+ }
104
+ }
37
105
 
38
106
  // Because flex properties aren't inherited, we need to redeclare these first
39
107
  // few properties so that content nested within behave properly.
@@ -50,30 +118,105 @@
50
118
  @extend %container-flex-properties;
51
119
  }
52
120
 
53
- @each $breakpoint, $container-max-width in $container-max-widths {
54
- > .container#{breakpoint-infix($breakpoint, $container-max-widths)} {
55
- @extend %container-flex-properties;
121
+ // Navbar Overlay
122
+ .overlay {
123
+ position: fixed;
124
+ top: 0;
125
+ right: 0;
126
+ bottom: 0;
127
+ left: 0;
128
+ display: none;
129
+ background: var(--#{$prefix}navbar-sidebar-bg-color-mobile);
130
+ }
131
+
132
+ // Close button
133
+ .close-div {
134
+ position: fixed;
135
+ top: var(--#{$prefix}spacing-m);
136
+ right: 2px;
137
+ left: auto;
138
+ z-index: 10;
139
+ opacity: 0;
140
+ background: transparent;
141
+ transition: all 0.3s cubic-bezier(0.1, 0.57, 0.4, 0.97);
142
+ pointer-events: none;
143
+ @include media-breakpoint-up(lg) {
144
+ display: none;
145
+ }
146
+
147
+ .close-menu {
148
+ display: flex;
149
+ align-items: center;
150
+ justify-content: center;
151
+ width: var(--#{$prefix}navbar-close-button-size);
152
+ height: var(--#{$prefix}navbar-close-button-size);
153
+ padding: 0;
154
+ background: transparent;
155
+ color: var(--#{$prefix}navbar-close-button-text-color);
156
+ font-size: var(--#{$prefix}navbar-close-button-font-size);
157
+ pointer-events: all;
158
+
159
+ .icon {
160
+ fill: var(--#{$prefix}icon-inverse);
161
+ }
162
+ }
163
+ }
164
+
165
+ // Dropdown menu inside navbar
166
+ // This is a special case for the dropdown menu inside the navbar
167
+ //
168
+
169
+ .dropdown-menu {
170
+ a.it-heading-link,
171
+ a.it-footer-link {
172
+ svg {
173
+ fill: currentColor;
174
+ }
175
+
176
+ &.active span {
177
+ text-decoration: underline;
178
+ }
179
+ }
180
+
181
+ .link-list-wrapper {
182
+ // margin-bottom: var(--#{$prefix}spacing-m);
183
+ // padding-right: var(--#{$prefix}spacing-m);
184
+ // padding-left: var(--#{$prefix}spacing-m);
185
+
186
+ ul li a {
187
+ &.list-item.active {
188
+ color: var(--#{$prefix}color-link);
189
+ text-decoration: underline;
190
+
191
+ span {
192
+ color: var(--#{$prefix}color-link);
193
+ }
194
+ }
195
+
196
+ svg {
197
+ fill: currentColor;
198
+ }
199
+ }
56
200
  }
57
201
  }
58
202
  }
59
203
 
60
204
  // Navbar brand
61
205
  //
62
- // Used for brand, project, or site names.
63
206
 
64
207
  .navbar-brand {
208
+ margin-right: var(--#{$prefix}navbar-brand-margin-end);
65
209
  padding-top: var(--#{$prefix}navbar-brand-padding-y);
66
210
  padding-bottom: var(--#{$prefix}navbar-brand-padding-y);
67
- margin-right: var(--#{$prefix}navbar-brand-margin-end);
68
- @include font-size(var(--#{$prefix}navbar-brand-font-size));
69
211
  color: var(--#{$prefix}navbar-brand-color);
70
- text-decoration: if($link-decoration == none, null, none);
212
+ text-decoration: none;
71
213
  white-space: nowrap;
214
+ @include font-size(var(--#{$prefix}navbar-brand-font-size));
72
215
 
73
216
  &:hover,
74
217
  &:focus {
75
218
  color: var(--#{$prefix}navbar-brand-hover-color);
76
- text-decoration: if($link-hover-decoration == underline, none, null);
219
+ text-decoration: underline;
77
220
  }
78
221
  }
79
222
 
@@ -82,48 +225,18 @@
82
225
  // Custom navbar navigation (doesn't require `.nav`, but does make use of `.nav-link`).
83
226
 
84
227
  .navbar-nav {
85
- // scss-docs-start navbar-nav-css-vars
86
- --#{$prefix}nav-link-padding-x: 0;
87
- --#{$prefix}nav-link-padding-y: #{$nav-link-padding-y};
88
- @include rfs($nav-link-font-size, --#{$prefix}nav-link-font-size);
89
- --#{$prefix}nav-link-font-weight: #{$nav-link-font-weight};
90
- --#{$prefix}nav-link-color: var(--#{$prefix}navbar-color);
91
- --#{$prefix}nav-link-hover-color: var(--#{$prefix}navbar-hover-color);
92
- --#{$prefix}nav-link-disabled-color: var(--#{$prefix}navbar-disabled-color);
93
- // scss-docs-end navbar-nav-css-vars
94
-
95
228
  display: flex;
96
229
  flex-direction: column; // cannot use `inherit` to get the `.navbar`s value
97
- padding-left: 0;
98
230
  margin-bottom: 0;
231
+ padding-left: 0;
99
232
  list-style: none;
100
-
101
- .show > .nav-link,
102
- .nav-link.active {
103
- color: var(--#{$prefix}navbar-active-color);
104
- }
233
+ @include rfs($nav-link-font-size, --#{$prefix}nav-link-font-size);
105
234
 
106
235
  .dropdown-menu {
107
236
  position: static;
108
237
  }
109
238
  }
110
239
 
111
- // Navbar text
112
- //
113
- //
114
-
115
- .navbar-text {
116
- padding-top: $nav-link-padding-y;
117
- padding-bottom: $nav-link-padding-y;
118
- color: var(--#{$prefix}navbar-color);
119
-
120
- a,
121
- a:hover,
122
- a:focus {
123
- color: var(--#{$prefix}navbar-active-color);
124
- }
125
- }
126
-
127
240
  // Responsive navbar
128
241
  //
129
242
  // Custom styles for responsive collapsing and toggling of navbar contents.
@@ -140,14 +253,191 @@
140
253
  align-items: center;
141
254
  }
142
255
 
256
+ // Navbar collapsable used in header component
257
+ .navbar-collapsable {
258
+ position: fixed;
259
+ top: 0;
260
+ right: 0;
261
+ bottom: 0;
262
+ left: 0;
263
+ z-index: #{$zindex-modal};
264
+ display: none;
265
+ width: calc(100% - 48px); // occupa sempre tutta lo spazio orizzontale disponibile (BSI v2.15:) meno 48px a destra per il close e backdrop;
266
+ @include media-breakpoint-up(lg) {
267
+ position: relative;
268
+ top: auto;
269
+ right: auto;
270
+ bottom: auto;
271
+ left: auto;
272
+ z-index: auto;
273
+ display: block !important; // overrides jquery inline style
274
+ background: none;
275
+ transition: none;
276
+ width: 100%;
277
+ }
278
+
279
+ .menu-wrapper {
280
+ position: absolute;
281
+ top: 0;
282
+ right: 0; // removed > calc(var(--#{$prefix}spacing-m) * 2);
283
+ bottom: 0;
284
+ left: 0;
285
+ z-index: 5;
286
+ overflow-y: auto;
287
+ background: var(--#{$prefix}color-background-inverse);
288
+ transform: translateX(-100%);
289
+ transition: all 0.2s cubic-bezier(0.29, 0.85, 0.5, 0.99);
290
+ pointer-events: all;
291
+ @include media-breakpoint-up(lg) {
292
+ position: inherit;
293
+ top: auto;
294
+ right: auto;
295
+ bottom: auto;
296
+ left: auto;
297
+ overflow-y: visible;
298
+ transform: none;
299
+ transition: none;
300
+ display: flex;
301
+ align-items: flex-end;
302
+ justify-content: space-between;
303
+ background: transparent;
304
+ }
305
+ }
306
+
307
+ // Navbar Nav
308
+ .navbar-nav {
309
+ padding-top: var(--#{$prefix}spacing-m);
310
+ overflow: hidden;
311
+ @include media-breakpoint-up(lg) {
312
+ margin-top: 0;
313
+ padding-top: 0;
314
+ overflow: inherit;
315
+ }
316
+
317
+ .nav-item {
318
+ display: flex;
319
+ flex-direction: column;
320
+ align-items: flex-start;
321
+ @include media-breakpoint-up(lg) {
322
+ flex-direction: row;
323
+ }
324
+ }
325
+
326
+ li {
327
+ .nav-link[data-focus-mouse='true'] {
328
+ border-color: transparent !important;
329
+ }
330
+
331
+ .nav-link {
332
+ position: relative;
333
+ font-weight: var(--#{$prefix}navbar-link-font-weight);
334
+ padding: var(--#{$prefix}navbar-link-padding-y) var(--#{$prefix}navbar-link-padding-x);
335
+ &.disabled span,
336
+ &.disabled .icon {
337
+ opacity: var(--#{$prefix}navbar-disabled-item-opacity);
338
+ }
339
+ &.dropdown-toggle {
340
+ svg {
341
+ margin-top: 2px;
342
+ margin-left: var(--#{$prefix}spacing-3xs);
343
+ transition: all var(--#{$prefix}transition-instant);
344
+ fill: currentColor;
345
+ }
346
+ &[aria-expanded='true'] {
347
+ svg {
348
+ transform: scaleY(-1);
349
+ }
350
+ }
351
+ }
352
+ }
353
+
354
+ button.nav-link {
355
+ display: block;
356
+ border: none;
357
+ background: transparent;
358
+ font-weight: var(--#{$prefix}navbar-link-font-weight);
359
+ @include media-breakpoint-up(lg) {
360
+ display: flex;
361
+ align-items: center;
362
+ border-bottom: var(--#{$prefix}navbar-link-border-size) solid transparent;
363
+ line-height: var(--#{$prefix}navbar-link-line-height);
364
+ }
365
+
366
+ // &.dropdown-toggle {
367
+ // svg {
368
+ // @include media-breakpoint-up(lg) {
369
+ // margin-top: 4px;
370
+ // margin-left: var(--#{$prefix}icon-spacing);
371
+ // fill: var(--#{$prefix}icon-inverse);
372
+ // }
373
+ // }
374
+ // }
375
+
376
+ &.active {
377
+ border-left: var(--#{$prefix}navbar-link-border-size) solid var(--#{$prefix}navbar-link-active-bar-color);
378
+ }
379
+ }
380
+
381
+ a.nav-link {
382
+ font-weight: var(--#{$prefix}navbar-link-font-weight);
383
+ line-height: var(--#{$prefix}navbar-link-line-height);
384
+ @include media-breakpoint-up(lg) {
385
+ display: flex;
386
+ align-items: center;
387
+ align-self: flex-end;
388
+ border-bottom: var(--#{$prefix}navbar-link-border-size) solid transparent;
389
+ }
390
+
391
+ @include media-breakpoint-up(lg) {
392
+ &:hover {
393
+ color: var(--#{$prefix}color-text-inverse);
394
+ }
395
+ }
396
+
397
+ &.active {
398
+ border-left: var(--#{$prefix}navbar-link-border-size) solid var(--#{$prefix}navbar-link-active-bar-color);
399
+ @include media-breakpoint-up(lg) {
400
+ border-left: 0;
401
+ border-color: var(--#{$prefix}navbar-link-active-border-color);
402
+ background: transparent;
403
+ }
404
+ }
405
+
406
+ &.disabled {
407
+ span,
408
+ .icon {
409
+ opacity: var(--#{$prefix}navbar-disabled-item-opacity);
410
+ }
411
+ }
412
+ }
413
+ }
414
+
415
+ .dropdown-menu {
416
+ width: 100%; // make sure it is full width
417
+ }
418
+ }
419
+
420
+ &.expanded {
421
+ .menu-wrapper {
422
+ transform: translateX(0);
423
+ transition: all 0.3s cubic-bezier(0.29, 0.85, 0.5, 0.99);
424
+ }
425
+
426
+ .close-div {
427
+ //transform: translateX(0);
428
+ opacity: 1;
429
+ }
430
+ }
431
+ }
432
+
143
433
  // Button for toggling the navbar when in its collapsed state
144
434
  .navbar-toggler {
145
435
  padding: var(--#{$prefix}navbar-toggler-padding-y) var(--#{$prefix}navbar-toggler-padding-x);
146
- @include font-size(var(--#{$prefix}navbar-toggler-font-size));
147
- line-height: 1;
148
- color: var(--#{$prefix}navbar-color);
149
- background-color: transparent; // remove default button style
150
436
  border: var(--#{$prefix}border-width) solid var(--#{$prefix}navbar-toggler-border-color); // remove default button style
437
+ background-color: transparent; // remove default button style
438
+ color: var(--#{$prefix}navbar-color);
439
+ line-height: 1;
440
+ @include font-size(var(--#{$prefix}navbar-toggler-font-size));
151
441
  @include border-radius(var(--#{$prefix}navbar-toggler-border-radius));
152
442
  @include transition(var(--#{$prefix}navbar-toggler-transition));
153
443
 
@@ -156,30 +446,48 @@
156
446
  }
157
447
 
158
448
  &:focus {
159
- text-decoration: none;
160
449
  outline: 0;
161
450
  box-shadow: 0 0 0 var(--#{$prefix}navbar-toggler-focus-width);
451
+ text-decoration: none;
162
452
  }
163
453
  }
164
454
 
165
- // Keep as a separate element so folks can easily override it with another icon
166
- // or image file as needed.
167
- .navbar-toggler-icon {
168
- display: inline-block;
169
- width: 1.5em;
170
- height: 1.5em;
171
- vertical-align: middle;
172
- background-image: var(--#{$prefix}navbar-toggler-icon-bg);
173
- background-repeat: no-repeat;
174
- background-position: center;
175
- background-size: 100%;
176
- }
455
+ .custom-navbar-toggler {
456
+ margin-top: var(--#{$prefix}spacing-xxs);
457
+ padding: 0;
458
+ border: none;
459
+ background: none;
460
+ cursor: pointer;
461
+ @include media-breakpoint-up(lg) {
462
+ display: none;
463
+ }
464
+
465
+ span {
466
+ color: var(--#{$prefix}navbar-toggle-button-icon-color);
467
+ font-size: var(--#{$prefix}navbar-toggle-button-icon-size);
468
+ }
177
469
 
178
- .navbar-nav-scroll {
179
- max-height: var(--#{$prefix}scroll-height, 75vh);
180
- overflow-y: auto;
470
+ svg {
471
+ display: block;
472
+ width: var(--#{$prefix}navbar-hamburger-size);
473
+ height: var(--#{$prefix}navbar-hamburger-size);
474
+ fill: var(--#{$prefix}navbar-toggle-button-icon-color);
475
+ }
181
476
  }
182
477
 
478
+ // Keep as a separate element so folks can easily override it with another icon
479
+ // or image file as needed.
480
+ // .navbar-toggler-icon {
481
+ // display: inline-block;
482
+ // width: 1.5em;
483
+ // height: 1.5em;
484
+ // vertical-align: middle;
485
+ // background-image: var(--#{$prefix}navbar-toggler-icon-bg);
486
+ // background-repeat: no-repeat;
487
+ // background-position: center;
488
+ // background-size: 100%;
489
+ // }
490
+
183
491
  // scss-docs-start navbar-expand-loop
184
492
  // Generate series of `.navbar-expand-*` responsive classes for configuring
185
493
  // where your navbar collapses.
@@ -224,12 +532,12 @@
224
532
  // stylelint-disable declaration-no-important
225
533
  position: static;
226
534
  z-index: auto;
535
+ visibility: visible !important;
227
536
  flex-grow: 1;
228
537
  width: auto !important;
229
538
  height: auto !important;
230
- visibility: visible !important;
231
- background-color: transparent !important;
232
539
  border: 0 !important;
540
+ background-color: transparent !important;
233
541
  transform: none !important;
234
542
  @include box-shadow(none);
235
543
  @include transition(none);
@@ -261,14 +569,23 @@
261
569
  }
262
570
 
263
571
  .navbar-dark {
264
- // scss-docs-start navbar-dark-css-vars
265
- --#{$prefix}navbar-color: #{$navbar-dark-color};
266
- --#{$prefix}navbar-hover-color: #{$navbar-dark-hover-color};
267
- --#{$prefix}navbar-disabled-color: #{$navbar-dark-disabled-color};
268
- --#{$prefix}navbar-active-color: #{$navbar-dark-active-color};
269
- --#{$prefix}navbar-brand-color: #{$navbar-dark-brand-color};
270
- --#{$prefix}navbar-brand-hover-color: #{$navbar-dark-brand-hover-color};
572
+ --#{$prefix}navbar-color: var(--#{$prefix}color-text-inverse);
573
+ --#{$prefix}navbar-hover-color: var(--#{$prefix}$color-text-inverse);
574
+ --#{$prefix}navbar-active-color: var(--#{$prefix}color-text-inverse);
575
+ --#{$prefix}navbar-brand-color: var(--#{$prefix}color-text-inverse);
576
+ --#{$prefix}navbar-brand-hover-color: var(--#{$prefix}color-text-inverse);
271
577
  --#{$prefix}navbar-toggler-border-color: #{$navbar-dark-toggler-border-color};
272
578
  --#{$prefix}navbar-toggler-icon-bg: #{escape-svg($navbar-dark-toggler-icon-bg)};
273
- // scss-docs-end navbar-dark-css-vars
579
+ }
580
+
581
+ // Nav secondary
582
+ //
583
+
584
+ .navbar-secondary {
585
+ display: flex;
586
+ justify-content: flex-end;
587
+
588
+ .nav-link {
589
+ font-size: var(--#{$prefix}header-nav-secondary-font-size);
590
+ }
274
591
  }