.#{$ns}Collapse { border-width: var(--collapse-default-top-border-width) var(--collapse-default-right-border-width) var(--collapse-default-bottom-border-width) var(--collapse-default-left-border-width); border-style: var(--collapse-default-top-border-style) var(--collapse-default-right-border-style) var(--collapse-default-bottom-border-style) var(--collapse-default-left-border-style); border-color: var(--collapse-default-top-border-color) var(--collapse-default-right-border-color) var(--collapse-default-bottom-border-color) var(--collapse-default-left-border-color); border-radius: var(--collapse-default-top-left-border-radius) var(--collapse-default-top-right-border-radius) var(--collapse-default-bottom-right-border-radius) var(--collapse-default-bottom-left-border-radius); padding: 0; line-height: px2rem(20px); // overflow: hidden; &-header { font-size: var(--Collapse-header-fontSize); font-weight: var(--Collapse-header-fontWeight); color: var(--collapse-default-header-color); line-height: var(--collapse-default-header-lineHeight); padding: var(--Collapse-header-padding); margin: 0; cursor: pointer; background: var(--Collapse-header-bg); &-wrapper { display: inline-flex; flex-direction: var(--Collapse-header-wrapper-direction); } &-tpl { margin-right: px2rem(8px); } &:hover { background: var(--Collapse-header-onHover-bg); color: var(--collapse-default-header-hover-color); } &.is-mobile { background: none; border-radius: 0 !important; position: relative; padding-left: 0; &:hover { background: none; } } } .Collapse-arrow { content: var(--collapse-icon-icon); } &-arrow-wrap { width: px2rem(16px); height: px2rem(16px); display: inline-flex; justify-content: center; align-items: center; margin-right: var(--collapse-icon-margin); svg { width: var(--collapse-icon-size); height: var(--collapse-icon-size); color: var(--collapse-icon-color); top: 0; } } &-icon-tranform { display: inline-block; width: px2rem(16px); text-align: center; margin-right: var(--gap-xs); } // 干扰太多了,先注释 // .#{$ns}TplField { // display: inline-block; // } &.is-active > .#{$ns}Collapse-header > .#{$ns}Collapse-arrow-wrap > &-arrow { transform: rotate(var(--collapse-icon-rotate)); transform-origin: 50% 50%; } &.is-active > * > &-icon-tranform { transform: rotate(var(--collapse-icon-rotate)); } &--disabled > &-header { cursor: not-allowed; user-select: none; color: var(--collapse-default-disabled-color); background: var(--collapse-default-disabled-header-bg-color); } &--disabled &-arrow-wrap svg { color: var(--collapse-default-disabled-color); } // title 显示在底部的模式 &--title-bottom &-header { text-align: center; font-size: var(--fontSizeBase); border-top: var(--Collapse-header-collapsed-borderTop); border-bottom: var(--Collapse-header-collapsed-borderBottom); } &--title-bottom.is-collapsed &-header { border-top: none; } &--title-bottom &-arrow { top: px2rem(-4px); transform: rotate(var(--collapse-icon-rotate)); } &--title-bottom.is-active &-arrow { top: 0; transform: rotate(calc(-1 * var(--collapse-icon-rotate))); } &-contentWrapper { transition: height var(--animation-duration) ease; &.in, &.out { height: 0; overflow: hidden; } } &-content { padding: var(--Collapse-content-padding); color: var(--Collapse-content-color); font-size: var(--Collapse-content-fontSize); font-weight: var(--Collapse-content-fontWeight); line-height: var(--collapse-default-content-lineHeight); background: var(--collapse-default-bg-color); } &.is-mobile { border-top: none; border-left: none; border-right: none; &:last-child { border-bottom: none; } .#{$ns}Collapse-icon-tranform, .#{$ns}Collapse-arrow-wrap { margin-right: px2rem(-18px); float: right; margin-top: px2rem(2px); } .#{$ns}Collapse-content { padding-left: 0; padding-right: 0; } } } //FieldSet Form + Collapse .#{$ns}Form { .#{$ns}Collapse { border: none; .#{$ns}Collapse-header { background-color: var(--white); display: inline-flex; justify-content: flex-end; align-items: center; flex-direction: row-reverse; border-radius: 0; } .#{$ns}Collapse-content { padding: 0; } } /* 恢复 Form 嵌套场景下的样式 */ .#{$ns}Collapse-fieldset--disabled { border-width: var(--collapse-default-top-border-width) var(--collapse-default-right-border-width) var(--collapse-default-bottom-border-width) var(--collapse-default-left-border-width); border-style: var(--collapse-default-top-border-style) var(--collapse-default-right-border-style) var(--collapse-default-bottom-border-style) var(--collapse-default-left-border-style); border-color: var(--collapse-default-top-border-color) var(--collapse-default-right-border-color) var(--collapse-default-bottom-border-color) var(--collapse-default-left-border-color); border-radius: var(--collapse-default-top-left-border-radius) var(--collapse-default-top-right-border-radius) var(--collapse-default-bottom-right-border-radius) var(--collapse-default-bottom-left-border-radius); .#{$ns}Collapse-header { background: var(--Collapse-header-bg); display: block; border-radius: unset; } .#{$ns}Collapse-content { padding: var(--Collapse-content-padding); } } } /* 移动端样式调整 */ @include media-breakpoint-down(sm) { .#{$ns}Collapse { border: none; position: relative; &::before { @include hairline-bottom(var(--collapse-default-bottom-border-color)); } } }