Files
vxe-table/styles/select.scss
xuliangzhan da48922795 优化样式
2021-06-25 20:44:22 +08:00

192 lines
3.7 KiB
SCSS

/**Variable**/
@import './helpers/mixin.scss';
@import './base/loading.scss';
.vxe-select {
position: relative;
display: inline-block;
width: 180px;
color: $vxe-font-color;
text-align: left;
& > .vxe-input {
.vxe-input--inner {
cursor: pointer;
}
}
&.is--disabled {
& > .vxe-input {
.vxe-input--inner {
cursor: no-drop;
}
}
}
&.is--loading {
& > .vxe-input {
.vxe-input--inner {
cursor: progress;
}
}
}
& > .vxe-input {
width: 100%;
.vxe-input--suffix-icon {
@include animatTransition(transform, .2s);
}
}
&.is--active {
& > .vxe-input {
.vxe-input--inner {
border: 1px solid $vxe-primary-color;
}
}
}
}
.vxe-select-slots {
display: none;
}
.vxe-select--panel {
display: none;
position: absolute;
left: 0;
padding: 4px 0;
color: $vxe-font-color;
text-align: left;
&:not(.is--transfer) {
min-width: 100%;
}
&.is--transfer {
position: fixed;
}
&.animat--leave {
display: block;
opacity: 0;
transform: scaleY(0.5);
transition: transform .3s cubic-bezier(.23,1,.32,1), opacity .3s cubic-bezier(.23,1,.32,1);
transform-origin: center top;
backface-visibility: hidden;
transform-style: preserve-3d;
&[placement="top"] {
transform-origin: center bottom;
}
}
&.animat--enter {
opacity: 1;
transform: scaleY(1);
}
}
.vxe-select-option--wrapper {
overflow-x: hidden;
overflow-y: auto;
padding: 4px 0;
max-height: 200px;
border-radius: $vxe-border-radius;
border: 1px solid $vxe-table-popup-border-color;
box-shadow: 0 0 6px 2px rgba(0, 0, 0, 0.1);
background-color: $vxe-select-panel-background-color;
}
.vxe-optgroup {
.vxe-optgroup--title {
padding: 0 6px;
color: $vxe-optgroup-title-color;
font-size: 12px;
}
}
.vxe-optgroup--wrapper {
.vxe-select-option {
padding: 0 20px;
}
}
.vxe-select-option {
padding: 0 10px;
max-width: 400px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
user-select: none;
&.is--selected {
font-weight: 700;
color: $vxe-primary-color;
}
&:not(.is--disabled) {
cursor: pointer;
&.is--hover {
background-color: $vxe-select-option-hover-background-color;
}
}
&.is--disabled {
color: $vxe-disabled-color;
cursor: no-drop;
}
}
.vxe-select--empty-placeholder {
padding: 0 10px;
text-align: center;
}
.vxe-select,
.vxe-select--panel {
font-size: $vxe-font-size;
&.size--medium {
font-size: $vxe-font-size-medium;
}
&.size--small {
font-size: $vxe-font-size-small;
}
&.size--mini {
font-size: $vxe-font-size-mini;
}
}
.vxe-select--panel {
.vxe-optgroup--title,
.vxe-select-option {
height: $vxe-select-option-height-default;
}
.vxe-optgroup--title,
.vxe-select-option,
.vxe-select--empty-placeholder {
line-height: $vxe-select-option-height-default;
}
&.size--medium {
.vxe-optgroup--title,
.vxe-select-option {
height: $vxe-select-option-height-medium;
}
.vxe-optgroup--title,
.vxe-select-option,
.vxe-select--empty-placeholder {
line-height: $vxe-select-option-height-medium;
}
}
&.size--small {
.vxe-optgroup--title,
.vxe-select-option {
height: $vxe-select-option-height-small;
}
.vxe-optgroup--title,
.vxe-select-option,
.vxe-select--empty-placeholder {
line-height: $vxe-select-option-height-small;
}
}
&.size--mini {
.vxe-optgroup--title,
.vxe-select-option {
height: $vxe-select-option-height-mini;
}
.vxe-optgroup--title,
.vxe-select-option,
.vxe-select--empty-placeholder {
line-height: $vxe-select-option-height-mini;
}
}
}