naive-ui/styles/Input.scss
2019-08-23 15:59:50 +08:00

161 lines
3.8 KiB
SCSS

@import './mixins/mixins.scss';
@import './theme/default.scss';
@include b(input) {
position: relative;
width: 100%;
.n-input__icon {
position: absolute;
line-height: 18px;
height: 18px;
width: 18px;
i {
height: 18px;
width: 18px;
&::before {
font-size: 20px;
line-height: 18px;
height: 18px;
width: 18px;
color: $input-icon-color;
}
}
left: 0;
top: calc(50% - 9px);
margin-left: 12px;
}
.n-input__cancel-mark {
position: absolute;
right: 14px;
top: 50%;
transform: translateY(-50%);
line-height: 12px;
}
.n-input__input, .n-input__textarea {
-webkit-appearance: none;
box-sizing: border-box;
border: none;
border-radius: $input-border-radius;
outline: none;
color: #fff;
font-family: $default-font-family;
background-color: $input-background-color;
width: 100%;
caret-color: $input-caret-color;
box-shadow: none;
transition: box-shadow .3s $default-cubic-bezier, background-color .3s $default-cubic-bezier;
vertical-align: bottom;
&:focus:hover {
box-shadow: inset 0 0 0px 1px $main-color, 0px 0px 10px 1px #366555;
}
&:hover {
box-shadow: inset 0 0 0px 1px $main-color;
}
&:focus {
box-shadow: inset 0 0 0px 1px $main-color;
background-color: $focus-input-background-color;
}
&::placeholder {
color: $input-placeholder-color;
opacity: 1;
}
}
&.n-input--small-size {
&:not(.n-input--textarea) {
height: $small-height;
}
.n-input__textarea {
font-size: $small-input-font-size;
}
.n-input__input {
height: $small-height;
line-height: $small-height;
padding: 0 14px;
font-size: $small-input-font-size;
}
}
&.n-input--default-size, &.n-input--medium-size {
&:not(.n-input--textarea) {
height: $default-height;
}
.n-input__textarea {
font-size: $default-input-font-size;
}
.n-input__input {
height: $default-height;
line-height: $default-height;
padding: 0 14px;
font-size: $default-input-font-size;
}
}
&.n-input--large-size {
&:not(.n-input--textarea) {
height: $large-height;
}
.n-input__textarea {
font-size: $large-input-font-size;
}
.n-input__input {
height: $large-height;
line-height: $large-height;
padding: 0 14px;
font-size: $large-input-font-size;
}
}
&.n-input--round {
&.n-input--small-size {
.n-input__input {
border-radius: $small-height / 2;
padding-left: $small-height / 2;
}
}
&.n-input--default-size, &.n-input--medium-size {
.n-input__input {
border-radius: $default-height / 2;
padding-left: $default-height / 2;
}
}
&.n-input--large-size {
.n-input__input {
border-radius: $large-height / 2;
padding-left: $large-height / 2;
}
}
}
&.n-input--icon {
.n-input__input {
padding-left: 38px!important;
}
}
&.n-input--disabled {
cursor: not-allowed;
.n-input__input, .n-input__textarea {
cursor: not-allowed;
background-color: $disabled-input-background-color;
color: $disabled-input-text-color;
box-shadow: none!important;
&::placeholder {
color: $disabled-input-placeholder-color;
}
}
}
&.n-input--clearable {
.n-input__input, .n-input__textarea {
padding-right: 32px;
}
}
.n-input__textarea {
padding: 10px 14px;
resize: vertical;
@include scrollbar;
&.n-input__textarea--small-size {
font-size: $small-input-font-size;
}
&.n-input__textarea--default-size, &.n-input__input--medium-size {
font-size: $default-input-font-size;
}
&.n-input__textarea--large-size {
font-size: $large-input-font-size;
}
}
}