Files
qiming/qiming-mobile/uni_modules/lime-tabs/components/l-tabs/index.scss

217 lines
4.7 KiB
SCSS

@import '@/uni_modules/lime-style/index.scss';
@import '@/uni_modules/lime-style/mixins/hairline.scss';
/* #ifdef uniVersion >= 4.75 */
$use-css-var: true;
/* #endif */
$tabs: l-tabs;
$item: l-tabs__item;
$text-color-disabled: create-var(text-color-disabled, $text-color-4);
$tab-font-size: create-var(tab-font-size, 14px);
$tab-large-font-size: create-var(tab-font-size, 16px);
$tab-nav-bg-color: create-var(tab-nav-bg-color, $bg-color-container);
$tab-content-bg-color: create-var(tab-content-bg-color, $bg-color-container);
$tab-item-height: create-var(tab-item-height, 48px);
$tab-item-padding-x: create-var(tab-item-padding-x, 16px);
$tab-item-padding-y: create-var(tab-item-padding-y, 0);
$tab-item-color: create-var(tab-item-color, $text-color-1);
$tab-item-active-color: create-var(tab-item-active-color, $primary-color);
$tab-item-disabled-color: create-var(tab-item-disabled-color, $text-color-4);
// track
$tab-split-color: create-var(tab-split-color, $border-color-2);
$tab-track-color: create-var(tab-track-color, $primary-color);
$tab-track-height: create-var(tab-track-height, 3px);
$tab-track-width: create-var(tab-track-width, 16px);
$tab-track-radius: create-var(tab-track-radius, 4px);
.#{$tabs} {
position: relative;
/* #ifndef UNI-APP-X & APP */
font-size: $tab-font-size;
/* #endif */
// background-color: $tab-nav-bg-color;
// flex-wrap: wrap;
&__wrap {
/* #ifndef UNI-APP-X */
display: flex;
/* #endif */
flex: 1;
background-color: $tab-nav-bg-color;
flex-direction: row;
}
&__scroll {
position: relative;
flex: 1;
/* #ifdef UNI-APP-X & APP || UNI-APP-X & WEB */
flex-direction: row;
/* #endif */
/* #ifndef UNI-APP-X & APP */
:deep(.uni-scroll-view) {
&::-webkit-scrollbar {
display: none;
}
}
// &::-webkit-scrollbar {
// display: none;
// width: 0 !important;
// height: 0 !important;
// -webkit-appearance: none;
// background: transparent;
// }
/* #endif */
&--split {
/* #ifndef UNI-APP-X & APP */
&:after {
@include hairline-bottom($tab-split-color);
}
/* #endif */
/* #ifdef UNI-APP-X & APP */
// border-bottom: 1rpx solid $tab-split-color;
border-bottom-color: $tab-split-color;
border-bottom-style: solid;
border-bottom-width: 0.7px;
/* #endif */
}
}
&__nav {
/* #ifndef UNI-APP-X */
display: flex;
/* #endif */
/* #ifndef UNI-APP-X & APP */
user-select: none;
min-width: fit-content;
width: 100%;
/* #endif */
flex-direction: row;
position: relative;
// width: 100%;
// align-self: flex-start;
flex-wrap: nowrap;
align-items: center;
}
&__track {
position: absolute;
z-index: 1;
transition-duration: 0.3s;
background-color: $tab-track-color;
left: 0;
bottom: 1rpx;
width: $tab-track-width;
height: $tab-track-height;
// border-radius: $tab-track-radius;
@include border-radius($tab-track-radius);
}
&__content {
width: 100%;
// flex: 1;
overflow: hidden;
background-color: $tab-content-bg-color;
&-inner {
display: flex;
flex-direction: row;
flex: 1;
overflow: visible;
/* #ifdef UNI-APP-X & APP */
// 为了不让首次把所有界面显示 先隐藏一下
opacity: 0;
/* #endif */
}
// &--animated {
// display: flex;
// transition-property: left;
// }
&--animated .l-tabs__content-inner {
position: relative;
width: 100%;
height: 100%;
/* #ifndef UNI-APP-X & APP */
display: flex;
will-change: left;
/* #endif */
transition-property: transform;
}
}
}
.#{$item} {
position: relative;
/* #ifndef UNI-APP-X */
display: flex;
/* #endif */
flex: none;
align-items: center;
justify-content: center;
overflow: visible;
// padding: $tab-item-padding;
@include padding($tab-item-padding-y $tab-item-padding-x);
box-sizing: border-box;
height: $tab-item-height;
/* #ifndef UNI-APP-X & APP */
font-weight: 400;
color: $tab-item-color;
white-space: nowrap;
/* #endif */
&-text {
font-weight: 400;
font-size: $tab-font-size;
white-space: nowrap;
transition: color 300ms;
color: $tab-item-color;
&--large {
font-size: $tab-large-font-size;
/* #ifndef UNI-APP-X */
.l-tabs__item-text {
font-size: inherit;
}
/* #endif */
}
&--active {
font-weight: 700;
color: $tab-item-active-color;
}
&--disabled {
color: $tab-item-disabled-color;
}
/* #ifdef UNI-APP-X & APP */
/* #endif */
}
&--evenly {
flex: 1;
}
/* #ifndef UNI-APP-X & APP */
&--active {
font-weight: 700;
color: $tab-item-active-color;
/* #ifndef UNI-APP-X */
.l-tabs__item-text {
font-weight: inherit;
color: inherit
}
/* #endif */
}
&--disabled {
color: $tab-item-disabled-color;
/* #ifndef UNI-APP-X */
.l-tabs__item-text {
color: inherit
}
/* #endif */
}
/* #endif */
}