uikit 3.14.4-dev.6a00f7fe6 → 3.14.4-dev.7db3661de

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 (91) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/dist/css/uikit-core-rtl.css +146 -77
  3. package/dist/css/uikit-core-rtl.min.css +1 -1
  4. package/dist/css/uikit-core.css +146 -77
  5. package/dist/css/uikit-core.min.css +1 -1
  6. package/dist/css/uikit-rtl.css +143 -78
  7. package/dist/css/uikit-rtl.min.css +1 -1
  8. package/dist/css/uikit.css +143 -78
  9. package/dist/css/uikit.min.css +1 -1
  10. package/dist/js/components/countdown.js +1 -1
  11. package/dist/js/components/countdown.min.js +1 -1
  12. package/dist/js/components/filter.js +7 -5
  13. package/dist/js/components/filter.min.js +1 -1
  14. package/dist/js/components/lightbox-panel.js +115 -24
  15. package/dist/js/components/lightbox-panel.min.js +1 -1
  16. package/dist/js/components/lightbox.js +115 -24
  17. package/dist/js/components/lightbox.min.js +1 -1
  18. package/dist/js/components/notification.js +1 -1
  19. package/dist/js/components/notification.min.js +1 -1
  20. package/dist/js/components/parallax.js +4 -5
  21. package/dist/js/components/parallax.min.js +1 -1
  22. package/dist/js/components/slider-parallax.js +4 -5
  23. package/dist/js/components/slider-parallax.min.js +1 -1
  24. package/dist/js/components/slider.js +22 -7
  25. package/dist/js/components/slider.min.js +1 -1
  26. package/dist/js/components/slideshow-parallax.js +4 -5
  27. package/dist/js/components/slideshow-parallax.min.js +1 -1
  28. package/dist/js/components/slideshow.js +22 -7
  29. package/dist/js/components/slideshow.min.js +1 -1
  30. package/dist/js/components/sortable.js +3 -3
  31. package/dist/js/components/sortable.min.js +1 -1
  32. package/dist/js/components/tooltip.js +26 -19
  33. package/dist/js/components/tooltip.min.js +1 -1
  34. package/dist/js/components/upload.js +1 -1
  35. package/dist/js/components/upload.min.js +1 -1
  36. package/dist/js/uikit-core.js +765 -647
  37. package/dist/js/uikit-core.min.js +1 -1
  38. package/dist/js/uikit-icons.js +1 -1
  39. package/dist/js/uikit-icons.min.js +1 -1
  40. package/dist/js/uikit.js +1593 -1458
  41. package/dist/js/uikit.min.js +1 -1
  42. package/package.json +1 -1
  43. package/src/images/{backgrounds/nav-parent-open.svg → components/nav-parent-icon-large.svg} +0 -0
  44. package/src/images/components/nav-parent-icon.svg +3 -0
  45. package/src/images/components/navbar-parent-icon.svg +3 -0
  46. package/src/js/components/filter.js +5 -3
  47. package/src/js/components/sortable.js +2 -3
  48. package/src/js/core/drop.js +7 -0
  49. package/src/js/core/height-viewport.js +14 -6
  50. package/src/js/core/icon.js +16 -0
  51. package/src/js/core/index.js +2 -0
  52. package/src/js/core/leader.js +2 -2
  53. package/src/js/core/navbar.js +44 -15
  54. package/src/js/core/offcanvas.js +1 -47
  55. package/src/js/core/scroll.js +37 -10
  56. package/src/js/core/sticky.js +8 -9
  57. package/src/js/mixin/media.js +4 -5
  58. package/src/js/mixin/modal.js +90 -4
  59. package/src/js/mixin/position.js +27 -11
  60. package/src/js/mixin/slider-drag.js +20 -8
  61. package/src/js/mixin/togglable.js +8 -17
  62. package/src/js/util/dimensions.js +6 -6
  63. package/src/js/util/position.js +1 -0
  64. package/src/js/util/style.js +4 -13
  65. package/src/js/util/viewport.js +20 -36
  66. package/src/less/components/dropdown.less +14 -0
  67. package/src/less/components/leader.less +1 -1
  68. package/src/less/components/nav.less +37 -44
  69. package/src/less/components/navbar.less +108 -24
  70. package/src/less/components/utility.less +21 -4
  71. package/src/less/theme/nav.less +3 -15
  72. package/src/less/theme/navbar.less +7 -7
  73. package/src/scss/components/dropdown.scss +14 -0
  74. package/src/scss/components/leader.scss +1 -1
  75. package/src/scss/components/nav.scss +36 -32
  76. package/src/scss/components/navbar.scss +96 -24
  77. package/src/scss/components/utility.scss +19 -3
  78. package/src/scss/mixins-theme.scss +18 -20
  79. package/src/scss/mixins.scss +16 -15
  80. package/src/scss/theme/nav.scss +3 -15
  81. package/src/scss/theme/navbar.scss +6 -3
  82. package/src/scss/variables-theme.scss +27 -15
  83. package/src/scss/variables.scss +27 -13
  84. package/tests/drop.html +72 -16
  85. package/tests/dropdown.html +103 -16
  86. package/tests/index.html +3 -3
  87. package/tests/nav.html +20 -87
  88. package/tests/navbar.html +2128 -1133
  89. package/tests/offcanvas.html +8 -8
  90. package/tests/utility.html +19 -0
  91. package/src/images/backgrounds/nav-parent-close.svg +0 -3
@@ -3,13 +3,13 @@
3
3
  //
4
4
  // Component: `uk-nav`
5
5
  //
6
- // Sub-objects: `uk-nav-header`
6
+ // Sub-objects: `uk-nav-parent-icon`
7
+ // `uk-nav-header`
7
8
  // `uk-nav-divider`
8
9
  // `uk-nav-subtitle`
9
10
  // `uk-nav-sub`
10
11
  //
11
- // Modifiers: `uk-nav-parent-icon`
12
- // `uk-nav-default`
12
+ // Modifiers: `uk-nav-default`
13
13
  // `uk-nav-primary`
14
14
  // `uk-nav-center`,
15
15
  // `uk-nav-divider`
@@ -33,10 +33,6 @@
33
33
  @nav-sublist-deeper-padding-left: 15px;
34
34
  @nav-sublist-item-padding-vertical: 2px;
35
35
 
36
- @nav-parent-icon-width: (@global-line-height * 1em);
37
- @nav-parent-icon-height: @nav-parent-icon-width;
38
- @nav-parent-icon-color: @global-color;
39
-
40
36
  @nav-header-padding-vertical: @nav-item-padding-vertical;
41
37
  @nav-header-padding-horizontal: @nav-item-padding-horizontal;
42
38
  @nav-header-font-size: @global-small-font-size;
@@ -46,6 +42,8 @@
46
42
  @nav-divider-margin-vertical: 5px;
47
43
  @nav-divider-margin-horizontal: 0;
48
44
 
45
+ @nav-default-font-size: @global-font-size;
46
+ @nav-default-line-height: @global-line-height;
49
47
  @nav-default-item-color: @global-muted-color;
50
48
  @nav-default-item-hover-color: @global-color;
51
49
  @nav-default-item-active-color: @global-emphasis-color;
@@ -53,12 +51,14 @@
53
51
  @nav-default-header-color: @global-emphasis-color;
54
52
  @nav-default-divider-border-width: @global-border-width;
55
53
  @nav-default-divider-border: @global-border;
54
+ @nav-default-sublist-font-size: @nav-default-font-size;
55
+ @nav-default-sublist-line-height: @nav-default-line-height;
56
56
  @nav-default-sublist-item-color: @global-muted-color;
57
57
  @nav-default-sublist-item-hover-color: @global-color;
58
58
  @nav-default-sublist-item-active-color: @global-emphasis-color;
59
59
 
60
- @nav-primary-item-font-size: @global-large-font-size;
61
- @nav-primary-item-line-height: @global-line-height;
60
+ @nav-primary-font-size: @global-large-font-size;
61
+ @nav-primary-line-height: @global-line-height;
62
62
  @nav-primary-item-color: @global-muted-color;
63
63
  @nav-primary-item-hover-color: @global-color;
64
64
  @nav-primary-item-active-color: @global-emphasis-color;
@@ -66,17 +66,16 @@
66
66
  @nav-primary-header-color: @global-emphasis-color;
67
67
  @nav-primary-divider-border-width: @global-border-width;
68
68
  @nav-primary-divider-border: @global-border;
69
+ @nav-primary-sublist-font-size: @global-medium-font-size;
70
+ @nav-primary-sublist-line-height: @global-line-height;
69
71
  @nav-primary-sublist-item-color: @global-muted-color;
70
72
  @nav-primary-sublist-item-hover-color: @global-color;
71
73
  @nav-primary-sublist-item-active-color: @global-emphasis-color;
72
74
 
73
- @nav-dividers-margin-top: 0;
75
+ @nav-dividers-margin-top: 5px;
74
76
  @nav-dividers-border-width: @global-border-width;
75
77
  @nav-dividers-border: @global-border;
76
78
 
77
- @internal-nav-parent-close-image: "../../images/backgrounds/nav-parent-close.svg";
78
- @internal-nav-parent-open-image: "../../images/backgrounds/nav-parent-open.svg";
79
-
80
79
 
81
80
  /* ========================================================================
82
81
  Component: Nav
@@ -143,21 +142,12 @@ ul.uk-nav-sub {
143
142
  .uk-nav-sub a { padding: @nav-sublist-item-padding-vertical 0; }
144
143
 
145
144
 
146
- /* Parent icon modifier
145
+ /* Parent icon
147
146
  ========================================================================== */
148
147
 
149
- .uk-nav-parent-icon > .uk-parent > a::after {
150
- content: "";
151
- width: @nav-parent-icon-width;
152
- height: @nav-parent-icon-height;
153
- margin-left: auto;
154
- .svg-fill(@internal-nav-parent-close-image, "#000", @nav-parent-icon-color);
155
- background-repeat: no-repeat;
156
- background-position: 50% 50%;
157
- .hook-nav-parent-icon();
158
- }
148
+ .uk-nav-parent-icon { margin-left: auto; }
159
149
 
160
- .uk-nav-parent-icon > .uk-parent.uk-open > a::after { .svg-fill(@internal-nav-parent-open-image, "#000", @nav-parent-icon-color); }
150
+ .uk-nav > li > a[aria-expanded="true"] .uk-nav-parent-icon { transform: rotate(180deg); }
161
151
 
162
152
 
163
153
  /* Header
@@ -186,6 +176,8 @@ ul.uk-nav-sub {
186
176
  ========================================================================== */
187
177
 
188
178
  .uk-nav-default {
179
+ font-size: @nav-default-font-size;
180
+ line-height: @nav-default-line-height;
189
181
  .hook-nav-default();
190
182
  }
191
183
 
@@ -241,6 +233,11 @@ ul.uk-nav-sub {
241
233
  * Sublists
242
234
  */
243
235
 
236
+ .uk-nav-default .uk-nav-sub {
237
+ font-size: @nav-default-sublist-font-size;
238
+ line-height: @nav-default-sublist-line-height;
239
+ }
240
+
244
241
  .uk-nav-default .uk-nav-sub a { color: @nav-default-sublist-item-color; }
245
242
 
246
243
  .uk-nav-default .uk-nav-sub a:hover { color: @nav-default-sublist-item-hover-color; }
@@ -252,6 +249,8 @@ ul.uk-nav-sub {
252
249
  ========================================================================== */
253
250
 
254
251
  .uk-nav-primary {
252
+ font-size: @nav-primary-font-size;
253
+ line-height: @nav-primary-line-height;
255
254
  .hook-nav-primary();
256
255
  }
257
256
 
@@ -260,8 +259,6 @@ ul.uk-nav-sub {
260
259
  */
261
260
 
262
261
  .uk-nav-primary > li > a {
263
- font-size: @nav-primary-item-font-size;
264
- line-height: @nav-primary-item-line-height;
265
262
  color: @nav-primary-item-color;
266
263
  .hook-nav-primary-item();
267
264
  }
@@ -309,6 +306,11 @@ ul.uk-nav-sub {
309
306
  * Sublists
310
307
  */
311
308
 
309
+ .uk-nav-primary .uk-nav-sub {
310
+ font-size: @nav-primary-sublist-font-size;
311
+ line-height: @nav-primary-sublist-line-height;
312
+ }
313
+
312
314
  .uk-nav-primary .uk-nav-sub a { color: @nav-primary-sublist-item-color; }
313
315
 
314
316
  .uk-nav-primary .uk-nav-sub a:hover { color: @nav-primary-sublist-item-hover-color; }
@@ -333,13 +335,18 @@ ul.uk-nav-sub {
333
335
  .uk-nav-center .uk-nav-sub,
334
336
  .uk-nav-center .uk-nav-sub ul { padding-left: 0; }
335
337
 
336
- /* Parent icon modifier */
337
- .uk-nav-center.uk-nav-parent-icon > .uk-parent > a::after { margin-left: 0; }
338
+ /* Parent icon */
339
+ .uk-nav-center .uk-nav-parent-icon { margin-left: 0; }
338
340
 
339
341
 
340
342
  /* Style modifier
341
343
  ========================================================================== */
342
344
 
345
+ /*
346
+ * Divider
347
+ * Naming is in plural to prevent conflicts with divider sub object.
348
+ */
349
+
343
350
  .uk-nav.uk-nav-divider > :not(.uk-nav-divider) + :not(.uk-nav-header, .uk-nav-divider) {
344
351
  margin-top: @nav-dividers-margin-top;
345
352
  padding-top: @nav-dividers-margin-top;
@@ -354,7 +361,6 @@ ul.uk-nav-sub {
354
361
  .hook-nav-misc();
355
362
 
356
363
  .hook-nav-sub() {}
357
- .hook-nav-parent-icon() {}
358
364
  .hook-nav-header() {}
359
365
  .hook-nav-divider() {}
360
366
  .hook-nav-default() {}
@@ -378,7 +384,6 @@ ul.uk-nav-sub {
378
384
  // Inverse
379
385
  // ========================================================================
380
386
 
381
- @inverse-nav-parent-icon-color: @inverse-global-color;
382
387
  @inverse-nav-default-item-color: @inverse-global-muted-color;
383
388
  @inverse-nav-default-item-hover-color: @inverse-global-color;
384
389
  @inverse-nav-default-item-active-color: @inverse-global-emphasis-color;
@@ -401,17 +406,6 @@ ul.uk-nav-sub {
401
406
 
402
407
  .hook-inverse() {
403
408
 
404
- //
405
- // Parent icon modifier
406
- //
407
-
408
- .uk-nav-parent-icon > .uk-parent > a::after {
409
- .svg-fill(@internal-nav-parent-close-image, "#000", @inverse-nav-parent-icon-color);
410
- .hook-inverse-nav-parent-icon();
411
- }
412
-
413
- .uk-nav-parent-icon > .uk-parent.uk-open > a::after { .svg-fill(@internal-nav-parent-open-image, "#000", @inverse-nav-parent-icon-color); }
414
-
415
409
  //
416
410
  // Default
417
411
  //
@@ -488,12 +482,11 @@ ul.uk-nav-sub {
488
482
 
489
483
  .uk-nav.uk-nav-divider > :not(.uk-nav-divider) + :not(.uk-nav-header, .uk-nav-divider) {
490
484
  border-top-color: @inverse-nav-dividers-border;
491
- .hook-nav-dividers();
485
+ .hook-inverse-nav-dividers();
492
486
  }
493
487
 
494
488
  }
495
489
 
496
- .hook-inverse-nav-parent-icon() {}
497
490
  .hook-inverse-nav-default-item() {}
498
491
  .hook-inverse-nav-default-item-hover() {}
499
492
  .hook-inverse-nav-default-item-active() {}
@@ -10,6 +10,7 @@
10
10
  // `uk-navbar-center-left`
11
11
  // `uk-navbar-center-right`
12
12
  // `uk-navbar-nav`
13
+ // `uk-navbar-parent-icon`
13
14
  // `uk-navbar-item`
14
15
  // `uk-navbar-toggle`
15
16
  // `uk-navbar-subtitle`
@@ -37,10 +38,12 @@
37
38
  // ========================================================================
38
39
 
39
40
  @navbar-background: @global-muted-background;
41
+ @navbar-gap: 0px; // Must have a unit because of `calc`
40
42
  @navbar-color-mode: none;
41
43
 
44
+ @navbar-nav-gap: 0px; // Must have a unit because of `calc`
45
+
42
46
  @navbar-nav-item-height: 80px;
43
- @navbar-nav-item-gap: 0px; // Must have a unit because of `calc`
44
47
  @navbar-nav-item-padding-horizontal: 15px;
45
48
  @navbar-nav-item-color: @global-muted-color;
46
49
  @navbar-nav-item-font-size: @global-font-size;
@@ -49,7 +52,9 @@
49
52
  @navbar-nav-item-onclick-color: @global-emphasis-color;
50
53
  @navbar-nav-item-active-color: @global-emphasis-color;
51
54
 
52
- @navbar-item-padding-horizontal: @navbar-nav-item-padding-horizontal;
55
+ @navbar-parent-icon-margin-left: 4px;
56
+
57
+ @navbar-item-padding-horizontal: 15px;
53
58
  @navbar-item-color: @global-color;
54
59
 
55
60
  @navbar-toggle-color: @global-muted-color;
@@ -69,9 +74,22 @@
69
74
  @navbar-dropdown-grid-gutter-horizontal: @global-gutter;
70
75
  @navbar-dropdown-grid-gutter-vertical: @navbar-dropdown-grid-gutter-horizontal;
71
76
 
72
- @navbar-dropdown-dropbar-margin-top: 0px;
73
- @navbar-dropdown-dropbar-margin-bottom: @navbar-dropdown-dropbar-margin-top;
77
+ @navbar-dropdown-large-shift-margin: 0;
78
+ @navbar-dropdown-large-padding: 40px;
79
+
80
+ @navbar-dropdown-stretch-padding-top: 15px;
81
+ @navbar-dropdown-stretch-padding-bottom: @navbar-dropdown-stretch-padding-top;
82
+ @navbar-dropdown-stretch-padding-horizontal: 15px;
83
+ @navbar-dropdown-stretch-padding-horizontal-s: @global-gutter;
84
+ @navbar-dropdown-stretch-padding-horizontal-m: @global-medium-gutter;
85
+ @navbar-dropdown-stretch-background: @navbar-dropdown-background;
86
+
87
+ @navbar-dropdown-dropbar-padding-top: @navbar-dropdown-padding;
88
+ @navbar-dropdown-dropbar-padding-bottom: @navbar-dropdown-dropbar-padding-top;
74
89
  @navbar-dropdown-dropbar-padding-horizontal: @navbar-nav-item-padding-horizontal;
90
+ @navbar-dropdown-dropbar-viewport-margin: 15px;
91
+ @navbar-dropdown-dropbar-viewport-margin-s: @global-gutter;
92
+ @navbar-dropdown-dropbar-viewport-margin-m: @global-medium-gutter;
75
93
 
76
94
  @navbar-dropdown-nav-item-color: @global-muted-color;
77
95
  @navbar-dropdown-nav-item-hover-color: @global-color;
@@ -98,7 +116,6 @@
98
116
 
99
117
  .uk-navbar {
100
118
  display: flex;
101
- --uk-navbar-nav-item-gap: @navbar-nav-item-gap;
102
119
  /* 1 */
103
120
  position: relative;
104
121
  .hook-navbar();
@@ -123,17 +140,13 @@
123
140
 
124
141
  /*
125
142
  * 1. Align navs and items vertically if they have a different height
126
- * 2. Note: IE 11 requires an extra `div` which affects the center selector
127
143
  */
128
144
 
129
145
  .uk-navbar-left,
130
146
  .uk-navbar-right,
131
- // 2. [class*='uk-navbar-center'],
132
- .uk-navbar-center,
133
- .uk-navbar-center-left > *,
134
- .uk-navbar-center-right > * {
147
+ [class*='uk-navbar-center'] {
135
148
  display: flex;
136
- gap: var(--uk-navbar-nav-item-gap);
149
+ gap: @navbar-gap;
137
150
  /* 1 */
138
151
  align-items: center;
139
152
  }
@@ -175,8 +188,8 @@
175
188
  top: 0;
176
189
  }
177
190
 
178
- .uk-navbar-center-left { right: ~'calc(100% + var(--uk-navbar-nav-item-gap))'; }
179
- .uk-navbar-center-right { left: ~'calc(100% + var(--uk-navbar-nav-item-gap))'; }
191
+ .uk-navbar-center-left { right: ~'calc(100% + @{navbar-gap})'; }
192
+ .uk-navbar-center-right { left: ~'calc(100% + @{navbar-gap})'; }
180
193
 
181
194
  [class*='uk-navbar-center-'] {
182
195
  width: max-content;
@@ -193,7 +206,7 @@
193
206
 
194
207
  .uk-navbar-nav {
195
208
  display: flex;
196
- gap: var(--uk-navbar-nav-item-gap);
209
+ gap: @navbar-nav-gap;
197
210
  /* 1 */
198
211
  margin: 0;
199
212
  padding: 0;
@@ -230,7 +243,6 @@
230
243
  /* 3 */
231
244
  box-sizing: border-box;
232
245
  min-height: @navbar-nav-item-height;
233
- padding: 0 @navbar-nav-item-padding-horizontal;
234
246
  /* 4 */
235
247
  font-size: @navbar-nav-item-font-size;
236
248
  font-family: @navbar-nav-item-font-family;
@@ -243,6 +255,7 @@
243
255
  */
244
256
 
245
257
  .uk-navbar-nav > li > a {
258
+ padding: 0 @navbar-nav-item-padding-horizontal;
246
259
  color: @navbar-nav-item-color;
247
260
  .hook-navbar-nav-item();
248
261
  }
@@ -271,6 +284,14 @@
271
284
  }
272
285
 
273
286
 
287
+ /* Parent icon modifier
288
+ ========================================================================== */
289
+
290
+ .uk-navbar-parent-icon { margin-left: @navbar-parent-icon-margin-left; }
291
+
292
+ .uk-navbar-nav > li > a[aria-expanded="true"] .uk-navbar-parent-icon { transform: rotate(180deg); }
293
+
294
+
274
295
  /* Item
275
296
  ========================================================================== */
276
297
 
@@ -291,6 +312,7 @@
291
312
  ========================================================================== */
292
313
 
293
314
  .uk-navbar-toggle {
315
+ padding: 0 @navbar-item-padding-horizontal;
294
316
  color: @navbar-toggle-color;
295
317
  .hook-navbar-toggle();
296
318
  }
@@ -387,7 +409,13 @@
387
409
  /* Show */
388
410
  .uk-navbar-dropdown.uk-open { display: block; }
389
411
 
412
+ /*
413
+ * Remove margin from the last-child
414
+ */
390
415
 
416
+ .uk-navbar-dropdown > :last-child { margin-bottom: 0; }
417
+
418
+ // Color Mode
391
419
  .uk-navbar-dropdown:extend(.uk-light all) when (@navbar-dropdown-color-mode = light) {}
392
420
  .uk-navbar-dropdown:extend(.uk-dark all) when (@navbar-dropdown-color-mode = dark) {}
393
421
 
@@ -415,43 +443,87 @@
415
443
  .uk-navbar-dropdown-width-4:not(.uk-navbar-dropdown-stack) { width: (@navbar-dropdown-width * 4); }
416
444
  .uk-navbar-dropdown-width-5:not(.uk-navbar-dropdown-stack) { width: (@navbar-dropdown-width * 5); }
417
445
 
446
+ /*
447
+ * Size modifier
448
+ */
449
+
450
+ .uk-navbar-dropdown-large {
451
+ --uk-position-shift-offset: @navbar-dropdown-large-shift-margin;
452
+ padding: @navbar-dropdown-large-padding;
453
+ }
454
+
418
455
  /*
419
456
  * Stretch modifier
420
457
  * 1. Allow scrolling
458
+ * 2. Style
421
459
  */
422
460
 
423
- .uk-navbar-dropdown-stretch {
461
+ .uk-navbar-dropdown-stretch {
424
462
  --uk-position-offset: 0;
425
463
  --uk-position-shift-offset: 0;
426
464
  --uk-position-viewport-offset: 0;
427
465
  /* 1 */
428
466
  overflow-y: auto;
429
467
  -webkit-overflow-scrolling: touch;
468
+ /* 2 */
469
+ padding: @navbar-dropdown-stretch-padding-top @navbar-dropdown-stretch-padding-horizontal @navbar-dropdown-stretch-padding-bottom @navbar-dropdown-stretch-padding-horizontal;
470
+ background: @navbar-dropdown-stretch-background;
430
471
  .hook-navbar-dropdown-stretch();
431
472
  }
432
473
 
474
+ /* Phone landscape and bigger */
475
+ @media (min-width: @breakpoint-small) {
476
+
477
+ .uk-navbar-dropdown-stretch {
478
+ padding-left: @navbar-dropdown-stretch-padding-horizontal-s;
479
+ padding-right: @navbar-dropdown-stretch-padding-horizontal-s;
480
+ }
481
+
482
+ }
483
+
484
+ /* Tablet landscape and bigger */
485
+ @media (min-width: @breakpoint-medium) {
486
+
487
+ .uk-navbar-dropdown-stretch {
488
+ padding-left: @navbar-dropdown-stretch-padding-horizontal-m;
489
+ padding-right: @navbar-dropdown-stretch-padding-horizontal-m;
490
+ }
491
+
492
+ }
493
+
433
494
  /*
434
495
  * Dropbar modifier
435
496
  * 1. Reset dropdown width to prevent to early shifting
436
- * 2. Set position
437
- * 3. Bottom padding for dropbar
438
- * 4. Horizontal padding
497
+ * 2. Reset style
498
+ * 3. Padding
439
499
  */
440
500
 
441
501
  .uk-navbar-dropdown-dropbar {
442
502
  /* 1 */
443
503
  width: auto;
444
504
  /* 2 */
445
- --uk-position-offset: @navbar-dropdown-dropbar-margin-top;
505
+ background: transparent;
446
506
  /* 3 */
447
- margin-bottom: @navbar-dropdown-dropbar-margin-bottom;
448
- /* 4 */
449
- padding-left: @navbar-dropdown-dropbar-padding-horizontal;
450
- padding-right: @navbar-dropdown-dropbar-padding-horizontal;
507
+ padding: @navbar-dropdown-dropbar-padding-top @navbar-dropdown-dropbar-padding-horizontal @navbar-dropdown-dropbar-padding-bottom @navbar-dropdown-dropbar-padding-horizontal;
451
508
  --uk-position-shift-offset: 0;
509
+ --uk-position-viewport-offset: @navbar-dropdown-dropbar-viewport-margin;
452
510
  .hook-navbar-dropdown-dropbar();
453
511
  }
454
512
 
513
+ /* Phone landscape and bigger */
514
+ @media (min-width: @breakpoint-small) {
515
+
516
+ .uk-navbar-dropdown-dropbar { --uk-position-viewport-offset: @navbar-dropdown-dropbar-viewport-margin-s; }
517
+
518
+ }
519
+
520
+ /* Tablet landscape and bigger */
521
+ @media (min-width: @breakpoint-medium) {
522
+
523
+ .uk-navbar-dropdown-dropbar { --uk-position-viewport-offset: @navbar-dropdown-dropbar-viewport-margin-m; }
524
+
525
+ }
526
+
455
527
 
456
528
  /* Dropdown Nav
457
529
  * Adopts `uk-nav`
@@ -580,6 +652,10 @@
580
652
 
581
653
  .hook-inverse() {
582
654
 
655
+ //
656
+ // Nav Item
657
+ //
658
+
583
659
  .uk-navbar-nav > li > a {
584
660
  color: @inverse-navbar-nav-item-color;
585
661
  .hook-inverse-navbar-nav-item();
@@ -601,11 +677,19 @@
601
677
  .hook-inverse-navbar-nav-item-active();
602
678
  }
603
679
 
680
+ //
681
+ // Item
682
+ //
683
+
604
684
  .uk-navbar-item {
605
685
  color: @inverse-navbar-item-color;
606
686
  .hook-inverse-navbar-item();
607
687
  }
608
688
 
689
+ //
690
+ // Toggle
691
+ //
692
+
609
693
  .uk-navbar-toggle {
610
694
  color: @inverse-navbar-toggle-color;
611
695
  .hook-inverse-navbar-toggle();
@@ -147,6 +147,13 @@
147
147
  .uk-overflow-auto > :last-child { margin-bottom: 0; }
148
148
 
149
149
 
150
+ /* Box Sizing
151
+ ========================================================================== */
152
+
153
+ .uk-box-sizing-content { box-sizing: content-box; }
154
+ .uk-box-sizing-border { box-sizing: border-box; }
155
+
156
+
150
157
  /* Resize
151
158
  ========================================================================== */
152
159
 
@@ -384,18 +391,27 @@
384
391
  ========================================================================== */
385
392
 
386
393
  /*
387
- * 1. Required for `a`
394
+ * 1. Style
395
+ * 2. Required for `a`
396
+ * 3. Behave like image but can be overridden through flex utility classes
388
397
  */
389
398
 
390
399
  .uk-logo {
400
+ /* 1 */
391
401
  font-size: @logo-font-size;
392
402
  font-family: @logo-font-family;
393
403
  color: @logo-color;
394
- /* 1 */
404
+ /* 2 */
395
405
  text-decoration: none;
396
406
  .hook-logo();
397
407
  }
398
408
 
409
+ /* 3 */
410
+ :where(.uk-logo) {
411
+ display: inline-block;
412
+ vertical-align: middle;
413
+ }
414
+
399
415
  /* Hover */
400
416
  .uk-logo:hover {
401
417
  color: @logo-hover-color;
@@ -404,7 +420,7 @@
404
420
  .hook-logo-hover();
405
421
  }
406
422
 
407
- .uk-logo > :where(img, svg, video) { display: inline-block; }
423
+ .uk-logo :where(img, svg, video) { display: block; }
408
424
 
409
425
  .uk-logo-inverse { display: none; }
410
426
 
@@ -516,7 +532,8 @@
516
532
  .hook-inverse-logo-hover();
517
533
  }
518
534
 
519
- .uk-logo > :not(.uk-logo-inverse):not(:only-of-type) { display: none; }
535
+ .uk-logo > picture:not(:only-of-type) > :not(.uk-logo-inverse),
536
+ .uk-logo > :not(picture):not(.uk-logo-inverse):not(:only-of-type) { display: none; }
520
537
  .uk-logo-inverse { display: block; }
521
538
 
522
539
  }
@@ -7,14 +7,10 @@
7
7
  // Variables
8
8
  // ========================================================================
9
9
 
10
- @nav-default-subtitle-font-size: 12px;
11
-
12
- //
13
- // New
14
- //
15
-
16
10
  @nav-default-font-size: @global-small-font-size;
17
11
 
12
+ @nav-default-subtitle-font-size: 12px;
13
+
18
14
 
19
15
  // Sublists
20
16
  // ========================================================================
@@ -22,12 +18,6 @@
22
18
  .hook-nav-sub() {}
23
19
 
24
20
 
25
- // Parent icon modifier
26
- // ========================================================================
27
-
28
- .hook-nav-parent-icon() {}
29
-
30
-
31
21
  // Header
32
22
  // ========================================================================
33
23
 
@@ -43,7 +33,7 @@
43
33
  // Default style modifier
44
34
  // ========================================================================
45
35
 
46
- .hook-nav-default() { font-size: @nav-default-font-size; }
36
+ .hook-nav-default() {}
47
37
 
48
38
  .hook-nav-default-item() {}
49
39
 
@@ -91,8 +81,6 @@
91
81
  // Inverse
92
82
  // ========================================================================
93
83
 
94
- .hook-inverse-nav-parent-icon() {}
95
-
96
84
  .hook-inverse-nav-default-item() {}
97
85
  .hook-inverse-nav-default-item-hover() {}
98
86
  .hook-inverse-nav-default-item-active() {}
@@ -7,11 +7,16 @@
7
7
  // Variables
8
8
  // ========================================================================
9
9
 
10
- @navbar-nav-item-gap: 30px;
10
+ @navbar-gap: 30px;
11
+
12
+ @navbar-nav-gap: 30px;
13
+
11
14
  @navbar-nav-item-padding-horizontal: 0;
12
15
 
13
16
  @navbar-nav-item-font-size: @global-small-font-size;
14
17
 
18
+ @navbar-item-padding-horizontal: 0;
19
+
15
20
  @navbar-dropdown-margin: 15px;
16
21
  @navbar-dropdown-padding: 25px;
17
22
  @navbar-dropdown-background: @global-background;
@@ -29,8 +34,6 @@
29
34
 
30
35
  @navbar-dropdown-box-shadow: 0 5px 12px rgba(0,0,0,0.15);
31
36
 
32
- @navbar-dropdown-stretch-background: @global-muted-background;
33
-
34
37
  @navbar-dropbar-box-shadow: 0 5px 7px rgba(0, 0, 0, 0.05);
35
38
 
36
39
  @navbar-dropdown-grid-divider-border-width: @global-border-width;
@@ -104,10 +107,7 @@
104
107
 
105
108
  .hook-navbar-dropdown() { box-shadow: @navbar-dropdown-box-shadow; }
106
109
 
107
- .hook-navbar-dropdown-stretch() {
108
- box-shadow: none;
109
- background: @navbar-dropdown-stretch-background;
110
- }
110
+ .hook-navbar-dropdown-stretch() { box-shadow: none; }
111
111
 
112
112
  .hook-navbar-dropdown-dropbar() { box-shadow: none; }
113
113
 
@@ -25,6 +25,8 @@ $dropdown-padding: 15px !default;
25
25
  $dropdown-background: $global-muted-background !default;
26
26
  $dropdown-color: $global-color !default;
27
27
 
28
+ $dropdown-large-padding: 40px !default;
29
+
28
30
  $dropdown-nav-item-color: $global-muted-color !default;
29
31
  $dropdown-nav-item-hover-color: $global-color !default;
30
32
  $dropdown-nav-subtitle-font-size: $global-small-font-size !default;
@@ -68,6 +70,18 @@ $dropdown-nav-sublist-item-hover-color: $global-color !default;
68
70
  /* Show */
69
71
  .uk-dropdown.uk-open { display: block; }
70
72
 
73
+ /*
74
+ * Remove margin from the last-child
75
+ */
76
+
77
+ .uk-dropdown > :last-child { margin-bottom: 0; }
78
+
79
+
80
+ /* Size modifier
81
+ ========================================================================== */
82
+
83
+ .uk-dropdown-large { padding: $dropdown-large-padding; }
84
+
71
85
 
72
86
  /* Stretch modifier
73
87
  ========================================================================== */
@@ -49,7 +49,7 @@ $leader-fill-margin-left: $global-small-gutter !default;
49
49
  * Pass fill character to JS
50
50
  */
51
51
 
52
- :root { --uk-leader-fill-content: '#{$leader-fill-content}'; }
52
+ :root { --uk-leader-fill-content: #{$leader-fill-content}; }
53
53
 
54
54
 
55
55
  // Hooks