Html+Css+Javascript实现登录和注册页面

登录页面展示:

login.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>登录</title>
    <link rel="stylesheet" href="../css/login.css">
    <script>
        var options={
		 canvasId:'mycanvas',
		 width:200,
		 height:50,
		 txt:'' 
	}
	//生产验证码
	function produceCode(options){
		var code="";
		var random=new Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R',
			 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z');
		for(var i=0;i<4;i++){
			var index=Math.floor(Math.random()*62);
			code+=random[index];
		}
		options.txt=code;
	}
	//产生随机数字
	function randomNum(min,max){
		return Math.floor(Math.random()*(max-min)+min);
	}
	//产生随机颜色
	function randomColor(min,max){
		var r=randomNum(min,max);
		var g=randomNum(min,max);
		var b=randomNum(min,max);
		return "rgb("+r+","+g+","+b+")";
	}
	//生产验证码背景
	 function code(options){
	 	produceCode(options);
	 	 var canvas=document.getElementById(options.canvasId);
	 	  canvas.width=options.width||200;//画布的宽
     	  canvas.height=options.height||60;//画布的高
	 	 var ctx=canvas.getContext("2d");//创建一个canvas对象
	 	 ctx.textBaseline="middle";
	 	 ctx.fillStyle=randomColor(60,255);
	 	 ctx.fillRect(0,0,canvas.width,canvas.height);
	 	for(var i=0;i<options.txt.length;i++){
	 		var txt=options.txt.charAt(i);
	 		ctx.font='50px SimHei';
	 		ctx.fillStyle = randomColor(60, 180); /**随机生成字体颜色*/
	 		ctx.shadowOffsetY = randomNum(-3, 3);
	 		ctx.shadowBlur = randomNum(-3, 3);
	 		ctx.shadowColor = "rgba(0, 0, 0, 0.3)";
	 		 var x = options.width / (options.txt.length+1) * (i+1);
	 		 var y = options.height /2;
	 		var deg = randomNum(-30, 30);
	 		/**设置旋转角度和坐标原点*/
	 		ctx.translate(x, y);
	 		ctx.rotate(deg * Math.PI / 180);
	 		ctx.fillText(txt, 0, 0);
	 		/**恢复旋转角度和坐标原点*/
	 		ctx.rotate(-deg * Math.PI / 180);
	 		ctx.translate(-x, -y);
	 	}
	 }
	window.onload=function(){
		code(options)
	}

    </script>
</head>
<body>
<div class="login">
    <h1>登&nbsp;&nbsp;录</h1>
    <form method="post" action="">
        <input class="input_box"  type="text" name="username" placeholder="学号/工号/用户名"/><br>
        <input class="input_box1" type="password" name="password" placeholder="密码"/><br>
        <div class="yzm">
			<input class="input_box2" type="text" placeholder="验证码"/>
			<canvas id="mycanvas" onclick="code(options)"></canvas>
		</div>
        <input type="radio" name="object" id="student">学生
        <input type="radio" name="object" id="dmanager">宿管
        <input type="radio" name="object" id="manager">管理员<br><br>
		<a href="../html/register.html">没有账号?点击这里注册</a><br>
        <input type="submit" value="登录" class="button_box"/>
    </form>
</div>
<p class="footer">Copyright &nbsp; &nbsp;author © 【风潇潇】</p>
</body>
</html>

 login.css

body{
    margin:0;
    padding:0;
    box-sizing: border-box;
    background:url('../image/1670411573391.gif');
    background-size: cover;
}
.login{
    width:25rem;
    height:27rem;
    background-color:white;
    border-radius: 30px;
    margin:100px auto;
    text-align: center;
    padding-top:28px;
}
.input_box{
    width:210px;
    height:23px;
    margin-top: 20px;
}
.input_box1{
    width:210px;
    height:23px;
    margin-top: 20px;
}
.yzm{
    display: flex; 
    align-items: center;
    justify-content: center;
    margin-top: 20px;
    margin-bottom: 20px;
}
.yzm .input_box2{
    width:135px;
    height:23px;
   margin-right: 10px;
}
 #mycanvas{
    width:68px;
    height:27px;
}  
.button_box {
    width: 210px;
    height: 35px;
    margin-top: 35px;
    border-radius: 5px;
    background-color: #9deaab;
    color: black;
}
.footer{
position:fixed;
bottom:10px;
right:650px;
}

 login.html的动态背景为:

 注:login.html页面中的验证码功能的实现参考博客:(在这个基础上做了改动)(15条消息) 【前端】简单验证码的制作_进阶er的博客-CSDN博客_前端简单验证码icon-default.png?t=M85Bhttps://blog.csdn.net/qq_43466457/article/details/100559974

注册页面展示

 register.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>注册</title>
    <link rel="stylesheet" href="../css/register.css">
</head>
<body>
    <div class="box">
        <h1>注&nbsp;&nbsp;册</h1>
      <form>
        <p>请选择注册角色</p>
        <input type="radio" name="object" id="student">学生
        <input type="radio" name="object" id="dmanager">宿管
        <input type="radio" name="object" id="manager">管理员
         <p>用户名</p>
         <input  class="input_box" type="text" placeholder="请输入用户名"/><br>
         <p>密码</p>
         <input  class="input_box" type="password" placeholder="请输入密码(六位数字和字母的组合)"/><br>
         <p>确认密码</p>
         <input class="input_box" type="password" placeholder="请再次输入密码"/><br>
         <p>备注</p>
         <textarea  cols="65" rows="5" placeholder="备注(可以不填)"></textarea><br>
         <input class="cm" type="checkbox"/>Check me out<br>
         <input class="zc" type="submit" value="注册"/>
      </form>
    </div>
</body>
</html>

register.css

body{
    margin:0;
    padding:0;
    box-sizing: border-box;
    background: url("../image/1.jpg");
    background-size: cover;
}
.box{
  width:500px;
  margin:30px auto;
}
.box h1{
    text-align: center;
}
.box p{
    font-size: 20px;
    font-weight: 500;
}
.input_box{
    width:30rem;
    height: 1.7rem;
}
.cm{
    margin-top:30px;
}
.zc{
    width:98px;
    height:40px;
    background-color: aquamarine;
    border:2px solid black;
    margin-top:30px;
}

register.html页面背景图:

 图片源于:【动态桌面壁纸】高清动态图片_彼岸桌面壁纸 (netbian.com)icon-default.png?t=M85Bhttp://www.netbian.com/dongtai/index.htm

环境用的是vscode运行的 >_< 安装了px to rem & rpx & vw (cssrem)插件

  • 16
    点赞
  • 123
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 可以使用 HTMLCSSJavaScript 来创建登录页面HTML 用于创建页面结构,CSS 用于样式设计,JavaScript 用于交互和验证。可以使用表单元素来收集用户输入的用户名和密码,然后使用 JavaScript 进行验证和提交。同时,还可以使用 CSS 来美化页面,使其更加吸引人。 ### 回答2: 登录页面是一个用于用户进行身份验证的页面。在HTMLCSS中,可以通过创建表单来收集用户的登录信息,然后使用JavaScript来验证这些输入是否正确。 首先,可以使用HTML来创建一个包含登录表单的页面。表单通常包含用户名和密码两个输入字段,还可以包含一个“登录”按钮来提交表单。可以使用`<form>`标签来定义表单,并在其内部使用`<input>`标签来定义输入字段,例如: ```html <form> <input type="text" name="username" placeholder="用户名"> <input type="password" name="password" placeholder="密码"> <button type="submit">登录</button> </form> ``` 接下来,在CSS中可以使用样式来美化登录页面。可以设置表单的样式、输入字段的样式以及按钮的样式,以实现一个吸引人且易于使用的界面。例如,可以使用CSS的`border`、`background-color`和`font-size`属性来设置表单元素的样式。 最后,在JavaScript中可以添加一些验证逻辑来检查用户输入的合法性。可以使用JavaScript的事件监听器来监听表单的提交事件,并在事件触发时执行相应的验证逻辑。例如,可以检查用户名和密码字段是否为空,或者与已存储的用户信息进行匹配。 ```javascript document.querySelector('form').addEventListener('submit', function(event) { event.preventDefault(); // 阻止表单的默认提交行为 var username = document.querySelector('input[name="username"]').value; var password = document.querySelector('input[name="password"]').value; if (username === 'admin' && password === 'password') { alert('登录成功!'); // 进行跳转或其他操作 } else { alert('用户名或密码错误!'); } }); ``` 通过结合HTMLCSSJavaScript,可以创建一个功能完善且外观美观的登录页面,用于用户进行身份验证。这样的页面在各类网站和应用程序中广泛使用。 ### 回答3: HTMLCSSJavaScript主要用于创建网页及其相关元素。登录页面通常是网站或应用程序的入口,用于用户身份验证和访问控制。下面是一个示例登录页面的代码: ```html <!DOCTYPE html> <html> <head> <title>登录页面</title> <style> /* CSS样式 */ body { font-family: Arial, sans-serif; background-color: #f1f1f1; } h1 { text-align: center; } .login-container { width: 300px; margin: 0 auto; background-color: #fff; padding: 20px; border-radius: 5px; box-shadow: 0 0 10px rgba(0, 0, 0, 0.2); } .form-group { margin-bottom: 10px; } .form-group label { display: block; font-weight: bold; } .form-group input { width: 100%; padding: 5px; border: 1px solid #ccc; border-radius: 3px; } .form-group input[type="submit"] { background-color: #4CAF50; color: #fff; cursor: pointer; } .form-group input[type="submit"]:hover { background-color: #45a049; } </style> </head> <body> <h1>用户登录</h1> <div class="login-container"> <form id="login-form"> <div class="form-group"> <label for="username">用户名:</label> <input type="text" id="username" name="username" required> </div> <div class="form-group"> <label for="password">密码:</label> <input type="password" id="password" name="password" required> </div> <div class="form-group"> <input type="submit" value="登录"> </div> </form> </div> <script> // JavaScript代码 document.getElementById("login-form").addEventListener("submit", function(event) { event.preventDefault(); // 阻止表单默认提交行为 var username = document.getElementById("username").value; var password = document.getElementById("password").value; // 添加逻辑以进行用户身份验证 alert("登录成功!欢迎," + username); }); </script> </body> </html> ``` 上述代码中,HTML部分定义了登录页面的结构和元素。CSS为页面添加了样式,使其具有更好的外观和用户体验。JavaScript部分为表单的提交事件添加了一个侦听器,用户在登录表单上点击"登录"按钮时,它会拦截表单的默认提交行为,并获取用户输入的用户名和密码进行身份验证。接下来的处理逻辑可以根据实际需求进行自定义,这里使用了一个简单的弹窗作为成功登录的提示。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值