1. 程式人生 > >bootstrop登陸頁面

bootstrop登陸頁面

bootstra 多個 htm asc check 技術分享 nbsp blob equal

bootstrap做登入註冊頁面,使用validate做表單驗證

技術:bootstrap,font-awesome,jquery-validate;

特點:響應式布局,表單驗證(用戶兩次密碼是否相同,必填信息是否填寫)背景圖片自適應屏幕大小;

宗旨:從實戰中學知識。

個人主頁:http://www.itit123.cn/ 更多幹貨等你來拿 (微信小程序入門教程:入門教程系列 ,提供免費的api接口,無需考慮服務端代碼問題)。

驗證碼實現功能 ITDragon博客

效果圖:

技術分享圖片

技術分享圖片

html代碼:

第三方資源的導入是用cdn引入;當然也可以自己去下載在本地導入。

[html] view plain copy
print?
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>bootstrap案例</title>
  6. <!--用百度的靜態資源庫的cdn安裝bootstrap環境-->
  7. <!-- Bootstrap 核心 CSS 文件 -->
  8. <link href="http://apps.bdimg.com/libs/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet">
  9. <!--font-awesome 核心我CSS 文件-->
  10. <link href="//cdn.bootcss.com/font-awesome/4.3.0/css/font-awesome.min.css" rel="stylesheet">
  11. <!-- 在bootstrap.min.js 之前引入 -->
  12. <script src="http://apps.bdimg.com/libs/jquery/2.0.0/jquery.min.js"></script>
  13. <!-- Bootstrap 核心 JavaScript 文件 -->
  14. <script src="http://apps.bdimg.com/libs/bootstrap/3.3.0/js/bootstrap.min.js"></script>
  15. <!--jquery.validate-->
  16. <script type="text/javascript" src="js/jquery.validate.min.js" ></script>
  17. <script type="text/javascript" src="js/message.js" ></script>
  18. <style type="text/css">
  19. body{background: url(img/4.jpg) no-repeat;background-size:cover;font-size: 16px;}
  20. .form{background: rgba(255,255,255,0.2);width:400px;margin:100px auto;}
  21. #login_form{display: block;}
  22. #register_form{display: none;}
  23. .fa{display: inline-block;top: 27px;left: 6px;position: relative;color: #ccc;}
  24. input[type="text"],input[type="password"]{padding-left:26px;}
  25. .checkbox{padding-left:21px;}
  26. </style>
  27. </head>
  28. <body>
  29. <!--
  30. 基礎知識:
  31. 網格系統:通過行和列布局
  32. 行必須放在container內
  33. 手機用col-xs-*
  34. 平板用col-sm-*
  35. 筆記本或普通臺式電腦用col-md-*
  36. 大型設備臺式電腦用col-lg-*
  37. 為了兼容多個設備,可以用多個col-*-*來控制;
  38. -->
  39. <div class="container">
  40. <div class="form row">
  41. <form class="form-horizontal col-sm-offset-3 col-md-offset-3" id="login_form">
  42. <h3 class="form-title">Login to your account</h3>
  43. <div class="col-sm-9 col-md-9">
  44. <div class="form-group">
  45. <i class="fa fa-user fa-lg"></i>
  46. <input class="form-control required" type="text" placeholder="Username" name="username" autofocus="autofocus" maxlength="20"/>
  47. </div>
  48. <div class="form-group">
  49. <i class="fa fa-lock fa-lg"></i>
  50. <input class="form-control required" type="password" placeholder="Password" name="password" maxlength="8"/>
  51. </div>
  52. <div class="form-group">
  53. <label class="checkbox">
  54. <input type="checkbox" name="remember" value="1"/> Remember me
  55. </label>
  56. <hr />
  57. <a href="javascript:;" id="register_btn" class="">Create an account</a>
  58. </div>
  59. <div class="form-group">
  60. <input type="submit" class="btn btn-success pull-right" value="Login "/>
  61. </div>
  62. </div>
  63. </form>
  64. </div>
  65. <div class="form row">
  66. <form class="form-horizontal col-sm-offset-3 col-md-offset-3" id="register_form">
  67. <h3 class="form-title">Login to your account</h3>
  68. <div class="col-sm-9 col-md-9">
  69. <div class="form-group">
  70. <i class="fa fa-user fa-lg"></i>
  71. <input class="form-control required" type="text" placeholder="Username" name="username" autofocus="autofocus"/>
  72. </div>
  73. <div class="form-group">
  74. <i class="fa fa-lock fa-lg"></i>
  75. <input class="form-control required" type="password" placeholder="Password" id="register_password" name="password"/>
  76. </div>
  77. <div class="form-group">
  78. <i class="fa fa-check fa-lg"></i>
  79. <input class="form-control required" type="password" placeholder="Re-type Your Password" name="rpassword"/>
  80. </div>
  81. <div class="form-group">
  82. <i class="fa fa-envelope fa-lg"></i>
  83. <input class="form-control eamil" type="text" placeholder="Email" name="email"/>
  84. </div>
  85. <div class="form-group">
  86. <input type="submit" class="btn btn-success pull-right" value="Sign Up "/>
  87. <input type="submit" class="btn btn-info pull-left" id="back_btn" value="Back"/>
  88. </div>
  89. </div>
  90. </form>
  91. </div>
  92. </div>
  93. <script type="text/javascript" src="js/main.js" ></script>
  94. </body>
  95. </html>
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title>bootstrap案例</title>
		<!--用百度的靜態資源庫的cdn安裝bootstrap環境-->
		<!-- Bootstrap 核心 CSS 文件 -->
		<link href="http://apps.bdimg.com/libs/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet">
		<!--font-awesome 核心我CSS 文件-->
		<link href="//cdn.bootcss.com/font-awesome/4.3.0/css/font-awesome.min.css" rel="stylesheet">
		<!-- 在bootstrap.min.js 之前引入 -->
		<script src="http://apps.bdimg.com/libs/jquery/2.0.0/jquery.min.js"></script>
		<!-- Bootstrap 核心 JavaScript 文件 -->
		<script src="http://apps.bdimg.com/libs/bootstrap/3.3.0/js/bootstrap.min.js"></script>
		<!--jquery.validate-->
		<script type="text/javascript" src="js/jquery.validate.min.js" ></script>
		<script type="text/javascript" src="js/message.js" ></script>
		<style type="text/css">
			body{background: url(img/4.jpg) no-repeat;background-size:cover;font-size: 16px;}
			.form{background: rgba(255,255,255,0.2);width:400px;margin:100px auto;}
			#login_form{display: block;}
			#register_form{display: none;}
			.fa{display: inline-block;top: 27px;left: 6px;position: relative;color: #ccc;}
			input[type="text"],input[type="password"]{padding-left:26px;}
			.checkbox{padding-left:21px;}
		</style>
	</head>
	<body>
		<!--
			基礎知識:
			網格系統:通過行和列布局
			行必須放在container內
			手機用col-xs-*
			平板用col-sm-*
			筆記本或普通臺式電腦用col-md-*
			大型設備臺式電腦用col-lg-*
			為了兼容多個設備,可以用多個col-*-*來控制;
		-->
	<div class="container">
		<div class="form row">
			<form class="form-horizontal col-sm-offset-3 col-md-offset-3" id="login_form">
				<h3 class="form-title">Login to your account</h3>
				<div class="col-sm-9 col-md-9">
					<div class="form-group">
						<i class="fa fa-user fa-lg"></i>
						<input class="form-control required" type="text" placeholder="Username" name="username" autofocus="autofocus" maxlength="20"/>
					</div>
					<div class="form-group">
							<i class="fa fa-lock fa-lg"></i>
							<input class="form-control required" type="password" placeholder="Password" name="password" maxlength="8"/>
					</div>
					<div class="form-group">
						<label class="checkbox">
							<input type="checkbox" name="remember" value="1"/> Remember me
						</label>
						<hr />
						<a href="javascript:;" id="register_btn" class="">Create an account</a>
					</div>
					<div class="form-group">
						<input type="submit" class="btn btn-success pull-right" value="Login "/>   
					</div>
				</div>
			</form>
		</div>

		<div class="form row">
			<form class="form-horizontal col-sm-offset-3 col-md-offset-3" id="register_form">
				<h3 class="form-title">Login to your account</h3>
				<div class="col-sm-9 col-md-9">
					<div class="form-group">
						<i class="fa fa-user fa-lg"></i>
						<input class="form-control required" type="text" placeholder="Username" name="username" autofocus="autofocus"/>
					</div>
					<div class="form-group">
							<i class="fa fa-lock fa-lg"></i>
							<input class="form-control required" type="password" placeholder="Password" id="register_password" name="password"/>
					</div>
					<div class="form-group">
							<i class="fa fa-check fa-lg"></i>
							<input class="form-control required" type="password" placeholder="Re-type Your Password" name="rpassword"/>
					</div>
					<div class="form-group">
							<i class="fa fa-envelope fa-lg"></i>
							<input class="form-control eamil" type="text" placeholder="Email" name="email"/>
					</div>
					<div class="form-group">
						<input type="submit" class="btn btn-success pull-right" value="Sign Up "/>
						<input type="submit" class="btn btn-info pull-left" id="back_btn" value="Back"/>
					</div>
				</div>
			</form>
		</div>
		</div>
	<script type="text/javascript" src="js/main.js" ></script>
	</body>
</html>

js代碼:

可能有不合理的方法,畢竟筆者能力有限,如有更好的方法可以留言,我會及時修改。

[javascript] view plain copy print?
    1. $().ready(function() {
    2. $("#login_form").validate({
    3. rules: {
    4. username: "required",
    5. password: {
    6. required: true,
    7. minlength: 5
    8. },
    9. },
    10. messages: {
    11. username: "請輸入姓名",
    12. password: {
    13. required: "請輸入密碼",
    14. minlength: jQuery.format("密碼不能小於{0}個字 符")
    15. },
    16. }
    17. });
    18. $("#register_form").validate({
    19. rules: {
    20. username: "required",
    21. password: {
    22. required: true,
    23. minlength: 5
    24. },
    25. rpassword: {
    26. equalTo: "#register_password"
    27. },
    28. email: {
    29. required: true,
    30. email: true
    31. }
    32. },
    33. messages: {
    34. username: "請輸入姓名",
    35. password: {
    36. required: "請輸入密碼",
    37. minlength: jQuery.format("密碼不能小於{0}個字 符")
    38. },
      1. rpassword: {
      2. equalTo: "兩次密碼不一樣"
      3. },
      4. email: {
      5. required: "請輸入郵箱",
      6. email: "請輸入有效郵箱"
      7. }
      8. }
      9. });
      10. });
      11. $(function() {
      12. $("#register_btn").click(function() {
      13. $("#register_form").css("display", "block");
      14. $("#login_form").css("display", "none");
      15. });
      16. $("#back_btn").click(function() {
      17. $("#register_form").css("display", "none");
      18. $("#login_form").css("display", "block");
      19. });
      20. });
      21. $().ready(function() {
        	$("#login_form").validate({
        		rules: {
        			username: "required",
        			password: {
        				required: true,
        				minlength: 5
        			},
        		},
        		messages: {
        			username: "請輸入姓名",
        			password: {
        				required: "請輸入密碼",
        				minlength: jQuery.format("密碼不能小於{0}個字 符")
        			},
        		}
        	});
        	$("#register_form").validate({
        		rules: {
        			username: "required",
        			password: {
        				required: true,
        				minlength: 5
        			},
        			rpassword: {
        				equalTo: "#register_password"
        			},
        			email: {
        				required: true,
        				email: true
        			}
        		},
        		messages: {
        			username: "請輸入姓名",
        			password: {
        				required: "請輸入密碼",
        				minlength: jQuery.format("密碼不能小於{0}個字 符")
        			},
        			rpassword: {
        				equalTo: "兩次密碼不一樣"
        			},
        			email: {
        				required: "請輸入郵箱",
        				email: "請輸入有效郵箱"
        			}
        		}
        	});
        });
        $(function() {
        	$("#register_btn").click(function() {
        		$("#register_form").css("display", "block");
        		$("#login_form").css("display", "none");
        	});
        	$("#back_btn").click(function() {
        		$("#register_form").css("display", "none");
        		$("#login_form").css("display", "block");
        	});
        });

      資源下載地址:http://download.csdn.net/detail/qq_19558705/9358603

      現在我們開始談談所用到的知識點:

      ①bootstrap的布局:

      bootstrap用的是網格布局,使用col-*-*

      使用條件:要在.container和.row下才能使用,結構如下:

      [html] view plain copy print?
      1. <div class="container">
      2. <div class="row">
      3. <div class="col-*-*"></div>
      4. <div class="col-*-*"></div>
      5. </div>
      6. <div class="row">...</div>
      7. </div>
      <div class="container">
         <div class="row">
            <div class="col-*-*"></div>
            <div class="col-*-*"></div>      
         </div>
         <div class="row">...</div>
      </div>
      參考值:
      col-xs-*:小於768px,手機

      col-sm-*:大於768px,平板

      col-md-*:大於998px,普通電腦,筆記本之類

      col-lg-*:大於1200px,一般為大型臺式電腦

      可以同時使用,達到跨多個設備效果

      偏移:col-*-offset-*

      ②表單:

      這裏的表單和普通表單沒什麽太多區別,我就不多說了。

      ③font-awesome的使用:

      使用的是4.3.0版本,使用方法

      [html] view plain copy print?
      1. <i class="fa fa-check fa-lg"></i>
      <i class="fa fa-check fa-lg"></i>
      fa-lg表示大圖

      更多icon參考:http://fontawesome.dashgame.com/

      ④jquery-validate表單驗證:

      這是我要講的重點,

      第一步:首先到導入jquery-validate第三方資源,

      第二步:創建好form表單,初始化validate

      [javascript] view plain copy print?
      1. $("#login_form").validate({
      2. rules: {
      3. username: "required",
      4. password: {
      5. required: true,
      6. minlength: 5
      7. },
      8. },
      9. messages: {
      10. username: "請輸入姓名",
      11. password: {
      12. required: "請輸入密碼",
      13. minlength: jQuery.format("密碼不能小於{0}個字 符")
      14. },
      15. }
      16. });
      $("#login_form").validate({
      		rules: {
      			username: "required",
      			password: {
      				required: true,
      				minlength: 5
      			},
      		},
      		messages: {
      			username: "請輸入姓名",
      			password: {
      				required: "請輸入密碼",
      				minlength: jQuery.format("密碼不能小於{0}個字 符")
      			},
      		}
      	});
      註意這裏的login_form必須是form表單上的選擇器,筆者因為將其設置在div上,控制臺顯示settings沒有被定義的錯誤。這裏的username和password都是form表單中的name值;rules是規則,message是提示的信息

      required:true表示該字段為必填,

      minlength表示長度至少為5,maxlength是html5支持的,所以不用在這裏面設置

      equalTo表示與某某相同,後面接的是第一個值,"#id"或者是".class"

      message中對應的內容後面就是提示的文字信息。可以直接copy我的代碼,然後根據自己的需要修改。

      ⑤背景自適應屏幕大小:

      不知道前到處找文檔,知道後才發現好簡單,那就是background-size:cover;這樣可以做到背景圖片和瀏覽器大小一樣了。很簡單吧。

      bootstrap創建登錄註冊頁面github下載地址:

      https://github.com/ITDragonBlog/daydayup/blob/master/bootstrap

轉自:https://blog.csdn.net/qq_19558705/article/details/50318981

bootstrop登陸頁面