vben
2020-10-18 7101587b9676c91e9079044a096df08848f1f602
提交 | 用户 | age
2f6253 1 @import (reference) '../../../design/index.less';
2
3 .multiple-tabs {
4   box-shadow: 0 1px 4px rgba(0, 21, 41, 0.08);
5
6   .ant-tabs-small {
7     height: @multiple-height;
8   }
9
10   .ant-tabs.ant-tabs-card {
11     .ant-tabs-card-bar {
12       height: @multiple-height;
13       margin: 0;
14       background: @white;
15       border: 0;
16       box-shadow: 0 4px 26px 1px rgba(0, 0, 0, 0.08);
17
18       .ant-tabs-nav-container {
19         height: @multiple-height;
20         padding-top: 2px;
21       }
22
23       .ant-tabs-tab {
24         height: calc(@multiple-height - 2px);
25         font-size: 14px;
26         line-height: calc(@multiple-height - 2px);
27         color: @text-color-call-out;
28         background: @white;
29         border: 1px solid @border-color-shallow-dark;
30         border-radius: 4px 4px 0 0;
31         transition: none;
32
33         .ant-tabs-close-x {
34           color: inherit;
35         }
36
70fba7 37         > div {
V 38           display: flex;
39           justify-content: center;
40           align-items: center;
41         }
42
2f6253 43         svg {
44           fill: @text-color-base;
45         }
46
47         &::before {
48           position: absolute;
49           top: -2px;
50           right: 0;
51           left: 0;
52           height: 4px;
53           background-color: @primary-color;
54           border-radius: 16px 6px 0 0;
55           content: '';
56           transform: scaleX(0);
57           transform-origin: bottom right;
58         }
59
60         &:hover::before {
61           transform: scaleX(1);
62           transition: transform 0.4s ease;
63           transform-origin: bottom left;
64         }
65       }
66
67       .ant-tabs-tab-active {
68         height: calc(@multiple-height - 3px);
69         color: @white;
70         // background: @primary-color;
71         background: linear-gradient(
72           118deg,
73           rgba(@primary-color, 0.8),
74           rgba(@primary-color, 1)
75         ) !important;
76         border: 0;
77         box-shadow: 0 0 6px 1px rgba(@primary-color, 0.4);
78
79         &::before {
80           display: none;
81         }
82
83         svg {
84           fill: @white;
85         }
86       }
87     }
88
89     .ant-tabs-nav > div:nth-child(1) {
90       padding: 0 10px;
91     }
92
93     .ant-tabs-tab-prev,
94     .ant-tabs-tab-next {
95       color: @border-color-dark;
96       background: @white;
97     }
98   }
99
100   .ant-tabs-tab:not(.ant-tabs-tab-active) {
101     .anticon-close {
102       font-size: 12px;
103
104       svg {
105         width: 0.8em;
106       }
107     }
108
109     &:hover {
110       .anticon-close {
111         color: @white;
112       }
113     }
114   }
115 }
116
117 .multiple-tabs-content {
118   &__extra {
119     display: inline-block;
120     width: @multiple-height;
121     height: @multiple-height;
122     line-height: @multiple-height;
123     color: @primary-color;
124     text-align: center;
125     cursor: pointer;
126     box-shadow: 0 1px 4px rgba(0, 21, 41, 0.08);
127
128     span[role='img'] {
129       transform: rotate(90deg);
130     }
131   }
132
133   &__content {
134     display: inline-block;
135     width: 100%;
136     padding-left: 10px;
137     margin-left: -10px;
138     cursor: pointer;
139     user-select: none;
140   }
141 }