UNPKG

kui-vue

Version:

A high quality UI Toolkit built on Vue.js 2.0

234 lines (193 loc) 4.09 kB
@import '../../styles/var.less'; .k-input-number { position: relative; display: inline-flex; // flex-shrink: 0; max-width: 100%; min-width: 0; width: 100%; color: var(--kui-color-font); align-items: center; border: 1px solid var(--kui-color-border); border-radius: var(--kui-border-radius); background-color: var(--kui-color-back); transition: all .3s ease-in-out; box-sizing: border-box; gap: 8px; padding: 0 0 0 8px; &:hover { border-color: var(--kui-color-main); .k-input-number-controls { opacity: 1; } } .k-input-number-clearable-hidden { visibility: hidden; } .k-input-number-controls { width: 20px; display: flex; flex-direction: column; color: var(--kui-color-icon); border-left: 1px solid var(--kui-color-border); font-size: 11px; justify-content: center; align-items: center; height: 30px; opacity: 0; } .k-input-number-control { flex: 1; display: flex; width: 100%; align-items: center; justify-content: center; cursor: pointer; &:hover { color: var(--kui-color-main); background-color: var(--kui-color-hover); } &:active { color: var(--kui-color-main); background-color: var(--kui-color-actived); } &:first-child { border-radius: 0 @radius 0 0; } &:last-child { border-top: 1px solid var(--kui-color-border); border-radius: 0 0 @radius 0; .k-icon { transform: rotate(180deg); } } } .k-input-number-text { padding-left: 0; border: none; height: 30px; line-height: 1.5; padding: 4px 0; font-size: 14px; color: var(--kui-color-font); background-color: transparent; background-image: none; box-sizing: border-box; flex: 1; min-width: 10px; line-height: 1.571; &::placeholder { color: var(--kui-color-disable-color); } &:focus { // border-color: var(--kui-color-main); outline: none; } } &.k-input-number-focus { border-color: var(--kui-color-main); box-shadow: 0 0 0 2px var(--kui-color-main-90); } .k-input-number-icon { font-size: 16px; color: var(--kui-color-icon); } } .k-input-number-suffix { padding: 0 8px; } .k-input-number-suffix, .k-input-number-prefix { font-size: 14px; white-space: nowrap; line-height: 1; cursor: pointer; user-select: none; transition: all .2s ease-in-out; display: flex; &:hover { color: var(--kui-color-font); } .k-icon { font-size: 16px; transition: all .2s ease-in-out; color: var(--kui-color-icon); } } .k-input-number-clearable { cursor: pointer; font-size: 15px; color: var(--kui-color-gray); &:hover { color: var(--kui-color-font); } } .k-input-number-sm { gap: 6px; padding: 0 0 0 4px; .k-input-number-controls { height: 22px; } .k-input-number-text { line-height: 1; font-size: 12px; height: 22px; } .k-input-number-clearable { font-size: 14px; } .k-input-number-icon { font-size: 14px; } .k-input-number-suffix { .k-icon { font-size: 12px; } } } .k-input-number-lg { .k-input-number-controls { height: 38px; } .k-input-number-text { padding: 2px 0; height: 38px; line-height: 38px; font-size: 16px; } .k-input-number-clearable { font-size: 18px; } .k-input-number-icon { font-size: 20px; } .k-input-number-suffix { .k-icon { font-size: 18px; } } } .k-input-number-light { border: none; background-color: var(--kui-color-gray-80); &:focus, &.k-input-number-focus { box-shadow: none; } } .k-input-number-disabled { cursor: not-allowed; color: var(--kui-color-disable-color); background: var(--kui-color-disable-back); border-color: var(--kui-color-disable-border); &:hover { border-color: var(--kui-color-disable-border); } & * { cursor: not-allowed; } .k-input-number-control:hover { background: 0 0; color: var(--kui-color-icon); } }