ygd
Version:
An enterprise-class UI design language and React-based implementation
246 lines (223 loc) • 5.94 kB
text/less
@import '../../style/themes/default';
@import '../../style/mixins/index';
@tab-prefix-cls: ~'@{yg-prefix}-tabs';
// card style
.@{tab-prefix-cls} {
&&-card &-card-bar &-nav-container {
height: @tabs-card-height;
overflow: visible;
}
&&-card &-card-bar &-ink-bar {
visibility: hidden;
}
&&-card &-card-bar &-tab {
height: @tabs-card-height;
margin: 0;
padding: 0 16px;
line-height: @tabs-card-height;
// background: @tabs-card-head-background;
border: @border-width-base @border-style-base transparent;
border-bottom: 1px solid #ddd;
// border-top: 0;
// border-left: 0;
// border-right: 0;
border-radius: @border-radius-base @border-radius-base 0 0;
transition: all 0.3s @ease-in-out;
}
&&-card &-card-bar &-tab-active {
height: @tabs-card-height;
color: @tabs-card-active-color;
background: @component-background;
border: @border-width-base @border-style-base @border-color-split;
border-radius: @border-radius-base @border-radius-base 0 0;
border-color: @border-color-split;
border-bottom: @border-width-base solid @component-background;
}
&&-card &-card-bar &-tab-inactive {
padding: 0;
}
&&-card &-card-bar &-nav-wrap {
margin-bottom: 0;
}
&&-card &-card-bar &-tab &-close-x {
width: 16px;
height: 16px;
height: @font-size-base;
margin-right: -5px;
margin-left: 3px;
overflow: hidden;
color: @text-color-secondary;
font-size: @font-size-sm;
vertical-align: middle;
transition: all 0.3s;
&:hover {
color: @heading-color;
}
}
&&-card &-card-content > &-tabpane,
&&-editable-card &-card-content > &-tabpane {
transition: none;
&-inactive {
overflow: hidden;
}
}
&&-card &-card-bar &-tab:hover .@{iconfont-css-prefix}-close {
opacity: 1;
}
&-extra-content {
line-height: @tabs-card-height;
.@{tab-prefix-cls}-new-tab {
position: relative;
width: 20px;
height: 20px;
color: @text-color;
font-size: 12px;
line-height: 20px;
text-align: center;
border: @border-width-base @border-style-base @border-color-split;
border-radius: @border-radius-sm;
cursor: pointer;
transition: all 0.3s;
&:hover {
color: @tabs-card-active-color;
border-color: @tabs-card-active-color;
}
svg {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
margin: auto;
}
}
}
&.@{tab-prefix-cls}-small {
.@{tab-prefix-cls}-nav-container {
font-size: @tabs-title-font-size-sm;
color: #f00;
}
.@{tab-prefix-cls}-card-bar .@{tab-prefix-cls}-tab {
padding: @tabs-horizontal-padding-sm;
// margin: 0 32px 4px 0;
height: 22px;
margin: 0;
line-height: 22px;
}
}
// https://github.com/ant-design/ant-design/issues/4669
&-vertical&-card &-card-bar&-left-bar,
&-vertical&-card &-card-bar&-right-bar {
.@{tab-prefix-cls}-nav-container {
height: auto;
}
.@{tab-prefix-cls}-tab {
margin-bottom: 8px;
border-bottom: @border-width-base @border-style-base @border-color-split;
&-active {
padding-bottom: 4px;
}
&:last-child {
margin-bottom: 8px;
}
}
.@{tab-prefix-cls}-new-tab {
width: 90%;
}
}
&-vertical&-card&-left &-card-bar&-left-bar {
.@{tab-prefix-cls}-nav-wrap {
margin-right: 0;
}
.@{tab-prefix-cls}-tab {
margin-right: 1px;
border-right: 0;
border-radius: @border-radius-base 0 0 @border-radius-base;
&-active {
margin-right: -1px;
padding-right: 18px;
}
}
}
&-vertical&-card&-right &-card-bar&-right-bar {
.@{tab-prefix-cls}-nav-wrap {
margin-left: 0;
}
.@{tab-prefix-cls}-tab {
margin-left: 1px;
border-left: 0;
border-radius: 0 @border-radius-base @border-radius-base 0;
&-active {
margin-left: -1px;
padding-left: 18px;
}
}
}
// https://github.com/ant-design/ant-design/issues/9104
& &-card-bar&-bottom-bar &-tab {
border-top: 0;
border-bottom: @border-width-base @border-style-base @border-color-split;
border-radius: 0 0 @border-radius-base @border-radius-base;
}
& &-card-bar&-bottom-bar &-tab-active {
padding-top: 1px;
padding-bottom: 0;
color: @primary-color;
}
}
.card-top-container > .yg-tabs-card > .yg-tabs-content {
height: 120px;
margin-top: -16px;
}
.card-top-container > .yg-tabs-card > .yg-tabs-content > .yg-tabs-tabpane {
background: #fff;
padding: 20px 0px;
}
.card-top-container > .yg-tabs-card > .yg-tabs-bar {
border-color: transparent;
}
.card-top-container > .yg-tabs-card > .yg-tabs-bar .yg-tabs-nav-wrap {
background-color: #f7f7f7;
border: 1px solid #e5e5e5;
border-bottom: 0;
}
.card-top-container > .yg-tabs-card > .yg-tabs-bar .yg-tabs-tab {
border-color: transparent;
background: #f7f7f7;
border-bottom: 1px solid #e5e5e5;
}
.card-top-container > .yg-tabs-card > .yg-tabs-bar .yg-tabs-tab:after {
background: #e5e5e5;
position: absolute;
right: -1px;
top: 6px;
width: 1px;
height: 18px;
content: ' ';
}
.card-top-container > .yg-tabs-card > .yg-tabs-bar .yg-tabs-tab-active {
// border-top: 2px solid @primary-color;
color: @primary-color;
margin: 0;
background-color: #fff;
border-bottom: 1px solid transparent;
background: #fff;
}
.card-top-container > .yg-tabs-card > .yg-tabs-bar .yg-tabs-tab-active:before {
position: absolute;
height: 2px;
width: 100%;
content: ' ';
left: 0;
top: -1px;
background-color: #00a1ff;
}
.card-top-container > .yg-tabs-card > .yg-tabs-bar .yg-tabs-tab-active:after {
background: #e5e5e5;
position: absolute;
right: -1px;
top: 6px;
width: 0px;
height: 18px;
content: ' ';
}