diff --git a/common/css/animation.css b/common/css/animation.css index 9c377fa8..65f61840 100644 --- a/common/css/animation.css +++ b/common/css/animation.css @@ -1,50 +1,4 @@ -/* -* 放大缩小 -*/ -.scale-up-center { - -webkit-animation: scale-up-center 1s cubic-bezier(0.390, 0.575, 0.565, 1.000) both; - animation: scale-up-center 1s cubic-bezier(0.390, 0.575, 0.565, 1.000) both; -} -.scale-up-center-infinite { - -webkit-animation: scale-up-center 1s cubic-bezier(0.390, 0.575, 0.565, 1.000) infinite both; - animation: scale-up-center 1s cubic-bezier(0.390, 0.575, 0.565, 1.000) infinite both; -} - -@keyframes scale-up-center { - 0% { - -webkit-transform: scale(0.5); - transform: scale(0.5); - } - 100% { - -webkit-transform: scale(1); - transform: scale(1); - } - } -/* -* 中心缩小 -*/ -.scale-out-center { - -webkit-animation: scale-out-center 1s cubic-bezier(0.550, 0.085, 0.680, 0.530) both; - animation: scale-out-center 1s cubic-bezier(0.550, 0.085, 0.680, 0.530) both; -} -.scale-out-center-infinite { - -webkit-animation: scale-out-center 1s cubic-bezier(0.550, 0.085, 0.680, 0.530) infinite both; - animation: scale-out-center 1s cubic-bezier(0.550, 0.085, 0.680, 0.530) infinite both; -} - -@keyframes scale-out-center { - 0% { - -webkit-transform: scale(1); - transform: scale(1); - opacity: 1; - } - 100% { - -webkit-transform: scale(0); - transform: scale(0); - opacity: 1; - } -} /* * 垂直放大 */ @@ -84,8 +38,8 @@ } } /* -* 交替垂直 -*/放大 +* 交替垂直放大 +*/ .scale-up-ver-bottom-alternate { -webkit-animation: scale-up-ver-bottom-alternate 1s cubic-bezier(0.390, 0.575, 0.565, 1.000) alternate both; animation: scale-up-ver-bottom-alternate 1s cubic-bezier(0.390, 0.575, 0.565, 1.000) alternate both; @@ -561,8 +515,8 @@ } /* -* 在fwd -*/中心滑动 +* 在fwd中心滑动 +*/ .slide-in-fwd-center { -webkit-animation: slide-in-fwd-center 2s cubic-bezier(0.250, 0.460, 0.450, 0.940) both; animation: slide-in-fwd-center 2s cubic-bezier(0.250, 0.460, 0.450, 0.940) both; diff --git a/components/diy/diy.vue b/components/diy/diy.vue index 174e6e9e..c7ed9423 100644 --- a/components/diy/diy.vue +++ b/components/diy/diy.vue @@ -19,29 +19,29 @@ diff --git a/components/diy/goods-list.vue b/components/diy/goods-list.vue index f5556bbe..662ec285 100644 --- a/components/diy/goods-list.vue +++ b/components/diy/goods-list.vue @@ -63,7 +63,7 @@ - + {{ form.shop_button_text }} @@ -93,7 +93,7 @@ - + {{ form.shop_button_text }} @@ -155,7 +155,7 @@ - + {{ form.shop_button_text }} diff --git a/components/diy/goods-tabs.vue b/components/diy/goods-tabs.vue index d6009e92..41ceb9ad 100644 --- a/components/diy/goods-tabs.vue +++ b/components/diy/goods-tabs.vue @@ -5,7 +5,7 @@ - + diff --git a/components/diy/modules/custom/data-rendering.vue b/components/diy/modules/custom/data-rendering.vue index 088bcf48..e7e6ead5 100644 --- a/components/diy/modules/custom/data-rendering.vue +++ b/components/diy/modules/custom/data-rendering.vue @@ -17,7 +17,7 @@ diff --git a/components/diy/modules/tabs-view.vue b/components/diy/modules/tabs-view.vue index 61f08e58..3adc15ab 100644 --- a/components/diy/modules/tabs-view.vue +++ b/components/diy/modules/tabs-view.vue @@ -8,29 +8,40 @@ - - + + - {{ item.desc }} - - + {{ item.desc }} + + @@ -132,6 +143,7 @@ }, data() { return { + form: {}, new_style: {}, tabs_theme_index: '', tabs_theme: '', @@ -164,6 +176,7 @@ tabs_bottom_line_theme: '', tabs_sticky: '', tabs_height: '100%', + tabs_adorn_img_style: '', // 默认数据 old_radius: { radius: 0, radius_top_left: 0, radius_top_right: 0, radius_bottom_left: 0, radius_bottom_right: 0 }, old_padding: { padding: 0, padding_top: 0, padding_bottom: 0, padding_left: 0, padding_right: 0 }, @@ -241,9 +254,10 @@ const height = Math.max(tabs_size_checked + default_height, tabs_size, icon_height, is_img > -1 ? (tabs_img_height + default_height) : ''); // 参数设置 this.setData({ + form: new_content, new_style: new_style, tabs_spacing: Number(new_style.tabs_spacing), - tabs_sign_spacing: !isEmpty(new_style.tabs_sign_spacing) ? `row-gap:${new_style.tabs_sign_spacing * 2}rpx;` : 'row-gap:8rpx;', + tabs_sign_spacing: !isEmpty(new_style.tabs_sign_spacing) ? `margin-top: ${new_style.tabs_sign_spacing * 2}rpx;` : 'margin-top: 8rpx;', tabs_list: new_content.tabs_list, tabs_padding_bottom: this.get_padding_bottom(new_content, new_style), // 选项卡主题 @@ -261,8 +275,12 @@ tabs_bottom_line_theme: new_style.tabs_one_theme == '1' ? 'tabs-bottom-line-theme' : '', tabs_theme_1_style: new_style.tabs_one_theme == '1', tabs_height: ['2', '4'].includes(new_content.tabs_theme) ? height * 2 + 'rpx' : '100%;', + tabs_adorn_img_style: this.get_tabs_adorn_img_style(new_style), }); }, + get_tabs_adorn_img_style(new_style) { + return radius_computer(new_style?.tabs_adorn_img_radius || this.old_radius) + `height: ${(new_style?.tabs_adorn_img_height || 10) * 2}rpx;${ new_style.is_tabs_adorn_img_background == '1' ? tabs_check.value : ''}`; + }, // 获取选项卡主题 get_tabs_theme(data) { let arr = { @@ -283,7 +301,7 @@ bottom = 3; } } else if (form.tabs_theme == '3') { - bottom = 10; + bottom = !isEmpty(form.tabs_adorn_icon) ? new_style.tabs_adorn_icon_size : new_style.tabs_adorn_img_height; } const tabs_sign_spacing = !isEmpty(new_style.tabs_sign_spacing) ? new_style.tabs_sign_spacing : 4; return ['1', '2', '4'].includes(form.tabs_theme) ? '' : `padding-bottom: ${(tabs_sign_spacing + bottom) * 2 }rpx;`; @@ -369,6 +387,7 @@ border-radius: 100%; border: 2rpx solid transparent; display: none; + margin: 0 auto; } &.tabs-style-1 { &.active { @@ -395,7 +414,8 @@ .desc { border-radius: 40rpx; padding: 4rpx 12rpx; - display: inline-block; + box-sizing: border-box; + display: block; } } &.tabs-style-3 { @@ -404,6 +424,7 @@ // background: #ff2222; border-radius: 40rpx; padding: 6px 12px; + box-sizing: border-box; color: #fff; } } @@ -428,6 +449,7 @@ // background: #ff5e5e; border-radius: 40rpx; padding: 2px 7px; + box-sizing: border-box; // color: #fff; } .img { @@ -459,4 +481,7 @@ .pb-0 { padding-bottom: 0 !important; } + .ma-auto { + margin: auto; + } diff --git a/components/diy/tabs.vue b/components/diy/tabs.vue index 7b7c5e98..0254c3e4 100644 --- a/components/diy/tabs.vue +++ b/components/diy/tabs.vue @@ -146,10 +146,9 @@ if (!Array.isArray(tabs_bg) || tabs_bg.length === 0 || !tabs_bg[0] || !tabs_bg[0].color) { new_tabs_background = 'background:#fff;'; } - this.setData({ tabs_data: new_tabs_data, - style_container: this.propIsCommon ? common_styles_computer(new_style.common_style) + new_tabs_background : new_content.tabs_top_up == '1' ? gradient_computer(new_style.common_style) + margin_computer(this.propSpacingCommonStyle) + new_tabs_background : '', // 如果是选项卡轮播,不需要走默认样式 + style_container: this.propIsCommon ? new_tabs_background + common_styles_computer(new_style.common_style) : new_content.tabs_top_up == '1' ? new_tabs_background + gradient_computer(new_style.common_style) + margin_computer(this.propSpacingCommonStyle) : '', // 如果是选项卡轮播,不需要走默认样式 style_img_container: this.propIsCommon ? common_img_computer(new_style.common_style, this.propIndex) : new_content.tabs_top_up == '1' ? background_computer(new_style.common_style) + padding_computer(this.propSpacingCommonStyle, 1, true) + 'box-sizing: border-box;' : '', // 如果是选项卡轮播,不需要走默认样式 tabs_top_style: new_tabs_top_style, // 判断是否置顶