UNPKG

choerodon-ui

Version:

An enterprise-class UI design language and React-based implementation

275 lines (250 loc) 6.67 kB
@import '../../style/themes/default'; @import '../../style/mixins/index'; @import '../../input/style/mixin'; @cascader-prefix-cls: ~'@{c7n-prefix}-cascader'; .@{cascader-prefix-cls} { .reset-component; &-input.@{c7n-prefix}-input { display: block; width: 100%; // because input.less will compile after cascader.less background-color: transparent !important; cursor: pointer; } &-picker { .reset-component; position: relative; display: inline-block; background-color: @component-background; border-radius: @border-radius-base; outline: 0; cursor: pointer; & .@{c7n-prefix}-input-rendered { margin: 0; } &-with-value &-label { color: transparent; } &-disabled { color: @disabled-color; background: @input-disabled-bg; cursor: not-allowed; .@{cascader-prefix-cls}-input { cursor: not-allowed; } } &:focus .@{cascader-prefix-cls}-input { .active; } &-label { position: absolute; top: 50%; left: 0; width: 100%; margin-top: -0.1rem; padding: @input-padding-vertical-base @input-padding-horizontal; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; } .@{c7n-prefix}-input-has-label .@{c7n-prefix}-input-content { padding-top: 0; } &-clear { position: absolute; top: 50%; right: .01rem; z-index: 2; width: 0.2rem; height: 0.2rem; margin-top: -0.08rem; color: @input-color; background: @component-background; cursor: pointer; opacity: 0; transition: color @animation-duration-slow ease, opacity 0.15s ease; } &:hover &-clear { opacity: 1; } // arrow &-arrow { position: absolute; top: 50%; right: .01rem; z-index: 1; width: 0.2rem; height: 0.2rem; margin-top: -0.08rem; color: @input-color; &::before { transition: transform @animation-duration-base; } &&-expand { &::before { transform: rotate(180deg); } } } } &-picker-small &-picker-clear, &-picker-small &-picker-arrow { right: 0; } &-menus { position: absolute; z-index: @zindex-dropdown; font-size: @font-size-base; white-space: nowrap; background: @component-background; border-radius: @border-radius-base; box-shadow: @shadow-4; ul, ol { margin: 0; padding: 0; list-style: none; } &-empty, &-hidden { display: none; } &.slide-up-enter.slide-up-enter-active&-placement-bottomLeft, &.slide-up-appear.slide-up-appear-active&-placement-bottomLeft { animation-name: antSlideUpIn; } &.slide-up-enter.slide-up-enter-active&-placement-topLeft, &.slide-up-appear.slide-up-appear-active&-placement-topLeft { animation-name: antSlideDownIn; } &.slide-up-leave.slide-up-leave-active&-placement-bottomLeft { animation-name: antSlideUpOut; } &.slide-up-leave.slide-up-leave-active&-placement-topLeft { animation-name: antSlideDownOut; } } &-menu { display: inline-block; min-width: 1.11rem; height: 1.8rem; margin: 0; padding: @cascader-menu-padding; overflow: auto; vertical-align: top; list-style: none; border-right: @border-width-base @border-style-base @border-color-split; &:first-child { border-radius: @border-radius-base 0 0 @border-radius-base; } &:last-child { margin-right: -0.01rem; border-right-color: transparent; border-radius: 0 @border-radius-base @border-radius-base 0; } &:only-child { border-radius: @border-radius-base; } &-single { border-right: 0; &:last-child { margin-right: 0; } } &-single &-item { float: left; overflow: hidden; text-overflow: ellipsis; } &-tab { margin-top: .05rem; margin-bottom: .1rem; padding: 0.08rem 0.19rem 0.04rem 0; font-size: 0.12rem; border-bottom: 0.015rem solid @primary-color; &-item { height: 0.2rem; margin-left: 0.08rem; padding: 0.06rem 0.02rem 0.06rem @control-padding-horizontal; color: @text-color; font-weight: 500; font-size: 0.13rem; line-height: 0.2rem; white-space: nowrap; vertical-align: middle; border-top: 0.01rem solid @border-color-base; border-right: 0.01rem solid @border-color-base; border-left: 0.01rem solid @border-color-base; border-top-left-radius: 0.05rem; border-top-right-radius: 0.05rem; cursor: pointer; &:hover { border-color: initial; } &:last-child { position: relative; color: @primary-color; border-top: 0.015rem solid @primary-color; border-right: 0.015rem solid @primary-color; border-left: 0.015rem solid @primary-color; &::after { position: absolute; bottom: -0.03rem; left: 0; width: 100%; height: 0.04rem; color: @primary-color; background-color: white; content: ' '; } } } &-please{ cursor: text; &:hover { background: none; } } } } &-menu-item { padding: 0.05rem @control-padding-horizontal; line-height: 0.22rem; white-space: nowrap; cursor: pointer; transition: all @animation-duration-slow; &:hover { background: @item-hover-bg; } &-disabled { color: @disabled-color; cursor: not-allowed; &:hover { background: transparent; } } &-active:not(&-disabled) { &, &:hover { font-weight: @item-selected-font-weight; background: @background-color-base; } } &-expand { position: relative; padding-right: 24px; &-icon { position: absolute; right: @control-padding-horizontal; color: @text-color-secondary; } } &-loading::after { .iconfont-font('\e64d'); animation: loadingCircle 1s infinite linear; } & &-keyword { color: @highlight-color; } } }