UNPKG

winbox-ui-next

Version:

We Design Vue 2.0: A Vue.js 3 UI Library

146 lines (122 loc) 3.45 kB
@import './token.less'; @import '../../input/style/token.less'; @input-prefix-cls: ~'@{prefix}-input'; @input-number-prefix-cls: ~'@{prefix}-input-number'; .@{input-number-prefix-cls} { position: relative; box-sizing: border-box; //display: inline-block; width: 100%; border-radius: @input-number-border-radius; .transition() { transition: all @transition-duration-1 @transition-timing-function-linear; } &-step-button { display: flex; align-items: center; justify-content: center; box-sizing: border-box; padding: 0; color: @input-number-step-button-color; background-color: @input-number-step-button-color-bg_default; cursor: pointer; user-select: none; .transition(); &:hover { background-color: @input-number-step-button-color-bg_default_hover; border-color: $background-color; } &:active { background-color: @input-number-step-button-color-bg_default_active; border-color: $background-color; } &:disabled { color: @input-number-step-button-color_disabled; cursor: not-allowed; &:hover, &:active { border-color: @input-number-step-button-color-border; } } } &-prefix, &-suffix { .transition(); } // embed mode &-mode-embed { .@{input-number-prefix-cls}-step { position: absolute; top: 0; right: 0; bottom: 0; width: 30px; overflow: hidden; border-radius: @input-number-step-layer-border-radius; opacity: 0; .transition(); .@{input-number-prefix-cls}-step-button { width: 100%; height: 50%; margin: 0; padding: 0; font-size: 10px; border: 1px solid @input-number-step-button-color-border; //自定义边框 outline: none; &:last-child { border-color: @input-number-step-button-color-border; } // &:hover { // color: @input-number-step-button-hover-color; // } } } .@{input-prefix-cls}-suffix { min-width: 10px; } &:not(.@{input-prefix-cls}-outer-disabled):hover .@{input-number-prefix-cls}-step { opacity: 1; & ~ .@{input-prefix-cls}-suffix { opacity: 0; pointer-events: none; } } // 修正 InputNumber 未激活 hover 时 StepButton 的 hover 背景色 &.@{input-prefix-cls}-wrapper:not(.@{input-prefix-cls}-focus) { .@{input-number-prefix-cls}-step-button:not(.@{input-number-prefix-cls}-step-button-disabled):hover { background-color: @input-number-step-button-color-bg_default_active; } } &.@{input-prefix-cls}-disabled { .@{input-number-prefix-cls}-step-button { background-color: @input-number-step-button-color-bg_disabled; &:active, &:hover { color: @input-number-step-button-color_disabled; } } } } // button mode &-mode-button { .@{input-prefix-cls} { text-align: center; &-prepend, &-append { padding: 0; border: none; } &-prepend .@{input-number-prefix-cls}-step-button { border-right: 0; border-top-right-radius: 0; border-bottom-right-radius: 0; } &-append .@{input-number-prefix-cls}-step-button { border-left: 0; border-top-left-radius: 0; border-bottom-left-radius: 0; } } } }