You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
271 lines
5.7 KiB
271 lines
5.7 KiB
3 years ago
|
/* ------------------------------------------------------------------------------
|
||
|
*
|
||
|
* # Bootstrap multiselect
|
||
|
*
|
||
|
* Styles for multiselect.js - custom multiple select plugin
|
||
|
*
|
||
|
* Version: 1.0
|
||
|
* Latest update: May 25, 2015
|
||
|
*
|
||
|
* ---------------------------------------------------------------------------- */
|
||
|
|
||
|
|
||
|
// Core
|
||
|
// ------------------------------
|
||
|
|
||
|
.multiselect {
|
||
|
width: 100%;
|
||
|
min-width: 100%;
|
||
|
text-align: left;
|
||
|
padding-left: @padding-base-horizontal;
|
||
|
padding-right: ((@padding-base-horizontal * 2) + 5);
|
||
|
text-overflow: ellipsis;
|
||
|
overflow: hidden;
|
||
|
|
||
|
// Default button overrides
|
||
|
&.btn-default {
|
||
|
&,
|
||
|
&.disabled {
|
||
|
background-color: @input-bg;
|
||
|
border-color: @input-border;
|
||
|
}
|
||
|
|
||
|
&:active,
|
||
|
.btn-group.open & {
|
||
|
border-color: @input-border;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Caret
|
||
|
.caret {
|
||
|
position: absolute;
|
||
|
top: 50%;
|
||
|
right: @padding-base-horizontal;
|
||
|
margin-top: -(@icon-font-size / 2);
|
||
|
width: @icon-font-size;
|
||
|
text-align: right;
|
||
|
}
|
||
|
|
||
|
|
||
|
//
|
||
|
// Make it as an input instead of button
|
||
|
//
|
||
|
|
||
|
// Large
|
||
|
&.btn-lg {
|
||
|
padding-left: @padding-large-horizontal;
|
||
|
padding-right: (@padding-large-horizontal * 2);
|
||
|
|
||
|
.caret {
|
||
|
right: @padding-large-horizontal;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Small
|
||
|
&.btn-sm {
|
||
|
padding-left: @padding-small-horizontal;
|
||
|
padding-right: (@padding-small-horizontal * 2);
|
||
|
|
||
|
.caret {
|
||
|
right: @padding-small-horizontal;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Mini
|
||
|
&.btn-xs {
|
||
|
padding-left: @padding-xs-horizontal;
|
||
|
padding-right: (@padding-xs-horizontal * 2);
|
||
|
|
||
|
.caret {
|
||
|
right: @padding-xs-horizontal;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// Container
|
||
|
// ------------------------------
|
||
|
|
||
|
.multiselect-container {
|
||
|
min-width: 180px;
|
||
|
max-height: 250px;
|
||
|
overflow-y: auto;
|
||
|
|
||
|
> li {
|
||
|
padding: 0;
|
||
|
|
||
|
// Links
|
||
|
> a {
|
||
|
padding: 0;
|
||
|
|
||
|
// Label
|
||
|
> label {
|
||
|
margin: 0;
|
||
|
height: 100%;
|
||
|
cursor: pointer;
|
||
|
padding: (@padding-base-vertical + 1) @padding-base-horizontal;
|
||
|
padding-left: (@padding-base-horizontal + @checkbox-size + 10);
|
||
|
|
||
|
// Inside navbar form
|
||
|
.navbar-form & {
|
||
|
display: block;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Checkboxes and radios
|
||
|
.checker,
|
||
|
.choice {
|
||
|
top: 50%;
|
||
|
margin-top: -(@checkbox-size / 2);
|
||
|
left: @padding-base-horizontal;
|
||
|
}
|
||
|
|
||
|
// Select all link
|
||
|
&.multiselect-all label {
|
||
|
font-weight: 500;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Disabled item
|
||
|
&.disabled > a {
|
||
|
background-color: transparent;
|
||
|
|
||
|
> label {
|
||
|
cursor: @cursor-disabled;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Optgroup title
|
||
|
&.multiselect-group {
|
||
|
> label,
|
||
|
&.active > label {
|
||
|
margin: 0;
|
||
|
padding: (@padding-base-vertical + 1) @content-padding-base;
|
||
|
font-size: @font-size-mini;
|
||
|
line-height: @line-height-mini;
|
||
|
color: @text-muted;
|
||
|
text-transform: uppercase;
|
||
|
margin-top: (@list-spacing * 2);
|
||
|
background-color: transparent;
|
||
|
cursor: default;
|
||
|
}
|
||
|
|
||
|
// Disabled color
|
||
|
&.disabled {
|
||
|
color: @text-muted;
|
||
|
}
|
||
|
|
||
|
// First item
|
||
|
&:first-child {
|
||
|
> label,
|
||
|
&.active > label {
|
||
|
margin-top: @list-spacing;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Clickable group
|
||
|
&.multiselect-group-clickable > label {
|
||
|
cursor: pointer;
|
||
|
}
|
||
|
|
||
|
// Disabled group
|
||
|
&.disabled {
|
||
|
&,
|
||
|
&:hover,
|
||
|
&:focus {
|
||
|
label {
|
||
|
background-color: transparent;
|
||
|
cursor: @cursor-disabled;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// Width sizing
|
||
|
// ------------------------------
|
||
|
|
||
|
// Full width
|
||
|
.multi-select-full > .btn-group {
|
||
|
width: 100%;
|
||
|
|
||
|
.multiselect-container {
|
||
|
width: inherit;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Fixed width
|
||
|
.multi-select-fixed > .btn-group > .btn {
|
||
|
width: 250px;
|
||
|
}
|
||
|
|
||
|
// Auto width
|
||
|
.multi-select-auto > .btn-group > .btn {
|
||
|
width: auto;
|
||
|
}
|
||
|
|
||
|
|
||
|
// Misc
|
||
|
// ------------------------------
|
||
|
|
||
|
// Border color
|
||
|
div[class*=border-] > .btn-group {
|
||
|
border-color: inherit;
|
||
|
> .multiselect {
|
||
|
border-color: inherit;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Filter
|
||
|
li.multiselect-filter {
|
||
|
position: relative;
|
||
|
padding: (@padding-base-horizontal - @list-spacing) @padding-base-horizontal;
|
||
|
margin-bottom: (@padding-base-horizontal - @list-spacing);
|
||
|
|
||
|
// Center icon vertically
|
||
|
i {
|
||
|
font-size: @font-size-small;
|
||
|
position: absolute;
|
||
|
left: (@padding-base-horizontal * 2);
|
||
|
top: 50%;
|
||
|
margin-top: -(@font-size-small / 2);
|
||
|
.opacity(0.5);
|
||
|
}
|
||
|
|
||
|
// Input horizontal padding
|
||
|
.form-control {
|
||
|
padding-left: (@padding-base-horizontal * 3);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Remove left rounded corners
|
||
|
.input-group-btn,
|
||
|
.input-group-addon {
|
||
|
& + .multi-select-full,
|
||
|
& + .multi-select-auto,
|
||
|
& + .multi-select-fixed,
|
||
|
& + .btn-group {
|
||
|
.multiselect:first-child {
|
||
|
.border-left-radius(0);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Button group styles
|
||
|
.btn-group-multiselect {
|
||
|
width: 100%;
|
||
|
|
||
|
.btn {
|
||
|
float: none;
|
||
|
}
|
||
|
|
||
|
.multiselect {
|
||
|
min-width: 0;
|
||
|
}
|
||
|
}
|
||
|
.btn-group > .btn-group:nth-child(2) > .multiselect.btn {
|
||
|
.border-left-radius(@border-radius-small);
|
||
|
}
|