1/* CSS behind nav_spacer() */ 2@mixin nav-spacer() { 3 .nav { 4 /* Make sure nav container is flexbox (they aren't in BS3) */ 5 display: flex !important; 6 display: -webkit-flex !important; 7 // Logic for horizontal nav (e.g., navs_tab(), etc) 8 &:not(.nav-stacked):not(.flex-column) { 9 float: none !important; 10 > .bslib-nav-spacer { 11 margin-left: auto !important; 12 } 13 /* .form-inline doesn't vertically align in BS3? */ 14 > .form-inline { 15 margin-top: auto; 16 margin-bottom: auto; 17 } 18 } 19 // Logic for vertical nav (e.g., navs_pill_list()) 20 &.nav-stacked { 21 flex-direction: column; 22 -webkit-flex-direction: column; 23 height: 100%; 24 > .bslib-nav-spacer { 25 margin-top: auto !important; 26 } 27 } 28 } 29} 30 31/* BS4+ uses this mixin for configurable breakpoints */ 32@if mixin-exists("media-breakpoint-up") { 33 @include media-breakpoint-up(sm) { 34 @include nav-spacer(); 35 } 36} @else { 37 /* BS3 default navbar breakpoint */ 38 @media (min-width: 768px) { 39 @include nav-spacer(); 40 } 41} 42