注册账号
@@ -72,20 +58,21 @@
@@ -351,5 +320,98 @@ const validateForm = () => {
.input-container input.error {
border-color: #f56c6c;
}
+
+.captcha-container {
+ margin-bottom: 16px;
+ width: 100%;
+}
+
+.captcha-wrapper {
+ display: flex;
+ gap: 8px;
+ align-items: center;
+ width: 100%;
+ position: relative;
+}
+
+.captcha-wrapper input {
+ flex: 1;
+ height: 40px;
+ border: 1px solid #d0d7de;
+ border-radius: 6px;
+ padding: 0 12px;
+ font-size: 15px;
+ background: #f7fbfd;
+ transition: border 0.2s;
+ width: calc(100% - 120px); /* 减去验证码图片的宽度和间距 */
+}
+
+.captcha-wrapper input:focus {
+ border: 1.5px solid #409eff;
+ outline: none;
+ background: #fff;
+}
+
+.captcha-image {
+ width: 110px;
+ height: 40px;
+ border-radius: 6px;
+ cursor: pointer;
+ object-fit: cover;
+ border: 1px solid #d0d7de;
+ transition: all 0.3s;
+}
+
+.captcha-image:hover {
+ opacity: 0.8;
+}
+
+/* 移动端适配 */
+@media screen and (max-width: 480px) {
+ .login-form {
+ width: 90%;
+ max-width: 340px;
+ padding: 24px 20px 20px 20px;
+ }
+
+ .captcha-wrapper {
+ gap: 6px;
+ }
+
+ .captcha-wrapper input {
+ width: calc(100% - 100px);
+ }
+
+ .captcha-image {
+ width: 90px;
+ }
+
+ .input-container input,
+ .captcha-wrapper input {
+ height: 38px;
+ font-size: 14px;
+ }
+
+ .login-button button {
+ height: 40px;
+ font-size: 15px;
+ }
+}
+
+/* 超小屏幕适配 */
+@media screen and (max-width: 320px) {
+ .login-form {
+ padding: 20px 16px 16px 16px;
+ }
+
+ .captcha-wrapper input {
+ width: calc(100% - 90px);
+ padding: 0 8px;
+ }
+
+ .captcha-image {
+ width: 80px;
+ }
+}
diff --git a/src/components/register_module.vue b/src/components/register_module.vue
index 67e45cc..c51bfbf 100644
--- a/src/components/register_module.vue
+++ b/src/components/register_module.vue
@@ -20,40 +20,26 @@
@blur="validateConfirmPassword" :class="{ 'error': confirmPasswordError }" />
{{ confirmPasswordError }}