html,给我一个密码重置页面,有原密码,新密码,再次输入新密码,其中新密码和再次输入密码要一致,显示整体居于页面中间。请给出详细代码
时间: 2024-09-27 07:07:16 浏览: 28
HTML本身并不能直接处理复杂的表单验证,但我们可以创建一个基本的HTML结构,并利用CSS布局将其居中。这是一个简单的密码重置页面示例:
```html
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<style>
body {
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
background-color: #f5f5f5;
font-family: Arial, sans-serif;
}
form {
width: 300px;
padding: 20px;
background-color: white;
border-radius: 5px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
input[type="password"], input[type="text"] {
width: 100%;
padding: 10px;
margin-bottom: 10px;
border: 1px solid #ccc;
border-radius: 4px;
}
button {
width: 100%;
padding: 10px;
background-color: dodgerblue;
color: white;
border: none;
border-radius: 4px;
cursor: pointer;
}
@media screen and (max-width: 600px) {
form {
width: 90%;
}
}
</style>
</head>
<body>
<form id="resetPasswordForm">
<h2>密码重置</h2>
<label for="oldPassword">原始密码:</label>
<input type="password" id="oldPassword" required>
<label for="newPassword">新密码:</label>
<input type="password" id="newPassword" required>
<label for="confirmNewPassword">再次输入新密码:</label>
<input type="password" id="confirmNewPassword" required oninput="validatePasswords(this)">
<button type="submit">提交</button>
</form>
<script>
function validatePasswords(input) {
const confirmPassword = document.getElementById("confirmNewPassword");
if (input.value !== confirmPassword.value) {
confirmPassword.setCustomValidity("两次输入的密码不一致,请确认!");
} else {
confirmPassword.setCustomValidity("");
}
}
// 你可以在这里添加客户端验证,但真正的密码重置通常需要后端处理
</script>
</body>
</html>
```
在这个例子中,我们使用了Flexbox布局将整个内容居中对齐。表单中的新密码和再次输入密码使用`oninput`事件实时检查一致性。请注意,此代码仅用于展示前端界面结构,实际的密码重置过程应在服务器上完成,以保证安全性。
阅读全文