UNPKG

acud

Version:

acg react 组件库

378 lines (321 loc) • 8.93 kB
@import '../../style/themes/index'; @import '../../style/mixins/index'; @tag-prefix-cls: ~'@{acud-prefix}-tag'; .@{tag-prefix-cls} { .reset-component(); display: inline-block; height: auto; margin-right: 2*@P; padding: 0 2*@P; font-size: @T2; white-space: nowrap; background: @tag-default-bg; border-radius: @R2; transition: all 0.3s; .basic-tp-config(@tag-default-tp); >a:first-child:last-child { display: inline-block; margin: 0 -8px; padding: 0 8px; } &-close-icon { font-size: 4*@P; cursor: pointer; transition: all 0.3s; margin-left: 4px; >svg { vertical-align: middle; } } .@{iconfont-css-prefix} { .basic-tp-config(tp24); line-height: 100%; } &-has-color { border-color: transparent; &, a, a:hover, .@{iconfont-css-prefix}-close, .@{iconfont-css-prefix}-close:hover { color: @tp8-default-color; } } &-checkable { .basic-config(@tag-checkable-tp, @tag-checkable-p); cursor: pointer; &-checked { .basic-config(@tag-checkable-checked-tp, @tag-checkable-checked-p); cursor: pointer; } } &-transparent-checkable { .basic-config(@tag-transparent-checkable-tp, @tag-transparent-checkable-p); cursor: pointer; &-checked { .basic-config(@tag-checkable-checked-tp, @tag-checkable-checked-p); cursor: pointer; } } &-hidden { display: none; } // To ensure that a space will be placed between character and `Icon`. >.@{iconfont-css-prefix}+span, >span+.@{iconfont-css-prefix} { margin-left: 2*@P; } .make-enhance-classes(@status, @inactive-after) { @color: 'tag-@{status}@{inactive-after}-color'; &-@{status}-enhance { color: @G11; background-color: @@color; .acudicon { color: @G11; } .acudicon:hover { color: @G11; } &:hover { color: @G11; } } &-@{status}-enhance[disabled] { .acudicon { color: @G6; } } } .make-enhance-classes(active, ''); .make-enhance-classes(processing, ''); .make-enhance-classes(success, ''); .make-enhance-classes(error, ''); .make-enhance-classes(warning, ''); .make-enhance-classes(inactive, -after); .make-classes(@status) { @color: 'tag-@{status}-color'; @bg-color: 'tag-@{status}-bg-color'; &-@{status} { color: @@color; font-size: @T2; border-radius: @R2; background-color: @@bg-color; .acudicon { color: @@color; } .acudicon:hover { color: @@color; } &:hover { color: @@color; } } &-@{status}[disabled] { .acudicon { color: @G6; } } } .make-classes(active); .make-classes(processing); .make-classes(success); .make-classes(error); .make-classes(warning); .make-classes(inactive); .make-outline-classes(@status) { @color: 'tag-@{status}-color'; @bg-color: 'tag-@{status}-bg-color'; @border-color: 'tag-@{status}-border-color'; &-@{status}-outline { color: @@color; font-size: @T2; border-radius: @R2; background-color: @@bg-color; border: 1px solid @@border-color; .acudicon { color: @@color; } .acudicon:hover { color: @@color; } &:hover { color: @@color; } } &-@{status}-outline[disabled] { border-width: 0; .acudicon { color: @G6; } } } .make-outline-classes(active); .make-outline-classes(processing); .make-outline-classes(success); .make-outline-classes(error); .make-outline-classes(warning); .make-outline-classes(inactive); .make-status-classes(@status, @processing-bg-after) { @status-color: 'tag-status-@{status}-color'; @bg-color: 'tag-@{status}-bg@{processing-bg-after}-color'; &-@{status}-status { color: @@status-color; background-color: @@bg-color; .acudicon { color: @@status-color; } .acudicon:hover { color: @@status-color; } &:hover { color: @@status-color; } } &-@{status}-status[disabled] { .acudicon { color: @G6; } } } .make-status-classes(processing, -after); .make-status-classes(success, ''); .make-status-classes(error, ''); .make-status-classes(warning, ''); &-status { line-height: 5*@P; color: @G11; } // UE要求在组件里专门写好营销类 &-type-marketing { position: relative; width: 50px; height: 16px !important; background: transparent; border-top: 0px solid transparent; border-bottom: 15px solid green; border-left: 16px solid transparent; border-right: 16px solid transparent; transform: rotate(-46deg); padding: 0; overflow: visible; } &-type-business { color: #fff; position: relative; padding-left: 10px; &:hover { color: #fff; } .business-icon { position: absolute; width: 20px; height: 20px; left: -10px; } } &-type-subscription { background: transparent; span { .basic-tp-config(@tag-subscription-tp); } } &-type-edit { user-select: none; padding-right: @P; line-height: 6*@P; &[disabled], &[disabled]:hover { color: @G5; background-color: @G8; padding-right: 2*@P; .acudicon { display: none; } } } &-render-container { display: flex; align-items: center; .circle { width: 12px; height: 12px; border-radius: 12px; margin-right: 6px; position: relative; &::after { display: block; content: ''; width: 8px; height: 8px; border-radius: 8px; position: absolute; left: 2px; top: 2px; } } } .make-status-color-classes(@status) { @color: 'tag-status-@{status}-color'; .circle.status-@{status} { &::after { background: @@color; } } } .make-status-color-classes(inactive); .make-status-color-classes(active); .make-status-color-classes(processing); .make-status-color-classes(success); .make-status-color-classes(error); .make-status-color-classes(warning); // processing 动效 .circle.status-processing { &::after { animation: flash .4s ease-in infinite alternate; } } @keyframes flash { from { transform: scale(0.7); box-shadow: 0 0 0 3px #d4e5ff; } to { transform: scale(1); box-shadow: 0 0 0 0px #d4e5ff; } } .make-order-classes(@index) { @color: 'order-color-@{index}'; @bg-color: 'order-bg-@{index}'; @bg-color-enhance: 'order-bg-@{index}-enhance'; @border-color: 'order-border-@{index}'; &-list-order-color-@{index} { color: @@color; } &-list-order-bg-color-@{index} { background-color: @@bg-color; } &-list-order-bg-color-@{index}-enhance { color: #fff; background-color: @@bg-color-enhance; &:hover { color: #fff; } } &-list-order-border-color-@{index} { border-width: 1px; border-style: solid; border-color: @@border-color; } } .make-order-classes(1); .make-order-classes(2); .make-order-classes(3); .make-order-classes(4); .make-order-classes(5); .make-order-classes(6); .make-order-classes(7); .make-order-classes(8); .make-order-classes(9); .make-order-classes(10); } @import './rtl';