UNPKG

@arco-design/web-react

Version:

Arco Design React UI Library.

220 lines (185 loc) 5.5 kB
@import './token.less'; @import '../../Select/style/mixin.less'; @cascader-prefix-cls: ~'@{prefix}-cascader'; @cascader-prefix-cls-rtl: ~'@{cascader-prefix-cls}-rtl'; .select-view(@cascader-prefix-cls); .select-view-rtl(@cascader-prefix-cls, @cascader-prefix-cls-rtl); .@{cascader-prefix-cls} { &-popup { top: 4px; box-sizing: border-box; border: 1px solid @select-popup-color-border; border-radius: @select-popup-border-radius; background-color: var(~'@{arco-cssvars-prefix}-color-bg-popup'); box-shadow: @select-popup-box-shadow; overflow: hidden; } &-popup-trigger-hover { .@{cascader-prefix-cls}-list-item { transition: font-weight 0s; } } &-popup &-popup-inner { width: 100%; white-space: nowrap; list-style: none; height: @select-popup-max-height; } &-highlight { font-weight: @font-weight-500; } &-list-column { position: relative; vertical-align: top; display: inline-block; background-color: var(~'@{arco-cssvars-prefix}-color-bg-popup'); height: 100%; &-virtual { width: @cascader-size-item-width; } &:not(:last-of-type) { border-right: 1px solid @select-popup-color-border; } } &-list-wrapper { position: relative; white-space: nowrap; box-sizing: border-box; height: 100%; display: flex; padding: @select-popup-padding-vertical 0; flex-direction: column; &-with-footer { padding-bottom: 0; } } &-list-empty { height: 100%; display: flex; align-items: center; } &-list { padding: 0; margin: 0; list-style: none; box-sizing: border-box; overflow-y: auto; flex: 1; &-item, &-search-item { position: relative; height: @cascader-size-item-height; line-height: @cascader-size-item-height; min-width: 100px; font-size: @cascader-font-item-size; color: @cascader-color-item-text; box-sizing: border-box; display: flex; cursor: pointer; background-color: transparent; &-label { flex-grow: 1; padding-left: @cascader-padding-item-left; padding-right: @cascader-padding-item-right + @cascader-size-item-icon + @cascader-margin-item-icon-left; } .@{prefix}-icon-right, .@{prefix}-icon-check { position: absolute; color: @cascader-color-item-icon; top: 50%; font-size: @cascader-size-item-icon; transform: translateY(-50%); right: @cascader-padding-item-right; } .@{prefix}-icon-check { color: @color-primary-6; } .@{prefix}-icon-loading { position: absolute; margin-top: -(@cascader-size-item-icon / 2); top: 50%; font-size: @cascader-size-item-icon; right: @cascader-padding-item-right; color: @color-primary-6; } } &-item:hover, &-search-item-hover { color: @cascader-color-item-text_hover; background-color: @cascader-color-item-bg_hover; .@{prefix}-checkbox input { // 避免选中checkbox时,select-view 的焦点被抢占 display: none; } .@{prefix}-checkbox:not(.@{prefix}-checkbox-disabled):not(.@{prefix}-checkbox-checked):hover .@{prefix}-checkbox-icon-hover::before { background-color: @cascader-color-checkbox-bg_hover; } } &-item, &-search-item { &-disabled, &-disabled:hover { cursor: not-allowed; background-color: @cascader-color-item-bg_disabled; color: @cascader-color-item-text_disabled; .@{prefix}-icon-right { color: inherit; } .@{prefix}-icon-check { color: var(~'@{arco-cssvars-prefix}-color-primary-light-3'); } } } &-item { &-active { transition: all @transition-duration-2 @transition-timing-function-linear; background-color: @cascader-color-item-bg_active; color: @cascader-color-item-text_active; font-weight: @cascader-font-item-weight_active; &:hover { background-color: @cascader-color-item-bg_active; font-weight: @cascader-font-item-weight_active; color: @cascader-color-item-text_active; } } &-active&-disabled, &-active&-disabled:hover { background-color: @cascader-color-item-bg_disabled_active; font-weight: @cascader-font-item-weight_active; color: @cascader-color-item-text_disabled_active; } } &-multiple { .@{cascader-prefix-cls}-list-item-label { padding-left: 0; } .@{cascader-prefix-cls}-list-item, .@{cascader-prefix-cls}-list-search-item { padding-left: @cascader-padding-item-left; .@{prefix}-checkbox { padding-left: 0; margin-right: @cascader-margin-checkbox-right; } } } } &-list-search&-list-multiple { .@{cascader-prefix-cls}-list-item-label { padding-right: @cascader-padding-item-left; } } &-list-footer { height: @cascader-size-item-height; line-height: @cascader-size-item-height; padding-left: @cascader-padding-item-left; border-top: 1px solid @select-popup-color-border; box-sizing: border-box; } } .cascaderSlide-enter-active, .cascaderSlide-appear-active { transition: margin @transition-duration-3 @transition-timing-function-standard; } @import './rtl.less';