Blame view

prestige-vue-4.0.0/src/assets/sass/layout/_menu.scss 15.9 KB
5b5ab7e5   함상기   20240409
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
  .layout-wrapper {
      .layout-menu-container {
          list-style-type: none;
          padding: 0;
          margin: 0;
      }
      .overlay-menu-button {
          display: none;
          top: 105px;
          left: 30px;
          position: absolute;
          z-index: 1011;
          width: 45px;
          height: 45px;
          cursor:pointer;
          border: solid 5px transparent;
          border-radius: 50%;
          background-color: $actionBarBgColor;
  
          .overlay-menu-button-bars {
              position:absolute;
              height:100%;
              width:100%;
  
              span {
                  width:25px;
                  height:4px;
                  position: relative;
                  top:2px;
                  left:5px;
                  margin:5px 0;
  
                  &:nth-child(1){
                      transition-delay:.3s;
                  }
  
                  &:nth-child(2){
                      transition-delay:.4s;
                  }
  
                  &:nth-child(3){
                      transition-delay:.45s;
                  }
              }
          }
  
          .overlay-menu-button-times {
              position:absolute;
              height:100%;
              width:100%;
              transform:rotate(45deg);
  
              span{
                  &:nth-child(1){
                      height:0%;
                      width:4px;
                      position:absolute;
                      top:10%;
                      left:16px;
                      transition-delay:0s;
                  }
  
                  &:nth-child(2){
                      width:0%;
                      height:4px;
                      position:absolute;
                      left:10%;
                      top:16px;
                      transition-delay:.01s;
                  }
              }
          }
  
          span {
              display:block;
              background: $overlayMenuButtonColor;
              border-radius:2px;
              transition: ease-in-out .1s;
          }
      }
  
      .layout-menu {
          margin: 0;
          padding: 0;
          list-style-type: none;
  
          li {
              margin: .5em 0 0;
  
              a {
                  display: block;
                  position: relative;
                  padding: .5em;
                  color: $overlayMenuItemTextColor;
                  border-radius: $overlayMenuItemBorderRadius;
                  transition: background-color $transitionDuration;
  
                  .layout-menuitem-text {
                      display: inline-block;
                  }
  
                  .layout-menuitem-icon {
                      margin-right: .5em;
                  }
  
                  .layout-submenu-toggler {
                      position: absolute;
                      right: 4px;
                      font-size: 16px;
                      vertical-align: bottom;
                      transition: transform $transitionDuration;
                  }
  
                  .p-badge {
                      float: right;
                  }
  
                  &:hover {
                      background-color: $overlayMenuItemHoverBgColor;
                  }
  
                  &.rotated-icon {
                      .layout-menuitem-icon {
                          transform: rotate(90deg);
                      }
                  }
              }
  
              &.active-menuitem {
                  > a {
                      color: $overlayMenuItemActiveTextColor;
  
                      .layout-submenu-toggler {
                          transform: rotate(-180deg);
                      }
                  }
              }
  
              ul {
                  list-style-type: none;
                  margin: 0;
                  padding: 0;
                  overflow: hidden;
  
                  &.layout-submenu-container-enter-from,
                  &.layout-submenu-container-leave-to {
                      max-height: 0;
                  }
  
                  &.layout-submenu-container-enter-to,
                  &.layout-submenu-container-leave-from {
                      max-height: 1000px;
                  }
  
                  &.layout-submenu-container-leave-active {
                      overflow: hidden;
                      transition: max-height 0.4s cubic-bezier(0.86, 0, 0.07, 1);
                  }
  
                  &.layout-submenu-container-enter-active {
                      overflow: hidden;
                      transition: max-height 0.4s cubic-bezier(0.86, 0, 0.07, 1);
                  }
              }
          }
      }
  }
  
  @media screen and (min-width: $responsiveLayoutBreakpoint + 1) {
      .layout-wrapper {
          &.layout-menu-horizontal {
              .layout-menu {
                  > li {
                      display: inline-block;
                      width: auto;
                      padding: 0;
                      position: relative;
                      text-transform: uppercase;
                      margin: 0 .5em 0 0;
  
                      > a {
                          padding: .8em 1.15em;
                          margin-bottom: -3.5px;
                          font-weight: 700;
                          color: $horizontalMenuItemTextColor;
                          background-color: $horizontalMenuItemBgColor;
                          transition: background-color $transitionDuration, box-shadow $transitionDuration;
                          @include border-radius-top($borderRadius);
                          @include border-radius-bottom(0);
  
                          .layout-menuitem-text {
                              letter-spacing: 0.5px;
                              font-size: 15px;
                          }
  
                          .layout-menuitem-icon {
                              margin-right: .5em;
                              width: auto;
                          }
  
                          .layout-submenu-toggler {
                              position: static;
                              margin-left: .4em;
                              font-size: 15px;
                          }
                      }
  
                      > ul {
                          position: absolute;
                          min-width: 200px;
                          overflow: auto;
                          max-height: 450px;
                          padding: 0 .5em;
                          margin-top: 3px;
                          padding-bottom: .5em;
                          z-index: 999;
                          background-color: $overlayMenuBgColor;
                          text-transform: capitalize;
                          box-shadow: $overlayMenuShadow;
  
                          &.layout-submenu-container-enter-from,
                          &.layout-submenu-container-leave-to,
                          &.layout-submenu-container-enter-to,
                          &.layout-submenu-container-leave-from {
                              max-height: 500px;
                          }
  
                          &.layout-submenu-container-enter-active ,
                          &.layout-submenu-container-leave-active {
                              overflow: auto;
                              transition: none;
                          }
  
                          li {
                              a {
                                  padding-left: .5em;
                              }
                              li {
                                  a {
                                      padding-left: 1.5em;
                                  }
                                  li {
                                      a {
                                          padding-left: 3em;
                                      }
                                      li {
                                          a {
                                              padding-left: 4.5em;
                                          }
                                          li {
                                              a {
                                                  padding-left: 6em;
                                              }
                                              li {
                                                  a {
                                                      padding-left: 7.5em;
                                                  }
                                              }
                                          }
                                      }
                                  }
                              }
                          }
                      }
  
                      &.active-rootmenuitem, &:hover {
                          > a {
                              color: $horizontalMenuItemHoverTextColor;
                              background-color: $horizontalMenuItemHoverBgColor;
  
                              .layout-submenu-toggler {
                                  transform: rotate(0deg);
                              }
                          }
                      }
  
                      &.active-menuitem {
                          > a {
                              color: $horizontalMenuItemActiveTextColor;
                              background-color: $horizontalMenuItemActiveBgColor;
  
                              .layout-submenu-toggler {
                                  transform: rotate(0deg);
                              }
                          }
  
                          &.active-rootmenuitem {
                              > a {
                                  .layout-submenu-toggler {
                                      transform: rotate(-180deg);
                                  }
                              }
                          }
                      }
                  }
              }
          }
  
          &.layout-menu-overlay {
              .overlay-menu-button {
                  display: block;
                  transition: background-color $transitionDuration;
  
                  &:hover {
                      background-color: $overlayMenuButtonHoverBgColor;
                  }
              }
  
              .layout-menu-wrapper {
                  display: none;
                  position: absolute;
                  top: 124px;
                  z-index: 999;
                  min-width: 250px;
                  animation-duration: .5s;
                  background-color: $overlayMenuBgColor;
                  box-shadow: $overlayMenuShadow;
              }
  
              &.layout-menu-overlay-active {
                  .overlay-menu-button{
                      .overlay-menu-button-bars {
                          span {
                              width:0%;
  
                              &:nth-child(1){
                                  transition-delay:0s;
                              }
  
                              &:nth-child(2){
                                  transition-delay:.125s;
                              }
  
                              &:nth-child(3){
                                  transition-delay:.25s;
                              }
                          }
                      }
  
                      .overlay-menu-button-times {
                          span {
                              &:nth-child(1){
                                  height:80%;
                                  transition-delay:.425s;
                              }
                          }
  
                          span {
                              &:nth-child(2){
                                  width:80%;
                                  transition-delay:.375s;
                              }
                          }
                      }
                  }
  
                  .layout-menu-wrapper {
                      display: block;
                  }
              }
  
              .layout-menu {
                  padding: 1.45em 1em;
  
                  li {
                      a {
                          padding-left: .5em;
                      }
                      li {
                          a {
                              padding-left: 1.5em;
                          }
                          li {
                              a {
                                  padding-left: 3em;
                              }
                              li {
                                  a {
                                      padding-left: 4.5em;
                                  }
                                  li {
                                      a {
                                          padding-left: 6em;
                                      }
                                      li {
                                          a {
                                              padding-left: 7.5em;
                                          }
                                      }
                                  }
                              }
                          }
                      }
                  }
              }
          }
      }
  }
  
  @media screen and (max-width: $responsiveLayoutBreakpoint )  {
      .layout-wrapper {
          &.layout-fullwidth {
              .layout-menu-container {
                  width: 100%;
              }
          }
  
          .layout-menu-container {
              position: absolute;
              width: calc(100% - 30px);
              top: 85px;
              display: none;
              z-index: 10000000;
              background-color: $mobileMenuBgColor;
              padding: 1em;
              overflow: auto;
              max-height:calc(100% - 85px);
          }
  
          .layout-menu {
              > li {
                  margin-bottom: .5em;
                  border-radius: $overlayMenuItemBorderRadius;
                  background-color: $mobileMenuItemBgColor;
  
                  > a {
                      padding: 1em;
                      text-transform: uppercase;
                      letter-spacing: .5;
                      font-weight: 700;
                      color: $mobileMenuItemTextColor;
  
                      &:hover {
                          background-color:$mobileMenuItemHoverBgColor;
                      }
                  }
  
                  &.active-menuitem,
                  &.active-rootmenuitem {
                      background-color: $mobileMenuItemActiveBgColor;
  
                      > a {
                          color: $mobileMenuItemActiveTextColor;
                      }
  
                      > ul:last-child {
                          padding-bottom: .5em;
                      }
                  }
  
                  a {
                      .layout-submenu-toggler {
                          right: 1em;
                      }
                  }
  
                  li {
                      a {
                          padding-left: 2em;
                      }
  
                      li {
                          a {
                              padding-left: 3em;
                          }
                          li {
                              a {
                                  padding-left: 4em;
                              }
                              li {
                                  a {
                                      padding-left: 5em;
                                  }
                                  li {
                                      a {
                                          padding-left: 6em;
                                      }
                                      li {
                                          a {
                                              padding-left: 7em;
                                          }
                                      }
                                  }
                              }
                          }
                      }
                  }
              }
          }
  
          &.layout-mobile-active {
              &.layout-menu-horizontal {
                  .layout-menu {
                      > li {
                          &.active-menuitem {
                              &:not(.active-rootmenuitem) {
                                  background-color: $mobileMenuItemBgColor;
  
                                  > a {
                                      color: $mobileMenuItemTextColor;
  
                                      .layout-submenu-toggler {
                                          transform: rotate(0deg);
                                      }
                                  }
                              }
                          }
                      }
                  }
              }
  
              .layout-menu-container {
                  display: block;
              }
  
              .layout-mask {
                  display: block;
              }
          }
      }
  }