|
|
@@ -17,6 +17,23 @@
|
|
|
--td-button-default-bg-color: #fa4126;
|
|
|
--td-button-default-border-color: #fa4126;
|
|
|
--td-checkbox-icon-checked-color: #fa4126;
|
|
|
+
|
|
|
+ /* TDesign Tabs 组件主题变量 */
|
|
|
+ --td-tab-font-size: 28rpx;
|
|
|
+ --td-tab-nav-bg-color: #fff;
|
|
|
+ --td-tab-item-color: #333;
|
|
|
+ --td-tab-item-active-color: #fa550f;
|
|
|
+ --td-tab-item-disabled-color: rgba(0, 0, 0, 0.26);
|
|
|
+ --td-tab-track-color: #fa550f;
|
|
|
+ --td-tab-track-width: 32rpx;
|
|
|
+ --td-tab-track-thickness: 6rpx;
|
|
|
+ --td-tab-track-radius: 8rpx;
|
|
|
+ --td-tab-item-height: 96rpx;
|
|
|
+ --td-tab-icon-size: 36rpx;
|
|
|
+ --td-tab-border-color: #e7e7e7;
|
|
|
+ --td-tab-item-tag-bg: #f3f3f3;
|
|
|
+ --td-tab-item-tag-active-bg: rgba(250, 85, 15, 0.1);
|
|
|
+ --td-tab-item-tag-height: 64rpx;
|
|
|
}
|
|
|
|
|
|
/* ===== 语义化颜色类 ===== */
|
|
|
@@ -632,6 +649,230 @@
|
|
|
transition: opacity 0.3s ease;
|
|
|
}
|
|
|
|
|
|
+/* ===== TDesign Tabs 组件样式 ===== */
|
|
|
+.tdesign-tabs {
|
|
|
+ position: relative;
|
|
|
+ font-size: var(--td-tab-font-size, 28rpx);
|
|
|
+ background: var(--td-tab-nav-bg-color, #fff);
|
|
|
+ flex-wrap: wrap;
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__wrapper {
|
|
|
+ display: flex;
|
|
|
+ overflow: hidden;
|
|
|
+ background: var(--td-tab-nav-bg-color, #fff);
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__wrapper--card {
|
|
|
+ background: var(--td-tab-item-tag-bg, #f3f3f3);
|
|
|
+ --td-tab-border-color: transparent;
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item {
|
|
|
+ position: relative;
|
|
|
+ display: flex;
|
|
|
+ flex: none;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ font-weight: 400;
|
|
|
+ color: var(--td-tab-item-color, #333);
|
|
|
+ padding: 0 var(--td-spacer-2, 32rpx);
|
|
|
+ box-sizing: border-box;
|
|
|
+ white-space: nowrap;
|
|
|
+ overflow: hidden;
|
|
|
+ height: var(--td-tab-item-height, 96rpx);
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item--active {
|
|
|
+ font-weight: 600;
|
|
|
+ color: var(--td-tab-item-active-color, #fa550f);
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item--disabled {
|
|
|
+ color: var(--td-tab-item-disabled-color, rgba(0, 0, 0, 0.26));
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item--evenly {
|
|
|
+ flex: 1 0 auto;
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item-inner {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item-inner--tag {
|
|
|
+ width: 100%;
|
|
|
+ text-align: center;
|
|
|
+ padding: 0 var(--td-spacer-2, 32rpx);
|
|
|
+ line-height: var(--td-tab-item-tag-height, 64rpx);
|
|
|
+ border-radius: calc(var(--td-tab-item-tag-height, 64rpx) / 2);
|
|
|
+ background-color: var(--td-tab-item-tag-bg, #f3f3f3);
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item-inner--active.tdesign-tabs__item-inner--tag {
|
|
|
+ background-color: var(--td-tab-item-tag-active-bg, rgba(250, 85, 15, 0.1));
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item--tag:not(.tdesign-tabs__item--evenly) {
|
|
|
+ padding: 0 calc(var(--td-spacer, 16rpx) / 2);
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item--tag:not(.tdesign-tabs__item--evenly):first-child {
|
|
|
+ margin-left: var(--td-spacer, 16rpx);
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item--tag:not(.tdesign-tabs__item--evenly):last-child {
|
|
|
+ padding-right: var(--td-spacer-1, 24rpx);
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item--tag {
|
|
|
+ padding: 0 var(--td-spacer, 16rpx);
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item--card.tdesign-tabs__item--active {
|
|
|
+ background-color: var(--td-tab-nav-bg-color, #fff);
|
|
|
+ border-radius: var(--td-radius-large, 18rpx) var(--td-radius-large, 18rpx) 0 0;
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item--card.tdesign-tabs__item--active:first-child {
|
|
|
+ border-top-left-radius: 0;
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item--card.tdesign-tabs__item--active:last-child {
|
|
|
+ border-top-right-radius: 0;
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item--card.tdesign-tabs__item--pre {
|
|
|
+ border-bottom-right-radius: var(--td-radius-large, 18rpx);
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item-prefix,
|
|
|
+.tdesign-tabs__item-suffix {
|
|
|
+ position: absolute;
|
|
|
+ bottom: 0;
|
|
|
+ width: 18rpx;
|
|
|
+ height: 18rpx;
|
|
|
+ background-color: var(--td-tab-nav-bg-color, #fff);
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item-prefix::after,
|
|
|
+.tdesign-tabs__item-suffix::after {
|
|
|
+ content: '';
|
|
|
+ display: block;
|
|
|
+ width: 100%;
|
|
|
+ height: 100%;
|
|
|
+ background-color: var(--td-tab-item-tag-bg, #f3f3f3);
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item-prefix {
|
|
|
+ right: 0;
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item-prefix::after {
|
|
|
+ border-bottom-right-radius: var(--td-radius-large, 18rpx);
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item-suffix {
|
|
|
+ left: 0;
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__item-suffix::after {
|
|
|
+ border-bottom-left-radius: var(--td-radius-large, 18rpx);
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__badge--active {
|
|
|
+ --td-badge-content-text-color: var(--td-tab-item-active-color, #fa550f);
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__badge--disabled {
|
|
|
+ --td-badge-content-text-color: var(--td-tab-item-disabled-color, rgba(0, 0, 0, 0.26));
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__icon {
|
|
|
+ font-size: var(--td-tab-icon-size, 36rpx);
|
|
|
+ margin-right: calc(var(--td-spacer, 16rpx) / 4);
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__content {
|
|
|
+ overflow: hidden;
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__nav {
|
|
|
+ position: relative;
|
|
|
+ user-select: none;
|
|
|
+ display: flex;
|
|
|
+ flex-wrap: nowrap;
|
|
|
+ align-items: center;
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__nav.tdesign-tabs__nav--evenly {
|
|
|
+ width: 100%;
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__track {
|
|
|
+ position: absolute;
|
|
|
+ font-weight: 600;
|
|
|
+ z-index: 1;
|
|
|
+ opacity: 1;
|
|
|
+ background-color: var(--td-tab-track-color, #fa550f);
|
|
|
+ left: 0;
|
|
|
+ bottom: 1rpx;
|
|
|
+ width: var(--td-tab-track-width, 32rpx);
|
|
|
+ height: var(--td-tab-track-thickness, 6rpx);
|
|
|
+ border-radius: var(--td-tab-track-radius, 8rpx);
|
|
|
+ transition: transform 0.3s ease;
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__scroll {
|
|
|
+ position: relative;
|
|
|
+ height: var(--td-tab-item-height, 96rpx);
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__scroll--split {
|
|
|
+ position: relative;
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__scroll--split::after {
|
|
|
+ content: '';
|
|
|
+ display: block;
|
|
|
+ position: absolute;
|
|
|
+ top: unset;
|
|
|
+ bottom: 0;
|
|
|
+ left: unset;
|
|
|
+ right: unset;
|
|
|
+ background-color: var(--td-tab-border-color, #e7e7e7);
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__scroll--split::after {
|
|
|
+ height: 1px;
|
|
|
+ left: 0;
|
|
|
+ right: 0;
|
|
|
+ transform: scaleY(0.5);
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__scroll::-webkit-scrollbar {
|
|
|
+ display: none;
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__content {
|
|
|
+ width: 100%;
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__content-inner {
|
|
|
+ display: block;
|
|
|
+}
|
|
|
+
|
|
|
+.tdesign-tabs__content--animated .tdesign-tabs__content-inner {
|
|
|
+ position: relative;
|
|
|
+ width: 100%;
|
|
|
+ height: 100%;
|
|
|
+ display: flex;
|
|
|
+ will-change: left;
|
|
|
+ transition-property: transform;
|
|
|
+}
|
|
|
+
|
|
|
/* ===== TDesign Search 组件样式 ===== */
|
|
|
.tdesign-search {
|
|
|
display: flex;
|