zent
Version:
一套前端设计语言和基于React的实现
277 lines (265 loc) • 7.88 kB
CSS
.zent-input-wrapper {
border-color: #e0e0e0;
border-color: var(--theme-default-border-color, var(--theme-stroke-5, #e0e0e0));
background-color: #fff;
background-color: var(--theme-section-bg, var(--theme-stroke-9, #fff));
display: flex;
position: relative;
box-sizing: border-box;
border-width: 1px;
border-style: solid;
border-radius: 2px;
transition: border 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
overflow: hidden;
align-items: center;
max-width: 100%;
}
.zent-input-wrapper--width-xs {
width: 116px;
}
.zent-input-wrapper--width-s {
width: 240px;
}
.zent-input-wrapper--width-m {
width: 364px;
}
.zent-input-wrapper--width-l {
width: 488px;
}
.zent-input-wrapper--width-xl {
width: 612px;
}
.zent-input-wrapper.zent-input--size-small {
height: 24px;
}
.zent-input-wrapper.zent-input--size-small .zent-input-addon-before,
.zent-input-wrapper.zent-input--size-small .zent-input-addon-after {
line-height: 22px;
}
.zent-input-wrapper.zent-input--size-normal {
height: 32px;
}
.zent-input-wrapper.zent-input--size-normal .zent-input-addon-before,
.zent-input-wrapper.zent-input--size-normal .zent-input-addon-after {
line-height: 30px;
}
.zent-input-wrapper.zent-input--size-large {
height: 40px;
}
.zent-input-wrapper.zent-input--size-large .zent-input-addon-before,
.zent-input-wrapper.zent-input--size-large .zent-input-addon-after {
line-height: 38px;
}
.zent-input-wrapper.zent-input--has-focus:not(.zent-input-wrapper__not-editable) {
border-color: #155bd4;
border-color: var(--theme-primary-bg, var(--theme-primary-4, #155bd4));
}
.zent-input-wrapper__not-editable.zent-input-wrapper {
background-color: #f7f7f7;
background-color: var(--theme-body-bg, var(--theme-stroke-8, #f7f7f7));
}
.zent-input-wrapper__not-editable .zent-input-addon-before,
.zent-input-wrapper__not-editable .zent-input-addon-after {
border-color: #e0e0e0;
border-color: var(--theme-default-border-color, var(--theme-stroke-5, #e0e0e0));
color: #ccc;
color: var(--theme-disabled-color, var(--theme-stroke-4, #ccc));
background-color: #f7f7f7;
background-color: var(--theme-body-bg, var(--theme-stroke-8, #f7f7f7));
}
.zent-input-wrapper .zent-input-icon,
.zent-input-wrapper .zent-input-close {
display: block;
margin-right: 8px;
}
.zent-input-wrapper .zent-input-icon:first-child {
margin-left: 8px;
margin-right: 0;
}
.zent-input-wrapper .zent-input-icon {
color: #999;
color: var(--theme-hint-color, var(--theme-stroke-3, #999));
font-size: 20px;
}
.zent-input-wrapper .zenticon-close-circle {
color: #ccc;
color: var(--theme-disabled-color, var(--theme-stroke-4, #ccc));
font-size: 20px;
margin-right: 4px;
}
.zent-input-wrapper .zent-input-icon-click,
.zent-input-wrapper .zenticon-close-circle {
cursor: pointer;
border-radius: 2px;
}
.zent-input-wrapper .zent-input-icon-click:hover,
.zent-input-wrapper .zenticon-close-circle:hover {
background: rgba(0, 0, 0, 0.05);
}
.zent-input-wrapper .zent-input-icon-click:active,
.zent-input-wrapper .zenticon-close-circle:active {
background: rgba(0, 0, 0, 0.1);
}
.zent-input-wrapper .zent-input.zent-input--icon-front {
padding-left: 4px;
}
.zent-input-wrapper .zent-input.zent-input--icon-end {
padding-right: 4px;
}
.zent-input-wrapper-disabled {
cursor: not-allowed;
}
.zent-input-wrapper-disabled .zent-input-icon {
color: #ccc;
color: var(--theme-disabled-color, var(--theme-stroke-4, #ccc));
}
.zent-input-wrapper-disabled .zent-input-icon-click {
cursor: not-allowed;
color: #ccc;
color: var(--theme-disabled-color, var(--theme-stroke-4, #ccc));
}
.zent-input-wrapper-disabled .zent-input-icon-click:hover {
background: transparent;
}
.zent-textarea-wrapper.zent-input-wrapper {
height: auto;
max-height: none;
}
.zent-input,
.zent-input[type=text],
.zent-input[type=password],
.zent-input[type=datetime],
.zent-input[type=date],
.zent-input[type=month],
.zent-input[type=time],
.zent-input[type=week],
.zent-input[type=number],
.zent-input[type=email],
.zent-input[type=url],
.zent-input[type=tel],
.zent-input[type=color],
.zent-input[type=search],
.zent-textarea {
color: #333;
color: var(--theme-title-color, var(--theme-stroke-1, #333));
display: inline-block;
flex: 1;
min-width: 80px;
height: 100%;
box-sizing: border-box;
padding: 0 12px;
margin: 0;
font-size: 14px;
box-shadow: none;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
outline: none;
border: 0;
}
.zent-textarea[disabled],
.zent-textarea[readonly],
.zent-input[disabled],
.zent-input[readonly] {
background-color: #f7f7f7;
background-color: var(--theme-body-bg, var(--theme-stroke-8, #f7f7f7));
color: #ccc;
color: var(--theme-disabled-color, var(--theme-stroke-4, #ccc));
pointer-events: none;
}
.zent-input-addon-before,
.zent-input-addon-after {
background-color: #f7f7f7;
background-color: var(--theme-body-bg, var(--theme-stroke-8, #f7f7f7));
color: #333;
color: var(--theme-title-color, var(--theme-stroke-1, #333));
display: inline-block;
height: 100%;
padding: 0 12px;
box-sizing: border-box;
vertical-align: middle;
font-size: 14px;
text-align: center;
min-width: 40px;
}
.zent-input-addon-before {
border-right-color: #e0e0e0;
border-right-color: var(--theme-default-border-color, var(--theme-stroke-5, #e0e0e0));
border-right-width: 1px;
border-right-style: solid;
}
.zent-input-addon-after {
border-left-color: #e0e0e0;
border-left-color: var(--theme-default-border-color, var(--theme-stroke-5, #e0e0e0));
border-left-width: 1px;
border-left-style: solid;
}
.zent-textarea {
height: 80px;
padding: 6px 12px;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
line-height: 1.5;
}
.zent-textarea-wrapper-out-of-range {
border-color: #d42f15;
border-color: var(--theme-danger-color, var(--theme-error-4, #d42f15));
}
.zent-textarea-wrapper-out-of-range.zent-input-wrapper.zent-input--has-focus {
border-color: #d42f15;
border-color: var(--theme-danger-color, var(--theme-error-4, #d42f15));
}
.zent-textarea-with-count {
padding-bottom: 31px;
}
.zent-textarea-count {
color: #333;
color: var(--theme-title-color, var(--theme-stroke-1, #333));
display: inline-block;
position: absolute;
bottom: 8px;
right: 12px;
font-size: 12px;
}
.zent-textarea-count.zent-textarea-out-of-range-text {
color: #d42f15;
color: var(--theme-danger-color, var(--theme-error-4, #d42f15));
}
.has-error .zent-input-wrapper {
border-color: #d42f15;
border-color: var(--theme-danger-color, var(--theme-error-4, #d42f15));
border-width: 1px;
border-style: solid;
}
.has-error .zent-input-wrapper.zent-input--has-focus:not(.zent-input-wrapper__not-editable) {
border-color: #d42f15;
border-color: var(--theme-danger-color, var(--theme-error-4, #d42f15));
box-shadow: none;
}
.has-error .zent-input-wrapper__not-editable {
border-color: #e0e0e0;
border-color: var(--theme-default-border-color, var(--theme-stroke-5, #e0e0e0));
}
.has-error .zent-input-wrapper.zent-textarea-wrapper.zent-textarea-wrapper-out-of-range {
border-color: #d42f15;
border-color: var(--theme-danger-color, var(--theme-error-4, #d42f15));
border-width: 1px;
border-style: solid;
}
.has-error .zent-input-wrapper.zent-textarea-wrapper.zent-textarea-wrapper-out-of-range .zent-textarea-out-of-range-text {
color: #d42f15;
color: var(--theme-danger-color, var(--theme-error-4, #d42f15));
}
.zent-input::-webkit-input-placeholder, .zent-textarea::-webkit-input-placeholder {
color: #ccc;
color: var(--theme-disabled-color, var(--theme-stroke-4, #ccc));
}
.zent-input::placeholder,
.zent-textarea::placeholder {
color: #ccc;
color: var(--theme-disabled-color, var(--theme-stroke-4, #ccc));
}
.zent-input-wrapper.zent-input-wrapper-inline {
display: inline-flex;
}