/*================================================== Navs ==================================================== */ // Base class // -------------------------------------------------- .nav { margin-bottom: 0; padding-left: 0; // Override default ul/ol list-style: none; &:extend(.clearfix all); > li { position: relative; display: block; > a { position: relative; display: block; padding: @nav-link-padding; &:hover, &:focus { text-decoration: none; background-color: @nav-link-hover-bg; } } // Disabled state sets text to gray and nukes hover/tab effects &.disabled > a { color: @nav-disabled-link-color; &:hover, &:focus { color: @nav-disabled-link-hover-color; text-decoration: none; background-color: transparent; cursor: not-allowed; } } } // Open dropdowns .open > a { &, &:hover, &:focus { background-color: @nav-link-hover-bg; border-color: #CCC; } } // Nav dividers (deprecated with v3.0.1) // // This should have been removed in v3 with the dropping of `.nav-list`, but // we missed it. We don't currently support this anywhere, but in the interest // of maintaining backward compatibility in case you use it, it's deprecated. .nav-divider { .nav-divider(); } // Prevent IE8 from misplacing imgs // // See https://github.com/h5bp/html5-boilerplate/issues/984#issuecomment-3985989 > li > a > img { max-width: none; } } // Tabs // ------------------------- // Give the tabs something to sit on .nav-tabs { border-bottom: 1px solid @nav-tabs-border-color; > li { float: left; // Make the list-items overlay the bottom border margin-bottom: -1px; // Actual tabs (as links) > a { margin-right: 2px; line-height: @line-height-base; border: 1px solid transparent; border-radius: @border-radius-base @border-radius-base 0 0; &:hover { border-color: @nav-tabs-link-hover-border-color @nav-tabs-link-hover-border-color @nav-tabs-border-color; } } // Active state, and its :hover to override normal :hover &.active > a { &, &:hover, &:focus { color: @nav-tabs-active-link-hover-color; background-color: @nav-tabs-active-link-hover-bg; border: 1px solid @nav-tabs-active-link-hover-border-color; border-bottom-color: transparent; cursor: default; } } } // pulling this in mainly for less shorthand &.nav-justified { .nav-justified(); .nav-tabs-justified(); } } // Lists // ------------------------- .nav-pills { // Sizes &.nav-pills-sm > li > a { font-size: 12px; padding: 4px 8px; } &.nav-pills-lg > li > a { font-size: 14px; padding: 12px 18px; } > li { float: left; // Links rendered as pills > a { color: #888; padding: 8px 14px; border-radius: @nav-pills-border-radius; } + li { margin-left: 7px; } // Active state &.active > a { &, &:hover, &:focus { color: #FFF; background-color: @nav-pills-active-link-hover-bg; } } } } // Stacked pills .nav-stacked { > li { float: none; + li { margin-top: 2px; margin-left: 0; // no need for this gap between nav items } } } // Page Heading // Used as a heading pane inside #content. Negative margin // is used to negate padding from #content .page-heading { position: relative; padding: 30px 40px; margin: -25px -20px 25px; border-bottom: 1px solid #d9d9d9; background-color: #f2f2f2; } // Page Nav. Negative margin // is used to negate padding from #content .page-tabs { margin: -25px -20px 30px; padding: 15px 25px 0; border-bottom: 1px solid #ddd; background: #e9e9e9; .nav-tabs { border-bottom: 0; } .nav-tabs > li > a { color: #AAA; padding: 10px 20px; } .nav-tabs > li:hover > a, .nav-tabs > li:focus > a { border-color: #ddd; } .nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus { color: #666; font-weight: 600; background-color: #eee; border-bottom-color: transparent; } // Responsive page nav styles(converts to block menu) @media(max-width: 800px) { padding: 25px 20px 0; .nav-tabs li { float: none; margin-bottom: 5px; } .nav-tabs li:last-child, .nav-tabs li.active:last-child { margin-bottom: 10px; } .nav-tabs > li > a:hover, .nav-tabs > li > a:focus { border: 1px solid #DDD; } .nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus { border-bottom-color: #ddd; } } } // Nav variations // -------------------------------------------------- // Justified nav links // ------------------------- .nav-justified { width: 100%; > li { float: none; > a { text-align: center; margin-bottom: 5px; } } > .dropdown .dropdown-menu { top: auto; left: auto; } @media (min-width: @screen-sm-min) { > li { display: table-cell; width: 1%; > a { margin-bottom: 0; } } } } // Move borders to anchors instead of bottom of list // // Mixin for adding on top the shared `.nav-justified` styles for our tabs .nav-tabs-justified { border-bottom: 0; > li > a { // Override margin from .nav-tabs margin-right: 0; border-radius: @border-radius-base; } > .active > a, > .active > a:hover, > .active > a:focus { border: 1px solid @nav-tabs-justified-link-border-color; } @media (min-width: @screen-sm-min) { > li > a { border-bottom: 1px solid @nav-tabs-justified-link-border-color; border-radius: @border-radius-base @border-radius-base 0 0; } > .active > a, > .active > a:hover, > .active > a:focus { border-bottom-color: @nav-tabs-justified-active-link-border-color; } } } // Tabbable tabs // ------------------------- // Hide tabbable panes to start, show them when `.active` .tab-content { > .tab-pane { display: none; } > .active { display: block; } } // Dropdowns // ------------------------- // Specific dropdowns .nav-tabs .dropdown-menu { // make dropdown border overlap tab border margin-top: -1px; // Remove the top rounded corners here since there is a hard edge above the menu .border-top-radius(0); } // Nav-list (inline links with active bottom border) // ------------------------------------------------- .nav-list { margin-bottom: 20px; li { display: inline-block; &.active a { color: #444; border-bottom: 3px solid #4a89dc; } } li a { color: #AAA; font-weight: 600; border-bottom: 3px solid transparent; &:hover, &:focus { color: #444; background-color: transparent; } } // Small nav-list &.nav-list-sm li a { padding: 10px 8px; } }