UNPKG

@arco-design/web-vue

Version:

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

150 lines (124 loc) 3.38 kB
@import './token.less'; // 前置后置标签 .addon(@position, @size-height, @size-font-size) { .item-style() { width: auto; height: 100%; margin-top: -1px; margin-bottom: -1px; & when (@position = before) { margin-right: -@input-padding-horizontal; margin-left: -@input-padding-horizontal - 1px; } & when (@position = after) { margin-right: -@input-padding-horizontal - 1px; margin-left: -@input-padding-horizontal; } } // select,input 的边角和边框 .border-radius() { & when (@position = before) { border-color: transparent; border-top-right-radius: 0; border-bottom-right-radius: 0; } & when (@position = after) { border-color: transparent; border-top-left-radius: 0; border-bottom-left-radius: 0; } } .@{prefix}-input { .item-style(); .border-radius(); } // 作为前置/后置标签时,重写一些select的样式 .@{prefix}-select { .item-style(); .@{prefix}-select-view { background-color: inherit; border-color: transparent; border-radius: 0; } &.@{prefix}-select-single { .@{prefix}-select-view { height: 100%; } } } } // 不同尺寸的高度 .size-height { .height (@size-height, @size-font-size) { .get-padding(@size-height, @size-font-size); font-size: @size-font-size; } &-size-mini { /* prettier-ignore */ padding-top: (round(@input-size-mini-height - @input-border-width * 2 - $line-height * $font-size) / 2); /* prettier-ignore */ padding-bottom: (round(@input-size-mini-height - @input-border-width * 2 - $line-height * $font-size) / 2); font-size: @input-size-mini-font-size; line-height: 1.667; } &-size-small { .height(@input-size-small-height, @input-size-small-font-size); } &-size-large { .height(@input-size-large-height, @input-size-large-font-size); } } // 不同尺寸的带有前置后置标签的高度 .outer-size() { .size-font-size(@size-input-height, @size-font-size, @suffix-icon-size, @addon-icon-size) { .@{input-prefix-cls}-outer { font-size: @size-font-size; } .@{input-prefix-cls}-wrapper { .@{input-prefix-cls}-prefix, .@{input-prefix-cls}-suffix { font-size: @size-font-size; > svg { font-size: @suffix-icon-size; } } } .@{input-prefix-cls}-prepend, .@{input-prefix-cls}-append { font-size: @size-font-size; > svg { font-size: @addon-icon-size; } } .@{input-prefix-cls}-prepend { .addon(after, @size-input-height, @size-font-size); } .@{input-prefix-cls}-append { .addon(before, @size-input-height, @size-font-size); } } &&-size-mini { .size-font-size( @input-size-mini-height, @input-size-mini-font-size, @input-size-mini-icon-suffix-size, @input-size-mini-icon-addon-size ); } &&-size-small { .size-font-size( @input-size-small-height, @input-size-small-font-size, @input-size-small-icon-suffix-size, @input-size-small-icon-addon-size ); } &&-size-large { .size-font-size( @input-size-large-height, @input-size-large-font-size, @input-size-large-icon-suffix-size, @input-size-large-icon-addon-size ); } }