@arco-design/web-react
Version:
Arco Design React UI Library.
203 lines (169 loc) • 4.49 kB
text/less
@tabs-prefix-cls: ~'@{prefix}-tabs';
@tabs-prefix-cls-vertical: ~'@{tabs-prefix-cls}-vertical';
/* Vertical */
.@{tabs-prefix-cls} {
&-right {
flex-direction: row-reverse;
}
&-vertical {
display: flex;
flex-wrap: nowrap;
}
&-header-nav-vertical {
flex-grow: 0;
flex-shrink: 0;
&::before {
position: absolute;
left: initial;
bottom: 0;
right: 0;
top: 0;
width: @tabs-line-size-header-border;
height: 100%;
clear: both;
}
.@{tabs-prefix-cls}-add-icon {
margin-left: 0;
margin-top: @tabs-margin-add-icon-left;
padding: 0 @tabs-card-padding-title-horizontal;
height: auto;
}
}
&-header-nav-vertical &-header {
height: auto;
&-scroll {
flex-direction: column;
}
&-overflow-scroll {
padding: @tabs-padding-header-wrapper-vertical 0;
}
&-wrapper {
height: 100%;
flex-direction: column;
}
&-ink {
position: absolute;
left: initial;
right: 0;
bottom: initial;
width: @tabs-line-size-ink-stroke;
transition: top @transition-duration-2 @transition-timing-function-standard,
height @transition-duration-2 @transition-timing-function-standard;
&.@{tabs-prefix-cls}-header-ink-custom .@{tabs-prefix-cls}-header-ink-inner {
left: unset;
bottom: unset;
right: 0;
transform: translateY(-50%);
top: 50%;
}
}
}
&-header-nav-vertical &-header-title {
display: block;
white-space: nowrap;
margin: 0;
margin-top: @tabs-line-margin-title-vertical;
&:first-of-type {
margin-top: 0;
}
}
&-header-nav-right::before {
right: unset;
left: 0;
}
&-header-nav-right &-header-ink {
left: 0;
right: unset;
.@{tabs-prefix-cls}-header-ink-inner {
left: 0;
right: unset;
}
}
&-header-nav-vertical &-header-scroll {
position: relative;
height: 100%;
box-sizing: border-box;
}
&-header-nav-line&-header-nav-vertical &-header-title {
padding: 0 @tabs-line-padding-title-horizontal_vertical;
}
&-header-nav-vertical&-header-nav-card &-header {
&-title {
margin: 0;
position: relative;
border: @tabs-card-border-width solid @tabs-card-color-title-border;
border-bottom-color: @color-transparent;
&:first-child {
border-top-left-radius: @tabs-card-border-radius;
}
&-active,
&-active:hover {
border-bottom-color: @color-transparent;
border-right-color: var(~'@{arco-cssvars-prefix}-color-bg-2');
}
&:last-child {
border-bottom: @tabs-card-border-width solid @tabs-card-color-title-border;
border-bottom-left-radius: @tabs-card-border-radius;
}
}
}
&-header-nav-vertical&-header-nav-card&-header-nav-right &-header {
&-title {
&-active,
&-active:hover {
border-right-color: @tabs-card-color-title-border;
border-left-color: var(~'@{arco-cssvars-prefix}-color-bg-2');
}
}
}
&-header-nav-vertical&-header-nav-card-gutter &-header {
&-title {
margin-left: 0;
border-radius: @tabs-card-border-radius 0 0 @tabs-card-border-radius;
position: relative;
&:not(:first-of-type) {
margin-top: 4px;
}
&-active,
&-active:hover {
border-right-color: var(~'@{arco-cssvars-prefix}-color-bg-2');
border-bottom-color: @tabs-card-color-title-border;
}
}
}
&-header-nav-vertical&-header-nav-card-gutter&-header-nav-right &-header {
&-title {
&-active,
&-active:hover {
border-right-color: @tabs-card-color-title-border;
border-left-color: var(~'@{arco-cssvars-prefix}-color-bg-2');
}
}
}
&-content-vertical {
width: auto;
height: 100%;
padding: 0;
flex: auto;
}
&-right &-content-vertical {
padding-right: @tabs-content-padding;
}
&-left &-content-vertical {
padding-left: @tabs-content-padding;
}
&-card,
&-card-gutter {
> .@{tabs-prefix-cls}-content-vertical {
border: @tabs-card-border-content-width solid @tabs-line-color-header-border;
border-left: none;
}
}
&-card&-right,
&-card-gutter&-right {
> .@{tabs-prefix-cls}-content-vertical {
border-left: @tabs-card-border-content-width solid @tabs-line-color-header-border;
border-right: none;
}
}
}