/usr/share/sass/bootstrap
NameSizeModeActions
mixins/-0755rm
utilities/-0755rm
vendor/-0755rm
bootstrap-grid.scss5980644editdlrm
bootstrap-reboot.scss4090644editdlrm
bootstrap.scss9180644editdlrm
_alert.scss11640644editdlrm
_badge.scss11210644editdlrm
_breadcrumb.scss13260644editdlrm
_button-group.scss36260644editdlrm
_buttons.scss26850644editdlrm
_card.scss59350644editdlrm
_carousel.scss47940644editdlrm
_close.scss9400644editdlrm
_code.scss10120644editdlrm
_custom-forms.scss156880644editdlrm
_dropdown.scss44360644editdlrm
_forms.scss92420644editdlrm
_functions.scss41810644editdlrm
_grid.scss17450644editdlrm
_images.scss11570644editdlrm
_input-group.scss63180644editdlrm
_jumbotron.scss4050644editdlrm
_list-group.scss38700644editdlrm
_media.scss830644editdlrm
_mixins.scss10500644editdlrm
_modal.scss63080644editdlrm
_nav.scss21540644editdlrm
_navbar.scss75290644editdlrm
_pagination.scss18230644editdlrm
_popover.scss47050644editdlrm
_print.scss30330644editdlrm
_progress.scss11710644editdlrm
_reboot.scss115390644editdlrm
_root.scss5720644editdlrm
_spinners.scss12630644editdlrm
_tables.scss35440644editdlrm
_toasts.scss11320644editdlrm
_tooltip.scss25120644editdlrm
_transitions.scss2610644editdlrm
_type.scss22220644editdlrm
_utilities.scss5360644editdlrm
_variables.scss484980644editdlrm
Edit: /usr/share/sass/bootstrap/_input-group.scss (6318B)
// stylelint-disable selector-no-qualifying-type // // Base styles // .input-group { position: relative; display: flex; flex-wrap: wrap; // For form validation feedback align-items: stretch; width: 100%; > .form-control, > .form-control-plaintext, > .custom-select, > .custom-file { position: relative; // For focus state's z-index flex: 1 1 auto; width: 1%; min-width: 0; // https://stackoverflow.com/questions/36247140/why-dont-flex-items-shrink-past-content-size margin-bottom: 0; + .form-control, + .custom-select, + .custom-file { margin-left: -$input-border-width; } } // Bring the "active" form control to the top of surrounding elements > .form-control:focus, > .custom-select:focus, > .custom-file .custom-file-input:focus ~ .custom-file-label { z-index: 3; } // Bring the custom file input above the label > .custom-file .custom-file-input:focus { z-index: 4; } > .form-control, > .custom-select { &:not(:first-child) { @include border-left-radius(0); } } // Custom file inputs have more complex markup, thus requiring different // border-radius overrides. > .custom-file { display: flex; align-items: center; &:not(:last-child) .custom-file-label, &:not(:first-child) .custom-file-label { @include border-left-radius(0); } } &:not(.has-validation) { > .form-control:not(:last-child), > .custom-select:not(:last-child), > .custom-file:not(:last-child) .custom-file-label::after { @include border-right-radius(0); } } &.has-validation { > .form-control:nth-last-child(n + 3), > .custom-select:nth-last-child(n + 3), > .custom-file:nth-last-child(n + 3) .custom-file-label::after { @include border-right-radius(0); } } } // Prepend and append // // While it requires one extra layer of HTML for each, dedicated prepend and // append elements allow us to 1) be less clever, 2) simplify our selectors, and // 3) support HTML5 form validation. .input-group-prepend, .input-group-append { display: flex; // Ensure buttons are always above inputs for more visually pleasing borders. // This isn't needed for `.input-group-text` since it shares the same border-color // as our inputs. .btn { position: relative; z-index: 2; &:focus { z-index: 3; } } .btn + .btn, .btn + .input-group-text, .input-group-text + .input-group-text, .input-group-text + .btn { margin-left: -$input-border-width; } } .input-group-prepend { margin-right: -$input-border-width; } .input-group-append { margin-left: -$input-border-width; } // Textual addons // // Serves as a catch-all element for any text or radio/checkbox input you wish // to prepend or append to an input. .input-group-text { display: flex; align-items: center; padding: $input-padding-y $input-padding-x; margin-bottom: 0; // Allow use of