Administrator
2022-09-14 58d006e05dcf2a20d0ec5367dd03d66a61db6849
提交 | 用户 | 时间
58d006 1 //skin-3 should be used along with "no-skin" because of some overlappings
A 2 //<body class="no-skin skin-3">
3
4 /* skin 3 */
5 .skin-3 {
6  @body-background: #BBB;
7  @navbar-background: #404040;
8  @sidebar-background: #DBDBDB;
9  @sidebar-border: #A4C6DD;
10
11  @nav-item-background: #E3E3E3;
12  @nav-item-color: #5A5A5A;
13  @nav-item-border: #F2F2F2;
14
15  //different states
16  @nav-item-color-hover: mix(#1963AA , #4D96CB);
17  @nav-item-background-hover: #FFF;
18  
19  @nav-item-color-open: @nav-item-color-hover;
20  @nav-item-background-open: #F8F8F8;
21
22  @nav-item-background-active: lighten(saturate(#EEF8FF , 10%), 1%);
23  @nav-item-color-active: #4D96CB;
24  
25  @nav-item-border-active: #A4C6DD;
26  @nav-item-border-hover: desaturate(darken(@nav-item-border-active , 5%) , 5%);
27
28
29  //submenu colors
30  @submenu-background: #FFF;
31  @submenu-border: #E5E5E5;
32
33  @submenu-background-active: #FFF; //darken(@submenu-background-active , 2.5%);
34  @submenu-border-active: #E5E5E5;
35
36  @submenu-item-color: #616161;
37  @submenu-item-border: #E4E4E4;
38
39  @submenu-item-background: transparent;
40  @submenu-item-background-hover: #F1F5F9;
41  @submenu-item-background-active: #F5F7FA;
42
43
44  
45  @breadcrumbs-background: #E7F2F8;
46
47  @sidebar-toggle-icon-color: #FFF;
48  @sidebar-toggle-background: #D0D0D0;
49  @shortcuts-background: @sidebar-background;
50  @shortcuts-border: @nav-item-border;
51
52
53  
54  background-color: @body-background;
55  
56  //add a lined-paper like effect
57  .main-container {
58     &:before {
59         background: #FFF;
60
61         background: -moz-linear-gradient(top, #EEF5FA 0%, #FFF 8%) 0 4px;
62         background: -webkit-gradient(linear, 0 0, 0 100%, from(#EEF5FA), color-stop(4%, #FFF)) 0 4px;
63         background: -webkit-linear-gradient(top, #EEF5FA 0%, #FFF 8%) 0 4px;
64         background: -o-linear-gradient(top, #EEF5FA 0%, #FFF 8%) 0 4px;
65         background: -ms-linear-gradient(top, #EEF5FA 0%, #FFF 8%) 0 4px;
66         background: linear-gradient(top, #EEF5FA 0%, #FFF 8%) 0 4px;
67
68         -moz-background-size: 100% 26px;
69         -webkit-background-size: 100% 26px;
70         -o-background-size: 100% 26px;
71         -ms-background-size: 100% 26px;
72         background-size: 100% 26px;
73     }
74     
75     @media (min-width: @screen-sm-min) {
76         &.container:before {
77             .box-shadow(~"0 0 0 1px rgba(50, 100, 200, 0.1)");
78         }
79     }
80 }
81  
82  
83  .navbar {
84     background: @navbar-background;
85  }
86  .sidebar {
87     background-color: @sidebar-background;
88     
89     border-style: solid;
90     border-width: 0 1px 0 0;
91     border-color: @sidebar-border;
92  }
93
94  .nav-list > li {
95     border-color: @nav-item-border;// !important;
96     > a {
97         background-color: @nav-item-background;
98         color: @nav-item-color;
99
100         > .arrow {
101             color: inherit;
102         }
103         
104         &:focus {
105             background-color: lighten(@nav-item-background , 2%);
106             color: @nav-item-color;
107         }
108     }
109
110     &:hover {
111         border-color: @nav-item-border-hover !important;
112         & + li {
113             border-top-color: @nav-item-border-hover !important;
114         }
115     }
116     &.open {
117         border-color: @nav-item-border-hover !important;
118         & + li {
119             border-top-color: @nav-item-border-hover !important;
120         }
121     }
122     &.active {
123         border-color: @nav-item-border-active !important;
124         & + li {
125             border-color: @nav-item-border-active !important;
126             &:last-child {
127                 border-bottom-color: @nav-item-border !important;
128                 &:hover {
129                     border-bottom-color: @nav-item-border-hover !important;
130                 }
131             }
132         }
133     }
134
135
136     &:hover > a {
137         background-color: @nav-item-background-hover;
138         color: @nav-item-color-hover;
139     }
140
141     &.open > a , &.open:hover > a  {
142         color: @nav-item-color-open;
143         background-color: @nav-item-background-open;
144     }
145     &.open > a > .arrow {
146         color: inherit;
147     }
148
149     &.active > a , &.active.highlight > a {
150         background-color: @nav-item-background-active !important;
151         color: @nav-item-color-active !important;
152     }
153  }
154
155
156  .nav-list > li:hover:before , .nav-list > li.open:before {
157     display: block;
158     background-color: saturate(lighten(mix(#4D96CB , #444) , 10%), 10%) !important;
159  }
160  .nav-list > li.active:before {
161     display: block;
162     background-color: #4D96CB !important;
163  }
164
165  .page-content {
166     background-color:transparent;
167     //so that .main-content's background can be seen
168  }
169  .infobox-container .infobox:not(.infobox-dark) {
170     border-style: solid;
171     background-color: transparent;
172  }
173
174  .nav-list > li.active:after {
175     display: none;
176  }
177
178  .nav-list li.active > a:after {
179     border-right-color: #FFF;
180     -moz-border-right-colors: #FFF;
181     
182     //border-width: 16px 10px;
183     //top: 3px;
184    
185     border-width: 12px 8px;
186     top: 7px;
187     
188     right: -1px;
189  }
190  .nav-list li.active > a:before {
191     display: block;
192     content: "";
193     
194     position: absolute;
195     
196     background-color: transparent;
197     
198     border-style: solid;
199     border-color: transparent;
200     
201     border-right-color: darken(@sidebar-border , 5%);
202     -moz-border-right-colors: darken(@sidebar-border , 5%);
203
204     //border-width: 16px 10px;
205     //top: 3px;
206     right: 0;
207     
208     border-width: 12px 8px;
209     top: 7px;
210  }
211  
212  .nav-list > li.active > .submenu li.active > a {
213     &:before, &:after {
214         //top: 6px;
215         top: 4px;
216     }
217  }
218  
219  
220  .nav-list li.active.open > a:before {
221     display: none;
222  }
223  .nav-list li.highlight.active.open > a:before {
224     display: block;
225  }
226  
227  .nav-list li.active:not(.open) li.active > a:before {
228     //hide the active caret when parent submenu is being closed (not open)
229     display: none !important;
230  }
231  
232
233   
234   
235
236   
237
238
239   .nav-list > li.highlight.active > a:after {
240     border-left-color: @nav-item-background-active;
241     -moz-border-left-colors: @nav-item-background-active;
242   }
243   .nav-list > li.highlight.active > a:before {
244     border-left-color: darken(@sidebar-border , 5%);
245     -moz-border-left-colors: darken(@sidebar-border , 5%);
246   }
247
248
249   .nav-list li > .arrow:before {
250         border-right-color: darken(#A4C6DD , 10%);
251         -moz-border-right-colors: darken(#A4C6DD , 10%);
252   }
253   
254   
255  .nav-list > li .submenu > li {
256   &.active:not(.open) > a {
257     background-color: @submenu-item-background-active;
258     &:hover {
259         background-color: @submenu-item-background-hover;
260     }
261   }
262  }
263  
264  
265  @media only screen and (max-width: @grid-float-breakpoint-max) {
266     .sidebar.responsive .nav-list > li.active.open > a:after {
267         display: none;
268     }
269  }
270
271  
272  
273  .enable_submenu_hover_skin_3() when(@enable-submenu-hover = true) {
274    @media only screen and (min-width: @screen-hover-menu) {
275    .nav-list li.hover > .submenu {
276       border-color: darken(@sidebar-border , 3%);
277     }
278    }//@media
279   @media only screen and (min-width: max(@screen-hover-menu, @grid-float-breakpoint)) {
280     .nav-list li.hover {
281         &.active > a:before {
282             display: block;
283         }
284         .submenu > li.active > a:before {
285             display: none ;
286         }
287     }
288   }
289  }
290  .enable_submenu_hover_skin_3();
291
292  .menu_min_skin_3() {
293       .nav-list > li > a > .menu-text {
294         background-color: lighten(#EDF3F7 , 1%);
295         border-color: #A4C6DD;
296       }
297       .nav-list > li.active > a > .menu-text {
298         background-color: #EDF3F7;
299       }
300       .nav-list > li > .submenu {
301         border-color: #A4C6DD;
302         border-top-color: #C9DAE5;
303       }
304       
305
306       .nav-list > li.active > .arrow:before {
307             border-right-color: #709FBF;
308             -moz-border-right-colors: #709FBF;
309       }
310       .nav-list > li > .arrow:after {
311             border-right-color: #EDF3F7;
312             -moz-border-right-colors: #EDF3F7;
313       }
314   
315  
316      .nav-list li.active > a {
317         &:after , &:before {
318             display: none;
319         }
320      } 
321      .nav-list > li.active > a {
322         &:after, &:before {
323             display: block;
324             border-width: 9px 7px;
325             top: 10px;
326         }
327      }
328      
329
330      
331      
332      .nav-list > li.active.highlight > a {
333         &:after, &:before {
334             border-width: 20px 0 21px 10px;
335             top: -1px;
336         }
337      }
338     .nav-list > li.active:hover > a, .nav-list > li.active.hover-show > a{
339         &:after, &:before {
340             display: none;
341         }
342     }
343      
344      
345      .sidebar-shortcuts-large {
346         background-color: #F5F5F5;
347      }
348  }
349  
350  .enable_sidebar_collapse_skin_3() when(@enable-sidebar-collapse = true) {
351   .sidebar.menu-min {
352     .menu_min_skin_3();
353     
354     .enable_responsive_menu_tmp_in1() when(@enable-responsive-menu = true) {
355          @media only screen and (max-width: @grid-float-breakpoint-max) {
356             &.responsive .nav-list > li.active > a {
357                 &:after, &:before {
358                     display: none;
359                 }
360             }
361          }
362      }
363      .enable_responsive_menu_tmp_in1();
364   }
365  }
366  .enable_sidebar_collapse_skin_3();
367  
368  
369  @media only screen and (max-width: @grid-float-breakpoint-max) {
370     .sidebar.responsive {
371         border-bottom-width: 1px !important;
372         
373         .nav-list > li.active.open > a:after {
374             display: none;
375         }
376         .nav-list > li.active.highlight > a:after,
377         .nav-list > li.active.highlight > a:before {
378             display: block;
379         }
380     }
381     .sidebar.navbar-collapse {
382         border-bottom-color: #A4C6DD;
383     }
384     
385     .nav-list li.active > a {
386         &:after , &:before {
387             display: none;
388         }
389     }
390     
391     .enable_minimized_responsive_menu_skin_3() when(@enable-minimized-responsive-menu = true) {
392      .sidebar.responsive-min {
393         .menu_min_skin_3();
394      }
395      .sidebar.responsive-max {
396         border-width: 0 1px 1px 0;
397         .nav-list li.hover.active > a:before {
398             display: none;
399         }
400
401         .nav-list > li.active.open > a:after {
402             display: none;
403         }
404         .nav-list > li.active.highlight > a:after,
405         .nav-list > li.active.highlight > a:before {
406             display: block;
407         }
408       }
409      }
410      .enable_minimized_responsive_menu_skin_3();
411      
412
413      .sidebar.navbar-collapse .sidebar-shortcuts-large {
414         background-color: transparent;
415      }
416  }
417
418  
419
420  
421
422  //extra
423  .sidebar-shortcuts , .sidebar-shortcuts-mini {
424     background-color: @shortcuts-background;
425     //border-color: @shortcuts-border;
426  }
427  .sidebar-shortcuts-large > .btn:focus {
428     outline: none;
429  } 
430  .sidebar > .nav-search {
431     background-color: @shortcuts-background;
432     //border-color: @shortcuts-border;
433  }
434
435  .sidebar-toggle {
436     background-color: @sidebar-toggle-background;
437     border-color: @nav-item-border; 
438     //border-width: 0 0 1px;
439
440     &:before {
441         border-color: @nav-item-border;
442     }
443
444     > .@{icon} {
445         background-color: @sidebar-toggle-icon-color;
446         background-color:#FFF;
447         border-color:#999;
448         color:#999;
449     }
450  }
451  .sidebar-scroll .nav-wrap-up + .sidebar-toggle:after {
452     display: block;
453     content: "";
454     position: absolute;
455     top: 0;
456     bottom: 0;
457     right: -1px;
458     border-right: 1px solid @sidebar-border;//to cover the active item caret when scrolling
459  }
460  
461
462  .enable_collapsible_responsive_menu_skin_3_tmpp() when(@enable-collapsible-responsive-menu = true) {
463      @media only screen and (max-width: @grid-float-breakpoint-max) {
464       .sidebar.navbar-collapse {
465         .nav-list > li:before {
466             height: @nav-item-height + 4 !important;
467         }
468         .sidebar-shortcuts {
469             padding: 0 0 3px !important;
470         }
471       }
472      }
473  }
474  .enable_collapsible_responsive_menu_skin_3_tmpp();
475  
476  
477  
478  @media only screen and (min-width: @screen-hover-menu) {
479     .nav-list > li.active.hover {
480         &:hover, &.hover-show {
481             > a.dropdown-toggle:after, > a.dropdown-toggle:before {
482                 display: none;
483             }
484         }
485     }
486  }
487  
488
489
490  
491  .enable_old_menu_toggle_button_skin_3() when(@enable-old-menu-toggle-button = true) {
492  .main-container .menu-toggler {
493     background-color: #62A8D1;
494     color: #FFF;
495     
496     &:before, &:after {
497         border-color: #FFF;
498     }
499     
500     > .toggler-text {
501         border-top-color: #62A8D1;
502         -moz-border-top-colors: #62A8D1;
503         &:after {
504             color: #FFF;
505         }
506     }
507  }
508  }
509  .enable_old_menu_toggle_button_skin_3();
510
511
512  .navbar .navbar-toggle {
513     //box-shadow: none;
514     //border-radius: 0;
515     border-color: rgba(255, 255, 255, 0.15);
516
517     transition: background-color 0.1s ease 0s;
518     background-color: #648CAE;
519     
520     &:focus {
521         background-color: #648CAE;
522         border-color: rgba(255, 255, 255, 0.15);
523     }
524     &:hover {
525         background-color: darken(#648CAE , 4%);
526         border-color: rgba(255, 255, 255, 0.15);
527     }
528     &.display, &[data-toggle=collapse]:not(.collapsed) {
529         background-color: darken(#648CAE , 8%);
530         border-color: rgba(255, 255, 255, 0.3);
531     }
532  }
533
534
535   .enable_breadcrumbs_skin_3() when(@enable-breadcrumbs = true) {
536      .breadcrumbs {
537         border-width: 0;
538         background-color: @breadcrumbs-background;
539         border-radius: 4px;
540         
541         margin: 8px 8px 0;
542     }
543     
544
545     @media only screen and (max-width: @grid-float-breakpoint-max) {
546         .breadcrumbs {
547             margin: 5px 5px 0;
548         }
549         
550         .menu-toggler + .sidebar.responsive + .main-content .breadcrumbs {
551             margin: 0;
552             border-radius: 0;
553         }
554     }
555
556
557     .enable_fixed_breadcrumbs_skin_3() when(@enable-fixed-breadcrumbs = true) {
558         @media (min-width: @screen-fixed-breadcrumbs) {
559             .breadcrumbs.breadcrumbs-fixed + .page-content {
560                 padding-top: @page-content-padding-top + @breadcrumb-height + 8;
561             }
562         }
563         @media (min-width: @screen-fixed-breadcrumbs) and (max-width: @grid-float-breakpoint-max) {
564             .breadcrumbs.breadcrumbs-fixed + .page-content {
565                 padding-top: @page-content-padding-top + @breadcrumb-height + 5;
566             }
567
568             .menu-toggler + .sidebar.reponsive + .main-content .breadcrumbs.breadcrumbs-fixed + .page-content {
569                 padding-top: @page-content-padding-top + @breadcrumb-height;
570             }
571         }
572
573
574         .enable_container_breadcrumbs_skin_3() when(@enable-breadcrumbs = true) {
575          //because breadcrumbs has 8px margin on left and right
576          .container.main-container {
577             @media (min-width: max(@screen-sm-min , @screen-fixed-breadcrumbs, @screen-compact-menu)) and (max-width: @grid-float-breakpoint-max) {
578                 .sidebar.compact + .main-content .breadcrumbs-fixed {
579                     width: @container-sm - 10;
580                 }
581             }
582             @media (min-width: max(@screen-sm-min , @screen-fixed-breadcrumbs)) and (max-width: @grid-float-breakpoint-max) {
583                 .breadcrumbs-fixed {
584                     width: @container-sm - 10;
585                 }                
586                 .sidebar.menu-min + .main-content .breadcrumbs-fixed {
587                     width: @container-sm - 10;
588                 }
589                 
590                 .sidebar.responsive-min + .main-content .breadcrumbs-fixed {
591                     width: @container-sm - @sidebar-min-width - 10;
592                 }
593              }
594              @media (min-width: max(@screen-compact-menu, @screen-md-min)) {
595                .sidebar.compact + .main-content .breadcrumbs-fixed {
596                     width: @container-md - @sidebar-compact-width - 16;
597                 }
598              }
599              @media (min-width: @screen-md-min) {
600                 .breadcrumbs-fixed {
601                     width: @container-md;
602                 }
603                 .sidebar + .main-content .breadcrumbs-fixed {
604                     width: @container-md - @sidebar-width - 16;
605                 }    
606                 .sidebar.menu-min + .main-content .breadcrumbs-fixed {
607                     width: @container-md - @sidebar-min-width - 16;
608                 }
609              }
610              
611              @media (min-width: max(@screen-compact-menu, @screen-lg-min)) {
612                 .sidebar.compact + .main-content .breadcrumbs-fixed {
613                     width: @container-lg - @sidebar-compact-width - 16;
614                 }
615              }
616
617              @media (min-width: @screen-lg-min) {
618                 .breadcrumbs-fixed {
619                     width: @container-lg - 16;
620                 }
621                 .sidebar + .main-content .breadcrumbs-fixed {
622                     width: @container-lg - @sidebar-width - 16;
623                 }
624                 .sidebar.menu-min + .main-content .breadcrumbs-fixed {
625                     width: @container-lg - @sidebar-min-width - 16;
626                 }
627              }
628          }
629         }
630         .enable_container_breadcrumbs_skin_3();
631     }
632     .enable_fixed_breadcrumbs_skin_3();
633
634  }
635  .enable_breadcrumbs_skin_3();
636  
637
638  @media only screen and (max-width: @grid-float-breakpoint-max) {
639     .nav-list li.active > a:before, .nav-list li.active > a:after {
640         display: none;
641     }
642  }
643
644  .sidebar-shortcuts-large > .btn {
645     line-height: 26px;
646     border-width: 1px;
647  }
648  .sidebar-shortcuts-mini {
649     padding-top: 3px;
650     padding-bottom: 3px;
651     padding-left: 1px;
652  }
653  .sidebar-shortcuts-mini > .btn {
654     border-width: 1px;
655     opacity: 1;
656     padding: 7px;
657     margin: 1px 1px 0 0;
658  }
659  
660  
661  
662 .enable_horizontal_menu_skin_3() when(@enable-horizontal-menu = true) {
663  @media only screen and (min-width: @grid-float-breakpoint) {
664  //top menu
665  .sidebar.h-sidebar {
666     background-color: @nav-item-background;
667     &:before {
668         background-color: #CBD0D6;
669         border-bottom-width: 0;
670     }
671     
672     .sidebar-shortcuts-mini > .btn {
673         padding: 8px;
674     }
675     .sidebar-shortcuts-large {
676         background-color: #FFF;
677         line-height: 36px;
678     }
679     
680     + .main-content .breadcrumbs {
681         border-color: desaturate(darken(@breadcrumbs-background , 5%) , 5%);
682         top: 2px;
683     }
684     
685     .nav-list > li.hover > .submenu {
686         //border-color: #CCC;
687         border-color: #A4C6DD;
688     }
689
690     
691     .nav-list > li {
692         border-color: @nav-item-border;
693         &:hover , &:hover + li {
694             border-left-color: @nav-item-border-hover;
695         }
696         &:last-child:hover {
697             border-right-color: @nav-item-border-hover;
698         }
699         &.active , &.active + li , &:hover + li.active {
700             border-left-color: @nav-item-border-active;
701         }
702         &.active:last-child {
703             border-right-color: @nav-item-border-active;
704         }
705     }
706
707     
708      .nav-list > li.active > a:after {
709         left: 0;
710         top: auto;
711         right: auto;
712         bottom: -2px;
713         
714         left: 50%;
715         margin-left: -7px;
716         
717         border-color: transparent;
718         -moz-border-right-colors: none;
719
720         border-width: 8px 7px !important;
721         border-bottom-color: #FFF;
722         -moz-border-bottom-colors: #FFF;
723      }
724      .nav-list > li.active > a:before {
725         display: block;
726         left: 0;
727         top: auto;
728         right: auto;
729         
730         bottom: -1px;
731         
732         left: 50%;
733         margin-left: -8px !important;
734         
735         border-width: 8px !important;
736         
737         border-color: transparent;
738         -moz-border-right-colors: none;
739         
740         border-bottom-color:  lighten(#4D96CB, 10%);
741         -moz-border-bottom-colors: lighten(#4D96CB, 10%);
742      }
743      
744      
745      .nav-list > li.hover {
746         > .arrow:before {
747             -moz-border-right-colors: none;
748             border-right-color: transparent;
749             
750             border-bottom-color:  darken(#A4C6DD , 10%);
751             -moz-border-bottom-colors:  darken(#A4C6DD , 10%);
752         }
753     }
754     
755     
756     
757     &.menu-min {
758         .sidebar-shortcuts {
759             max-width: 52px;
760             padding-left: 2px;
761             padding-right: 2px;
762         }
763         .sidebar-shortcuts-mini > .btn {
764             padding: 7px;
765         }
766         
767         .nav-list > li.hover > .submenu {
768             border-top-color: #C9DAE5;
769         }
770         
771         .nav-list > li.active > a > .menu-text {
772             border-left-color: #A4C6DD;
773         }
774         .nav-list > li > .arrow:after {
775             -moz-border-bottom-colors: #EDF3F7;
776             border-bottom-color: #EDF3F7;
777         }
778     }
779  
780  }
781  }//@media
782 }
783 .enable_horizontal_menu_skin_3();
784
785
786
787 .sidebar-scroll {
788  .sidebar-shortcuts {
789     //border-bottom: 1px solid desaturate(lighten(@nav-item-border-active , 5%) , 5%);
790     border-bottom-color: 1px solid #99B6C9;
791  }
792  .sidebar-toggle {
793     //border-top: 1px solid desaturate(lighten(@nav-item-border-active , 5%) , 5%);
794     border-top-color: #99B6C9;
795  }
796
797 }
798
799
800  
801 @media only screen and (min-width: @screen-sm-min) and (max-width: @grid-float-breakpoint-max) {
802  .navbar.navbar-collapse {
803     background-color: transparent;
804     &:before , .navbar-container {
805         background: @navbar-background;
806     }
807  }
808 }
809
810
811
812     //disabled state
813     .nav-list > li.disabled:before {
814         display: none !important;
815     }
816
817 }//.skin-3