/**index.less**/ page { height: 100vh; display: flex; flex-direction: column; background: #f5f6f7; } .scrollarea { flex: 1; overflow-y: hidden; } .container { position: relative; .slider-count { position: absolute; top: 678rpx; right: 0; background: rgba(0, 0, 0, 0.4); border-radius: 200rpx 0rpx 0rpx 200rpx; font-weight: 600; font-size: 28rpx; color: #ffffff; line-height: 40rpx; text-align: center; padding: 2rpx 20rpx 2rpx 28rpx; z-index: 1; } .bannerSwiper { height: 750rpx; .swiper-item { width: 100%; height: 100%; image { width: 100%; height: 100%; } } .swiper-video { display: flex; align-items: center; video { width: 100%; } wx-video .wx-video-top-bar>.wx-video-top-right-buttons { display: none; } .bg { filter: blur(32rpx); } image { position: absolute; top: 0; bottom: 0; } .icon-video { width: 92rpx; height: 92rpx; top: 50%; left: 50%; transform: translate(-50%, -50%); } } } } .goodsSection { background: #ffffff; .title { font-size: 28rpx; color: #333333; line-height: 40rpx; padding: 28rpx 24rpx; display: flex; align-items: center; justify-content: center; .before, .after { content: ""; width: 68rpx; height: 2rpx; border-radius: 2rpx; opacity: 0.3; display: inline-block; } .before { background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, #000000 100%); margin-right: 24rpx; } .after { background: linear-gradient(270deg, rgba(0, 0, 0, 0) 0%, #000000 100%); margin-left: 24rpx; } } } .goodsIntro { background: #ffffff; overflow: hidden; .images { image { display: block; width: 100%; } } } .titleVideoSection { position: relative; margin: 24rpx 0; .icon-video { position: absolute; width: 92rpx !important; height: 92rpx !important; top: 50%; left: 50%; transform: translate(-50%, -50%); } wx-video .wx-video-top-bar>.wx-video-top-right-buttons { display: none; } .video-section { position: relative; width: 100%; image { box-shadow: 4rpx 8rpx 24rpx 1rpx rgba(96, 168, 223, 0.45); border-radius: 24rpx; } } } .title-section { background: #fff; overflow: hidden; .title { margin: 66rpx auto 20rpx; width: 162rpx !important; height: 88rpx; padding: 0; } .topSection { padding: 0 48rpx; .content1 { font-size: 28rpx; color: #131415; line-height: 48rpx; text-align: justify; } .content2 { font-size: 24rpx; color: #131415; line-height: 48rpx; text-align: center; } } .titleSwiper { position: relative; padding: 24rpx 0 40rpx; swiper { height: 472rpx; } .swiper-item-detail { height: 368rpx; padding: 0 48rpx; image { width: 100%; height: 100%; box-shadow: 4rpx 8rpx 24rpx 1rpx rgba(96, 168, 223, 0.45); border-radius: 24rpx; } .text { padding: 20rpx 0; font-size: 24rpx; color: #131415; line-height: 48rpx; text-align: center; } } .title-dot { display: flex; align-items: center; justify-content: center; .title-dot--item { width: 16rpx; height: 16rpx; border-radius: 50%; margin: 0 11rpx; background: #d1d1d1; } .title-dot--item-active { background: #78cafe; } } } } .bottom-section { position: fixed; bottom: 0; left: 0; z-index: 2; width: 100%; background-color: #ffffff; padding: 20rpx 32rpx 58rpx 32rpx; display: flex; align-items: center; box-sizing: border-box; .orders { display: flex; flex-direction: column; padding-right: 40rpx; image { width: 48rpx; height: 48rpx; } text { font-size: 24rpx; color: #777777; line-height: 34rpx; text-align: center; } } .btnSection { flex: 1 auto; position: relative; button { width: 100%; line-height: 88rpx; background: linear-gradient(90deg, #544f4a 0%, #302f2b 100%); border-radius: 44rpx; font-weight: 500; font-size: 32rpx; color: #fbeac9; padding-top: 0; padding-bottom: 0; &[disabled][type="primary"] { opacity: 0.7; } } } } .scroll-header { position: fixed; top: 0; left: 0; width: 100%; z-index: 9; background-color: #fff; .product-catagory { border-top: 1px solid #f2f2f2; display: flex; align-items: center; justify-content: center; padding: 20rpx 0 28rpx; .item { position: relative; padding: 0 40rpx; font-size: 28rpx; color: #999999; line-height: 40rpx; } .selected { color: #131415; font-weight: 600; &::after { position: absolute; left: 50%; bottom: -8rpx; transform: translateX(-50%); content: ""; display: block; width: 34rpx; height: 4rpx; background: #534e49; } } } } // ==================== 购买弹窗样式 ==================== .popup-section { &.hidden { display: none; } .popup-mask { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.6); z-index: 9; } .popup-container { position: fixed; bottom: 0; left: 0; right: 0; z-index: 10; width: 100%; background: #ffffff; border-radius: 32rpx 32rpx 0 0; padding: 24rpx 32rpx 0; box-sizing: border-box; overflow: hidden; } .iconClose { position: absolute; top: 48rpx; right: 32rpx; width: 30rpx; height: 30rpx; padding: 24rpx; box-sizing: content-box; z-index: 11; } } // 用户类型切换 tabs - 连在一起的整体样式 .user-type-tabs { display: flex; align-items: center; width: 442rpx; height: 76rpx; margin: 0 auto 40rpx; padding: 6rpx; box-sizing: border-box; background: rgba(21, 23, 28, 0.05); border-radius: 146rpx; .tab-item { width: 212rpx; height: 64rpx; line-height: 64rpx; font-size: 28rpx; color: #15171c; border-radius: 104rpx; transition: all 0.3s; text-align: center; &.active { background: linear-gradient(90deg, #544f4a 0%, #302f2b 100%); color: #fbeac9; font-weight: 500; } } } // 商品信息卡片 .product-info-card { display: flex; align-items: center; min-height: 180rpx; margin-bottom: 48rpx; background: #ffffff; .product-image { width: 180rpx; height: 180rpx; margin-right: 24rpx; flex-shrink: 0; border-radius: 24rpx; overflow: hidden; background: #f6f6f6; } .product-detail { flex: 1; min-width: 0; display: flex; flex-direction: column; justify-content: center; .product-name { font-size: 32rpx; color: #15171c; font-weight: 500; margin-bottom: 12rpx; line-height: 44rpx; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .price-line { display: flex; align-items: baseline; height: 58rpx; margin-bottom: 12rpx; .price-tag { width: 100rpx; height: 46rpx; line-height: 46rpx; font-size: 24rpx; color: #7d3f00; margin-right: 12rpx; background: linear-gradient(90deg, #feeac3 0%, #ffdeb0 100%); border-radius: 8rpx; text-align: center; font-weight: 500; } .price-num { font-size: 48rpx; line-height: 58rpx; color: #15171c; font-weight: 700; } } .origin-line { display: flex; align-items: center; min-width: 0; font-size: 24rpx; color: #8a8d93; line-height: 34rpx; .origin-tag { margin-right: 8rpx; } .origin-num { text-decoration: line-through; margin-right: 8rpx; } .divider { display: none; } .sold-count { color: #8a8d93; white-space: nowrap; } } } } // 选择期限 .period-select-section { margin-bottom: 48rpx; .section-label { font-size: 28rpx; color: #15171c; font-weight: 500; line-height: 40rpx; margin-bottom: 16rpx; } .period-options-scroll { width: 100%; white-space: nowrap; } .period-options { display: inline-flex; align-items: center; padding-left: 4rpx; padding-right: 32rpx; box-sizing: border-box; .period-btn { flex: none; min-width: 96rpx; height: 68rpx; padding: 0 24rpx; margin-right: 16rpx; box-sizing: border-box; display: flex; align-items: center; justify-content: center; background: #f6f6f6; border-radius: 16rpx; font-size: 28rpx; color: #15171c; border: none; transition: all 0.2s; &:last-child { margin-right: 0; } &.active { background: #fff1d6; color: #15171c; font-weight: 600; } &.disabled { color: #b9bdc7; background: #f1f2f4; } &.disabled.active { color: #b9bdc7; background: #f1f2f4; font-weight: 400; } } } } // 额外赠送 .gift-label { margin-bottom: 16rpx; font-weight: 500; font-size: 28rpx; color: #15171c; line-height: 40rpx; } .gift-section { display: inline-flex; align-items: center; max-width: 100%; height: 68rpx; padding: 0 20rpx; margin-bottom: 48rpx; box-sizing: border-box; background: #fff1d6; border-radius: 16rpx; .gift-desc { font-size: 28rpx; color: #15171c; font-weight: 500; line-height: 40rpx; white-space: nowrap; } } // 底部结算栏 .settlement-bar { width: 750rpx; margin-left: -32rpx; padding: 24rpx 32rpx 58rpx; box-sizing: border-box; background: #ffffff; .select-summary { display: flex; align-items: center; min-width: 0; font-size: 26rpx; color: #15171c; line-height: 36rpx; font-weight: 500; margin-bottom: 24rpx; padding: 0; .summary-label { color: #15171c; flex-shrink: 0; margin-right: 0; } .summary-content { color: #15171c; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .summary-save { color: #fd7247; flex-shrink: 0; margin-left: 6rpx; } } .submit-btn { width: 100%; height: 88rpx; line-height: 88rpx; background: linear-gradient(90deg, #544f4a 0%, #302f2b 100%); border-radius: 44rpx; font-size: 32rpx; color: #fbeac9; font-weight: 500; text-align: center; border: none; margin: 0; padding: 0; } }