UNPKG

choerodon-ui

Version:

An enterprise-class UI design language and React-based implementation

213 lines (174 loc) 5.11 kB
@import '../../style/themes/default'; @import '../../style/mixins/index'; @collapse-prefix-cls: ~'@{c7n-prefix}-collapse'; .collapse-close() { transform: rotate(0); } .collapse-open() { transform: rotate(90deg); } .@{collapse-prefix-cls} { .reset-component; background-color: @collapse-header-bg; border: @collapse-border; border-bottom: 0; border-radius: @collapse-panel-border-radius; &-trigger { .@{collapse-prefix-cls}-header { cursor: pointer; } } & > &-item { border-bottom: @collapse-border; &:last-child { &, & > .@{collapse-prefix-cls}-header { border-radius: 0 0 @collapse-panel-border-radius @collapse-panel-border-radius; } } > .@{collapse-prefix-cls}-header { position: relative; padding: @collapse-header-padding; color: @heading-color; line-height: @collapse-header-line-height; transition: all @animation-duration-slow; .@{collapse-prefix-cls}-extra { float: right; } &:focus { outline: none; } .@{collapse-prefix-cls}-expand-icon { .iconfont-font('\e5c5', @collapse-expand-icon-size); height: @collapse-expand-icon-size; line-height: 1; vertical-align: top; transform: rotate(-90deg); cursor: pointer; &.@{collapse-prefix-cls}-expanded { vertical-align: top; transform: rotate(0); } } .@{collapse-prefix-cls}-expand-text { display: inline-block; padding-right: 0.1rem; cursor: pointer; } } } // Expand Icon right &-icon-position-right { border: @collapse-icon-right-border; .@{collapse-prefix-cls}-content { padding: @collapse-icon-right-content-padding; border-top: @collapse-icon-right-content-border-top; } & > .@{collapse-prefix-cls}-item { font-size: @collapse-icon-right-item-font-size; border-bottom: @collapse-icon-right-item-border-bottom; > .@{collapse-prefix-cls}-header { color: @collapse-icon-right-header-color; background-color: @collapse-icon-right-header-bg; border-bottom: @collapse-icon-right-header-border-bottom; .@{collapse-prefix-cls}-expand-icon-wrapper { float: right; } .@{collapse-prefix-cls}-expand-icon { transform: rotate(90deg); } .@{collapse-prefix-cls}-expand-text { padding: @collapse-icon-right-expand-text-padding; text-align: right; cursor: pointer; } } &:not(&-disabled) .@{collapse-prefix-cls}-expand-icon-wrapper { color: @collapse-icon-right-wrapper-color; } } } &-icon-position-text-right { & > .@{collapse-prefix-cls}-item { .@{collapse-prefix-cls}-expand-icon-wrapper { margin-left: 10px; } } } &-anim-active { transition: height @animation-duration-base @ease-out; } &-content { padding: 0 @collapse-content-padding; overflow: hidden; color: @text-color; background-color: @collapse-content-bg; border-top: @collapse-border; & > &-box { padding-top: @collapse-content-padding; padding-bottom: @collapse-content-padding; } &-inactive { display: none; } } &-item:last-child { > .@{collapse-prefix-cls}-content { border-radius: 0 0 @collapse-panel-border-radius @collapse-panel-border-radius; } } & > &-item > &-header[aria-expanded='true'] { .arrow { .collapse-open(); } } &-borderless { background-color: @component-background; border: 0; } &-borderless > &-item { border-bottom: @collapse-border; .@{collapse-prefix-cls}-header { padding: @collapse-borderless-header-padding; font-weight: @collapse-borderless-header-font-weight; font-size: @collapse-borderless-header-font-size; line-height: @collapse-borderless-header-line-height; } } &-borderless > &-item:last-child, &-borderless > &-item:last-child &-header { border-radius: 0; } &-borderless > &-item > &-content { background-color: transparent; border-top: 0; } &-borderless > &-item > &-content > &-content-box { padding-top: 0.04rem; } & &-item-disabled > &-header { &, & > .arrow { color: @disabled-color; cursor: not-allowed; } .@{collapse-prefix-cls}-expand-icon, .@{collapse-prefix-cls}-expand-text { cursor: not-allowed; } } &-ghost { background-color: transparent; border: 0; > .@{collapse-prefix-cls}-item { border-bottom: 0; > .@{collapse-prefix-cls}-content { background-color: transparent; border-top: 0; > .@{collapse-prefix-cls}-content-box { padding-top: 12px; padding-bottom: 12px; } } } } }