winbox-ui-next
Version:
We Design Vue 2.0: A Vue.js 3 UI Library
300 lines (299 loc) • 8.23 kB
CSS
/******** borderSize *******/
/******** borderStyle *******/
/******** radius *******/
/******** shadow distance *******/
/******** size *******/
/******** spacing *******/
/******** shadow *******/
/******** opacity *******/
/******** fontSize *******/
/******** fontWeight ********/
/******** radius *******/
/******** Primary *******/
/******** success *******/
/******** warning *******/
/******** danger *******/
/******** link *******/
/******** radius *******/
/********* icon hover *********/
/******** 基础配置项 end *******/
/******** 基础配置项 end *******/
/******** 高级配置项 *******/
/******** 高级配置项 end *******/
/**********************************************
* size: small /medium/ default
**********************************************/
/****************************************************
* status: default / error / disabled _ (hover / focus)
****************************************************/
.w-input-tag {
display: inline-flex;
align-items: center;
box-sizing: border-box;
width: 100%;
padding-right: 16px;
padding-left: 16px;
color: var(--color-text-1);
font-size: 14px;
background-color: var(--color-bg-1);
border: 1px solid var(--color-neutral-3);
border-radius: var(--border-radius-small);
cursor: text;
transition: color 0.1s cubic-bezier(0, 0, 1, 1), border-color 0.1s cubic-bezier(0, 0, 1, 1), background-color 0.1s cubic-bezier(0, 0, 1, 1);
}
.w-input-tag:hover {
background-color: var(--color-bg-1);
border-color: var(--color-neutral-5);
}
.w-input-tag:focus-within,
.w-input-tag.w-input-tag-focus {
background-color: var(--color-bg-1);
border-color: rgb(var(--primary-6));
box-shadow: 0 0 0 0 var(--color-primary-light-2);
}
.w-input-tag.w-input-tag-disabled {
color: var(--color-text-4);
background-color: var(--color-fill-2);
border-color: var(--color-neutral-3);
cursor: not-allowed;
}
.w-input-tag.w-input-tag-disabled:hover {
color: var(--color-text-4);
background-color: var(--color-fill-2);
border-color: var(--color-neutral-3);
}
.w-input-tag.w-input-tag-disabled .w-input-tag-prefix,
.w-input-tag.w-input-tag-disabled .w-input-tag-suffix {
color: inherit;
}
.w-input-tag.w-input-tag-error {
border-color: rgb(var(--danger-6));
}
.w-input-tag.w-input-tag-error:focus-within,
.w-input-tag.w-input-tag-error.w-input-tag-focus {
background-color: var(--color-bg-1);
border-color: rgb(var(--danger-6));
box-shadow: 0 0 0 0 var(--color-danger-light-2);
}
.w-input-tag .w-input-tag-prefix,
.w-input-tag .w-input-tag-suffix {
display: inline-flex;
align-items: center;
white-space: nowrap;
user-select: none;
}
.w-input-tag .w-input-tag-prefix > svg,
.w-input-tag .w-input-tag-suffix > svg {
font-size: 14px;
}
.w-input-tag .w-input-tag-prefix {
padding-right: 10px;
color: var(--color-text-2);
}
.w-input-tag .w-input-tag-suffix {
padding-left: 10px;
color: var(--color-neutral-5);
}
.w-input-tag .w-input-tag-suffix .w-feedback-icon {
display: inline-flex;
}
.w-input-tag .w-input-tag-suffix .w-feedback-icon-status-validating {
color: rgb(var(--primary-6));
}
.w-input-tag .w-input-tag-suffix .w-feedback-icon-status-success {
color: rgb(var(--success-6));
}
.w-input-tag .w-input-tag-suffix .w-feedback-icon-status-warning {
color: rgb(var(--warning-6));
}
.w-input-tag .w-input-tag-suffix .w-feedback-icon-status-error {
color: rgb(var(--danger-6));
}
.w-input-tag .w-input-tag-clear-btn {
color: var(--color-neutral-5);
font-size: 12px;
visibility: hidden;
cursor: pointer;
}
.w-input-tag .w-input-tag-clear-btn > svg {
position: relative;
transition: color 0.1s cubic-bezier(0, 0, 1, 1);
}
.w-input-tag:hover .w-input-tag-clear-btn {
visibility: visible;
}
.w-input-tag:not(.w-input-tag-focus) .w-input-tag-icon-hover:hover::before {
background-color: var(--color-fill-2);
}
.w-input-tag.w-input-tag-has-tag {
padding-right: 4px;
padding-left: 4px;
}
.w-input-tag.w-input-tag-has-prefix {
padding-left: 16px;
}
.w-input-tag.w-input-tag-has-suffix {
padding-right: 16px;
}
.w-input-tag .w-input-tag-inner {
flex: 1;
overflow: hidden;
line-height: 0;
}
.w-input-tag .w-input-tag-inner .w-input-tag-tag {
display: inline-flex;
align-items: center;
margin-right: 4px;
color: var(--color-text-1);
font-size: 12px;
white-space: pre-wrap;
word-break: break-word;
background-color: var(--color-fill-2);
border-color: var(--color-fill-3);
}
.w-input-tag .w-input-tag-inner .w-input-tag-tag .w-icon-hover:hover::before {
background-color: var(--color-fill-2);
}
.w-input-tag .w-input-tag-inner .w-input-tag-input {
width: 100%;
padding-right: 0;
padding-left: 0;
color: inherit;
line-height: 1.5715;
background: none;
border: none;
border-radius: 0;
outline: none;
cursor: inherit;
-webkit-appearance: none;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
box-sizing: border-box;
}
.w-input-tag .w-input-tag-inner .w-input-tag-input::placeholder {
color: var(--color-text-3);
}
.w-input-tag .w-input-tag-inner .w-input-tag-input[disabled]::placeholder {
color: var(--color-text-4);
}
.w-input-tag .w-input-tag-inner .w-input-tag-input[disabled] {
-webkit-text-fill-color: var(--color-text-4);
}
.w-input-tag .w-input-tag-mirror {
position: absolute;
top: 0;
left: 0;
white-space: pre;
visibility: hidden;
pointer-events: none;
}
.w-input-tag.w-input-tag-focus .w-input-tag-tag {
background-color: var(--color-fill-2);
border-color: var(--color-fill-2);
}
.w-input-tag.w-input-tag-focus .w-input-tag-tag .w-icon-hover:hover::before {
background-color: var(--color-fill-3);
}
.w-input-tag.w-input-tag-disabled .w-input-tag-tag {
color: var(--color-text-4);
background-color: var(--color-fill-2);
border-color: var(--color-fill-3);
}
.w-input-tag.w-input-tag-readonly,
.w-input-tag.w-input-tag-disabled-input {
cursor: default;
}
.w-input-tag.w-input-tag-size-medium {
font-size: 14px;
}
.w-input-tag.w-input-tag-size-medium .w-input-tag-inner {
padding-top: 0px;
padding-bottom: 0px;
}
.w-input-tag.w-input-tag-size-medium .w-input-tag-tag,
.w-input-tag.w-input-tag-size-medium .w-input-tag-input {
margin-top: 1px;
margin-bottom: 1px;
line-height: 22px;
vertical-align: middle;
}
.w-input-tag.w-input-tag-size-medium .w-input-tag-tag {
height: auto;
min-height: 24px;
line-height: 1;
border-color: var(--color-fill-2);
}
.w-input-tag.w-input-tag-size-medium .w-input-tag-input {
height: 24px;
}
.w-input-tag.w-input-tag-size-small {
font-size: 14px;
}
.w-input-tag.w-input-tag-size-small .w-input-tag-inner {
padding-top: 0px;
padding-bottom: 0px;
}
.w-input-tag.w-input-tag-size-small .w-input-tag-tag,
.w-input-tag.w-input-tag-size-small .w-input-tag-input {
margin-top: 1px;
margin-bottom: 1px;
line-height: 18px;
vertical-align: middle;
}
.w-input-tag.w-input-tag-size-small .w-input-tag-tag {
height: auto;
min-height: 20px;
line-height: 1;
border-color: var(--color-fill-2);
}
.w-input-tag.w-input-tag-size-small .w-input-tag-input {
height: 20px;
}
.w-input-tag.w-input-tag-size-default {
font-size: 14px;
}
.w-input-tag.w-input-tag-size-default .w-input-tag-inner {
padding-top: 2px;
padding-bottom: 2px;
}
.w-input-tag.w-input-tag-size-default .w-input-tag-tag,
.w-input-tag.w-input-tag-size-default .w-input-tag-input {
margin-top: 1px;
margin-bottom: 1px;
line-height: 26px;
vertical-align: middle;
}
.w-input-tag.w-input-tag-size-default .w-input-tag-tag {
height: auto;
min-height: 28px;
line-height: 1;
border-color: var(--color-fill-2);
}
.w-input-tag.w-input-tag-size-default .w-input-tag-input {
height: 28px;
}
.input-tag-zoom-enter-from {
transform: scale(0.5, 0.5);
opacity: 0;
}
.input-tag-zoom-enter-to {
transform: scale(1, 1);
opacity: 1;
}
.input-tag-zoom-enter-active {
transition: all 0.3s cubic-bezier(0.34, 0.69, 0.1, 1);
}
.input-tag-zoom-leave-from {
transform: scale(1, 1);
opacity: 1;
}
.input-tag-zoom-leave-to {
transform: scale(0.5, 0.5);
opacity: 0;
}
.input-tag-zoom-leave-active {
position: absolute;
transition: all 0.3s cubic-bezier(0.3, 1.3, 0.3, 1);
}
.input-tag-zoom-move {
transition: all 0.3s cubic-bezier(0.3, 1.3, 0.3, 1);
}