From eba79a78e866b591e96df0d741cd4ca2f7518f85 Mon Sep 17 00:00:00 2001 From: "pikachu1995@126.com" Date: Tue, 20 Oct 2026 13:55:09 +0800 Subject: [PATCH] =?UTF-8?q?style(uniapp):=20=E6=BB=91=E5=9D=97=E9=AA=8C?= =?UTF-8?q?=E8=AF=81=E7=BB=84=E4=BB=B6=E6=94=B9=E7=89=88=E4=B8=BA=E6=9E=81?= =?UTF-8?q?=E7=AE=80=E6=97=A0=E6=A1=86=E9=A3=8E=EF=BC=88=E6=96=B9=E6=A1=88?= =?UTF-8?q?B=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/verification/verification.vue | 179 ++++++++++++++++------- 1 file changed, 124 insertions(+), 55 deletions(-) diff --git a/components/verification/verification.vue b/components/verification/verification.vue index f8de759..ee1f62b 100644 --- a/components/verification/verification.vue +++ b/components/verification/verification.vue @@ -6,10 +6,7 @@ :style="{ top: state.scHight }" style="width: 750rpx; position: fixed; z-index: 100; left: 0" > - + - - - - - - - {{ + + + {{ state.hasImg }} - - - + + + + + + + - 刷新拼图 - Lili-FRAMEWORK + + + + + + + + + + + Lili-FRAMEWORK 安全验证 @@ -133,6 +116,13 @@ const phone = uni.getSystemInfoSync() const l = phone.screenWidth / 750 const mainColor = computed(() => store.getters.mainColor) +const fillWidth = computed(() => `calc(${state.moveX}px + 42rpx)`) +const handleStyle = computed(() => { + const glow = /^#[0-9a-fA-F]{6}$/.test(mainColor.value) + ? mainColor.value + '59' + : 'rgba(0, 0, 0, 0.18)' + return { background: mainColor.value, boxShadow: `0 6rpx 20rpx ${glow}` } +}) const state = reactive({ flage: false, key: '', // key @@ -284,6 +274,85 @@ defineExpose({ @import "./animation.css"; @import "./icon.css"; // @import './main.css'; + +.v-track { + position: relative; + width: 100%; + height: 84rpx; + margin-top: 36rpx; + background-color: #f7f7f8; + border-radius: 42rpx; + display: flex; + align-items: center; + justify-content: center; +} + +.v-fill { + position: absolute; + left: 0; + top: 0; + bottom: 0; + background-color: #ffe9e5; + border-radius: 42rpx; +} + +.v-track-text { + font-size: 26rpx; + letter-spacing: 2rpx; +} + +.v-area { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + background-color: transparent; +} + +.v-handle { + width: 84rpx; + height: 84rpx; + border-radius: 50%; + display: flex; + align-items: center; + justify-content: center; +} + +.v-foot { + display: flex; + flex-direction: row; + justify-content: flex-end; + width: 100%; + margin-top: 28rpx; +} + +.v-icon-btn { + width: 68rpx; + height: 68rpx; + border-radius: 50%; + background-color: #f4f4f5; + display: flex; + align-items: center; + justify-content: center; + margin-left: 24rpx; +} + +.v-mark { + display: flex; + flex-direction: row; + align-items: center; + justify-content: center; + margin-top: 32rpx; + font-size: 22rpx; + color: #d2d2d2; +} + +.v-mark-icon { + margin-right: 8rpx; + font-size: 22rpx; + color: #d9d9d9; +} .dh-wt { animation: at 1.1s ease; animation-iteration-count: infinite;