// The dropdown wrapper (`
`) .dropup, .dropdown { position: relative; } .dropdown-toggle { // Generate the caret automatically &::after { display: inline-block; width: 0; height: 0; margin-left: $caret-width * .85; vertical-align: $caret-width * .85; content: ""; border-top: $caret-width solid; border-right: $caret-width solid transparent; border-left: $caret-width solid transparent; } &:empty::after { margin-left: 0; } } // Allow for dropdowns to go bottom up (aka, dropup-menu) // Just add .dropup after the standard .dropdown class and you're set. .dropup { .dropdown-toggle { &::after { border-top: 0; border-bottom: $caret-width solid; } } } // The dropdown menu .dropdown-menu { position: absolute; top: 100%; left: 0; z-index: $zindex-dropdown; display: none; // none by default, but block on "open" of the menu float: left; min-width: $dropdown-min-width; padding: $dropdown-padding-y 0; margin: $dropdown-margin-top 0 0; // override default ul font-size: $font-size-base; // Redeclare because nesting can cause inheritance issues color: $body-color; text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer) list-style: none; background-color: $dropdown-bg; background-clip: padding-box; border: $dropdown-border-width solid $dropdown-border-color; @include border-radius($border-radius); @include box-shadow($dropdown-box-shadow); } // Dividers (basically an `
`) within the dropdown .dropdown-divider { @include nav-divider($dropdown-divider-bg); } // Links, buttons, and more within the dropdown menu // // `