naive-ui/styles/BaseSuffix.scss

134 lines
3.7 KiB
SCSS
Raw Normal View History

@import './mixins/mixins.scss';
2020-02-11 14:44:29 +08:00
2019-09-27 16:02:20 +08:00
@include themes-mixin {
@include b(base-suffix) {
2019-09-27 16:02:20 +08:00
@include once {
@include fade-in-scale-up-transition(base-suffix);
2019-09-27 16:02:20 +08:00
user-select: none;
display: inline-block;
position: relative;
height: 12px;
width: 12px;
vertical-align: bottom;
2020-03-04 19:25:46 +08:00
@include b(base-suffix-spin) {
@include icon-switch-transition();
transform: $--n-transform-debounce-scale;
position: absolute;
height: 12px;
width: 12px;
}
2020-01-21 21:31:30 +08:00
}
@include b(base-suffix-cross) {
2019-09-27 16:02:20 +08:00
@include once {
2020-01-21 21:31:30 +08:00
@include icon-switch-transition();
transform: $--n-transform-debounce-scale;
2019-09-27 16:02:20 +08:00
position: absolute;
height: 12px;
width: 12px;
line-height: 12px;
border-radius: 8px;
overflow: hidden;
cursor: pointer;
}
@include e(icon) {
@include once {
transition: fill .3s $--n-ease-in-out-cubic-bezier;
2019-09-27 16:02:20 +08:00
}
fill: map-get($--base-suffix-cross-color, "default");
2019-09-27 16:02:20 +08:00
}
@include m(arrow) {
@include e(icon) {
fill: map-get($--base-suffix-cross-color, "hover");
2019-09-27 16:02:20 +08:00
}
}
&:hover {
@include e(icon) {
fill: map-get($--base-suffix-cross-color, "hover");
2019-09-27 16:02:20 +08:00
}
}
&:active {
@include e(icon) {
fill: map-get($--base-suffix-cross-color, "active");
2019-09-27 16:02:20 +08:00
}
}
}
@include b(base-suffix-arrow) {
2019-09-27 16:02:20 +08:00
@include once {
2020-01-21 21:31:30 +08:00
@include icon-switch-transition();
transform: $--n-transform-debounce-scale;
2019-09-27 16:02:20 +08:00
position: absolute;
top: 0;
left: 0;
width: 12px;
height: 12px;
border-radius: 8px;
overflow: hidden;
cursor: pointer;
}
&::after {
@include once {
2020-02-22 18:08:53 +08:00
transition:
transform .3s $--n-ease-in-out-cubic-bezier,
border-color .3s $--n-ease-in-out-cubic-bezier;
2019-09-27 16:02:20 +08:00
position: absolute;
content: '';
box-sizing: border-box;
width: 7px;
height: 7px;
right: 1px;
top: calc(50% - 4.5px);
transform: rotate(-45deg);
transform-origin: 30% 70%;
}
border-left: 1px solid map-get($--base-suffix-arrow-color, 'default');
border-bottom: 1px solid map-get($--base-suffix-arrow-color, 'default');
2019-09-27 16:02:20 +08:00
}
@include m(active) {
&::after {
@include once {
transform: rotate(135deg);
}
border-left: 1px solid map-get($--base-suffix-arrow-color, 'active');
border-bottom: 1px solid map-get($--base-suffix-arrow-color, 'active');
2019-09-27 16:02:20 +08:00
}
}
@include m(disabled) {
@include once {
cursor: not-allowed;
}
}
}
}
2019-11-06 15:57:03 +08:00
@include as-form-item {
@include with-status(error) {
2020-03-04 19:25:46 +08:00
@include b(base-suffix) {
@include b(base-suffix-cross) {
@include m(arrow) {
@include e(icon) {
fill: map-get($--base-suffix-cross-color, "error-hover");
}
2019-11-06 15:57:03 +08:00
}
2020-03-04 19:25:46 +08:00
&:hover {
@include e(icon) {
fill: map-get($--base-suffix-cross-color, "error-hover");
}
2019-11-06 15:57:03 +08:00
}
2020-03-04 19:25:46 +08:00
&:active {
@include e(icon) {
fill: map-get($--base-suffix-cross-color, "error-active");
}
2019-11-06 15:57:03 +08:00
}
}
2020-03-04 19:25:46 +08:00
@include b(base-suffix-arrow) {
@include m(active) {
&::after {
border-left: 1px solid map-get($--base-suffix-arrow-color, 'error-active');
border-bottom: 1px solid map-get($--base-suffix-arrow-color, 'error-active');
}
2019-11-06 15:57:03 +08:00
}
}
}
}
}
}