整合營銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          簡單小程序:登錄頁面(html)

          <!DOCTYPE html>
          <html lang="en">
          <head>
              <meta charset="UTF-8">
              <title>登錄頁面</title>
              /*總體的樣式*/
              <style>
              	/*盒子樣式*/
                  #box{
                      width: 350px; //寬
                      height: 450px; //高
                      border: 1px solid black; //邊框
                      border-radius: 10px; //邊框弧度
                      font-family: 黑體; //字體
                      letter-spacing:8px; //段間距
                      word-spacing: 10px; //字間距
                      line-height: 40px; //行高
                      font-size: 18px; //字大小
                      padding: 20px; //內(nèi)邊框
                  }
                  /*給'注冊'賦予樣式*/
                  .register{
                      width:280px ; //寬
                      height: 50px; //高
                      background-color: skyblue; //背景顏色
                      border-radius: 10px; //邊框弧度
          
                  }
                  /*將所有邊框都改變*/
                  *{
                      border-radius: 5px; 邊框弧度
                  }
                  /*使用class選擇器,賦予number寬高和邊框*/
                  .number{
                      width: 185px; //寬
                      height: 27px; //高
                      border-width: 1px; //邊框?qū)挾?
                  }
                  /*id選擇器*/
                  #two{
                      width: 55px; //寬
                      border-width: 1px; 邊框?qū)挾?        }
                  /*id選擇器*/
                  #phone{
                      width: 103px; //寬
                  }
                  /*class 選擇器*/
                  .boxs{
                      zoom: 75%; //清除浮動(dòng)
                      color: darkgray; //顏色
                  }
                  /*class選擇器*/
                  .box_a{
                      width: 50px; //寬
                      height: 50px; //高
                      background-image: url("../image/04.jpg "); //背景圖片
                      background-repeat: no-repeat; // 是否平鋪
                      background-size: 50px 25px; //背景尺寸
                      position: relative; //定位 相對定位
                      left: 310px; //定位后左移
                      bottom: 32px; //定位后下移
          
                  }
              </style>
          </head>
          <body>
          <div id="box">
              <h1>請注冊</h1>
          <p style="color: darkgray">已有帳號?<a href="https://im.qq.com/index">登錄</a></p>
          <form action="" method="post">
              <label for="name">用戶名</label>
              <input type="text" placeholder="請輸入用戶名" id="name" class="number"> <br>
              <label for="phone">手機(jī)號</label>
              <select name="" id="two" class="number">
              <optgroup>
                  <option style="" class="">+86</option>
              </optgroup>
              </select>
              <input type="text" placeholder="請輸入手機(jī)號" id="phone" class="number"> <br>
              <label for="mima">密?碼</label>
              <input type="password" placeholder="請輸入密碼" id="mima" class="number"> <br>
              <label for="mima">驗(yàn)證碼</label>
              <input type="password" placeholder="請輸入驗(yàn)證碼" id="is" class="number">
              <div class="box_a"></div>
              <div class="boxs">
                  <input type="radio" id="" class="accept">閱讀并接受協(xié)議<br>
              </div>
              <input type="submit" value="注冊" class="register" >
          
              </form>
          </div>
          
          
          </body>
          </html>
          在這里插入圖片描述

          介紹

          前面我們以及學(xué)會了Bootstrap框架和jQuery庫的基本使用方法,并且已經(jīng)把這兩個(gè)軟件包整合到了我們的TFPHP框架里面,接下來我們就可以使用它們?nèi)ブ谱饔脩艄芾硐到y(tǒng)的視圖模板了。

          用戶管理系統(tǒng)包含幾個(gè)主頁模板:

          1)用戶信息表

          2)用戶登錄頁面

          3)用戶注冊頁面

          4)個(gè)人資料修改

          5)登錄密碼重置

          6)用戶頭像上傳

          7)安全問題設(shè)置

          8)綁定郵箱設(shè)置

          9)忘記密碼頁面

          頁面比較多,我們一點(diǎn)點(diǎn)地設(shè)計(jì)。萬事開頭難,福哥今天下帶著大家完成先完成第一個(gè)表單頁面——用戶登錄頁面。

          用戶登錄頁面

          HTML

          登錄頁面的html部分包括一個(gè)頁頭和一個(gè)表單。

          <div class="wrapper">
          
              <div class="wrapper-header">
          
                  <!-- top bar begin -->
                  <div class="row topbar">
                      <div class="navbar navbar-text">
                          TFUMS v1.0 - TONGFU.net
                      </div>
                      <ul class="nav ml-md-auto">
                          <li class="nav-item"><a href="" class="nav-link">首頁</a></li>
                          <li class="nav-item"><a href="" class="nav-link">登錄</a></li>
                          <li class="nav-item"><a href="" class="nav-link">注冊</a></li>
                      </ul>
                  </div>
                  <!-- top bar end -->
          
              </div>
          
              <div class="wrapper-content">
          
                  <!-- login form begin -->
                  <div class="row login-form">
                      <div class="col-sm-12">
                          <h3 class="text-center">登錄</h3>
                          <p>請輸入正確的用戶名和密碼登錄用戶管理系統(tǒng)</p>
                          <form>
                              <div class="form-group">
                                  <label>用戶名</label>
                                  <input class="form-control" type="text" name="user" />
                              </div>
                              <div class="form-group">
                                  <label>密碼</label>
                                  <input class="form-control" type="password" name="pass" />
                              </div>
                              <div class="form-group overflow-hidden">
                                  <label class="float-left">
                                      <input type="checkbox" name="remember" value="Y" />
                                      保存登錄狀態(tài)
                                  </label>
                                  <a href="" class="float-right">忘記密碼</a>
                              </div>
                              <div class="form-group">
                                  <button class="btn btn-primary btn-sm form-control">登錄</button>
                              </div>
                          </form>
                      </div>
                  </div>
                  <!-- login form end -->
          
              </div>
          
              <div class="wrapper-footer">
          
              </div>
          
          </div>

          CSS

          用戶登錄頁面的CSS也是一個(gè)top bar和一個(gè)login form兩個(gè)部分。

          /**
           * top bar
           */
          .topbar{
              padding: 0 12px;
              margin-bottom: 12px;
              border-bottom: 1px solid #eee;
          }
          .topbar a{
              color: #333;
          }
          .topbar a:hover{
              color: #007bff;
          }
          
          /**
           * login form
           */
          .login-form{
              margin: 0 auto;
              width: 350px;
          }

          講解

          用戶登錄頁面

          首先,因?yàn)檫@是TFUMS系統(tǒng)的第一個(gè)模板,所以福哥先設(shè)計(jì)了頁頭的樣式。這個(gè)頁頭也會作為其他頁面的共用的頁頭。頁頭使用了bs的nav樣式組的樣式,簡化了自己寫CSS的工作。

          其次,表單部分使用了bs的form-group樣式作為每一行表單項(xiàng)的容器樣式,加上label和form-control簡簡單單就把一個(gè)漂亮的表單做出來了。

          還有福哥使用浮動(dòng)加清除實(shí)現(xiàn)了“保存登錄狀態(tài)”和“忘記密碼”的左右布局設(shè)計(jì)。

          最后,福哥給button增加了form-control樣式,使按鈕撐滿了整個(gè)容器,看起來比較工整了。

          總結(jié)

          今天我們完成了第一個(gè)表單頁面的模板,包括:HTML和CSS部分。有了這個(gè)基礎(chǔ)之后,再去制作其他表單頁面就容易多了。

          下一課我們將嘗試完成用戶注冊頁面、忘記密碼頁面、登錄密碼重置三個(gè)頁面的模板的制作。


          https://m.tongfu.net/home/35/blog/512901.html

          上效果圖:

          這是一個(gè)用ext3.2.0、js、html、css寫的一個(gè)還算好看的登錄界面。

          源代碼已上傳,下載地址請點(diǎn)擊:點(diǎn)擊打開鏈接

          其主要難點(diǎn)在如何使用extjs來畫一個(gè)界面,接下來我們就主要看一下其中的html和js吧:


          1. <!DOCTYPE html>
          2. <html lang="en">
          3. <head>
          4. <meta charset="UTF-8">
          5. <title>登錄界面</title>
          6. <link rel="stylesheet" type="text/css" href="ext3.2.0/resources/css/ext-all.css"/>
          7. <script type="text/javascript" src="ext3.2.0/adapter/ext/ext-base.js"></script>
          8. <script type="text/javascript" src="ext3.2.0/ext-all.js"></script>
          9. <script type="text/javascript" src="login.js"></script>
          10. <script type="text/javascript" src="loginToDo.js"></script>
          11. <link rel="stylesheet" type="text/css" href="login.css"/>
          12. </head>
          13. <body onkeydown="keyLogin(event);">
          14. </body>
          15. </html>

          這里面主要是導(dǎo)入頁面所需的js和css文件,當(dāng)然還有一個(gè)亮點(diǎn)就是body標(biāo)簽上的 onkeydown事件屬性,主要用于監(jiān)聽鍵盤實(shí)現(xiàn)我們js中的enter鍵提交功能。然后看一下extjs的語言風(fēng)格吧:


          1. Ext.onReady(function () {
          2. // 創(chuàng)建“登錄”面板
          3. var loginPanel = new Ext.Panel({
          4. // 設(shè)置面板的位置、寬高、樣式
          5. // 注意:此處我用的是相對布局relative(用于比較兩者的區(qū)別)
          6. id: 'loginPan',
          7. x: 363,
          8. y: 0,
          9. width: 396,
          10. height: 480,
          11. baseCls: '',
          12. defaults: {
          13. border: false
          14. },
          15. // 添加面板里面的物品
          16. items: [
          17. {
          18. // 第一件:logo圖
          19. id: 'loginLogo',
          20. height: 160,
          21. frame: false,
          22. bodyStyle: 'padding-top:10px',
          23. html: '<img src="images/fly_icon.png">'
          24. },
          25. {
          26. // 第二件:登錄的表單
          27. id: 'loginForm',
          28. defaultType: 'textfield',
          29. frame: false,
          30. defaults: {
          31. allowBlank: false
          32. },
          33. // 添加表單里面的物品:兩個(gè)輸入框
          34. items: [
          35. {
          36. id: "username",
          37. cls: "text_field",
          38. inoutType: 'text',
          39. width: 330,
          40. height: 28,
          41. blankText: '賬號不能為空',
          42. emptyText: '請輸入賬號',
          43. },
          44. {
          45. id: "password",
          46. cls: "text_field",
          47. inputType: 'password',
          48. width: 330,
          49. height: 28,
          50. emptyText: '請輸入密碼',
          51. blankText: '密碼不能為空',
          52. }]
          53. },
          54. {
          55. // 第三件:忘記密碼
          56. id: 'loginForget',
          57. html: "<a href='forget_pwd.html' target='_blank'>忘記密碼?</a>",
          58. },
          59. {
          60. // 第四件:登錄按鈕
          61. id: 'loginBtn',
          62. html: '<button id="btn_login">馬上登錄</button>',
          63. }
          64. ],
          65. });
          66. // 創(chuàng)建“注冊”面板
          67. var registerPanel = new Ext.Panel({
          68. // 設(shè)置面板的位置、寬高、樣式
          69. // 注意:此處我用的是絕對布局absolute(用于比較兩者的區(qū)別)
          70. id: 'registerPan',
          71. x: 0,
          72. y: 46,
          73. width: 800,
          74. height: 389,
          75. baseCls: '',
          76. layout: 'absolute',
          77. defaults: {
          78. border: false
          79. },
          80. // 添加面板里面的物品
          81. items: [
          82. {
          83. // 第一件:標(biāo)題
          84. id: 'registerTitleLabel',
          85. xtype: 'label',
          86. x: 47,
          87. y: 50,
          88. text: '還沒有賬號?',
          89. }, {
          90. // 第二件:正文
          91. id: 'registerContentLabel',
          92. xtype: 'label',
          93. x: 47,
          94. y: 135,
          95. text: '這是在注冊面板下面的正文內(nèi)容。里面的內(nèi)容可以隨便寫,比如當(dāng)前我們再一個(gè)窗口下面建立了兩個(gè)面板。而兩個(gè)面板的布局是分別用相對布局和絕對布局來實(shí)現(xiàn)的。相比較而言,我覺得用絕對布局會簡單粗暴,更直接,更方便。總之,你們自己體會一下吧。',
          96. }, {
          97. // 第三件:注冊按鈕
          98. id: 'registerBtn',
          99. xtype: 'button',
          100. x: 47,
          101. y: 280,
          102. html: '<button id="btn_register" >馬上注冊</button>'
          103. }],
          104. });
          105. // 創(chuàng)建窗口,從而讓內(nèi)容達(dá)到居中效果
          106. var centerWindow = new Ext.Window({
          107. baseCls: '',
          108. width: 800,
          109. height: 480,
          110. layout: 'absolute',
          111. closable: false,
          112. draggable: false,
          113. resizable: false,
          114. shadow: false,
          115. border: false,
          116. items: [registerPanel, loginPanel],
          117. });
          118. // 顯示窗口
          119. centerWindow.show();
          120. // 添加瀏覽器縮放自動(dòng)居中效果
          121. Ext.EventManager.onWindowResize(function () {
          122. centerWindow.center();
          123. });
          124. });

          這里要說的是:1、注意給屬性加標(biāo)記,能用id就用id,cls只是一個(gè)封裝過的class,和原生的class還是有區(qū)別的,比如給一個(gè)cls元素的height、padding定義樣式并不起作用。詳見:關(guān)于extjs中的cls ≠ class

          2、在ext中建議用絕對定位,由于它底層是一個(gè)個(gè)的table、div塊,如果用相對定位的話偶爾是有偏差的,所以還是絕對定位方便直接啊。

          3、window自帶居中效果,可以利用這一點(diǎn)讓元素在屏幕中居中。但是當(dāng)瀏覽器縮放的時(shí)候,這個(gè)window并不會動(dòng),每次都需要重新刷新一下才會改變一下。所以,在以上代碼的最后我們用給這個(gè)centerWindow添加了一個(gè)窗口自適應(yīng)居中的效果。


          主站蜘蛛池模板: 中文字幕无线码一区2020青青 | 亚洲AV噜噜一区二区三区 | 国产一区二区三区精品久久呦| 亚洲欧美一区二区三区日产| 波多野结衣av高清一区二区三区| 成人毛片一区二区| 91福利一区二区| 中文字幕无码不卡一区二区三区 | 亚洲福利视频一区二区| 一区二区网站在线观看| 高清在线一区二区| 中文字幕一区二区人妻性色| 亚洲综合一区二区| 波多野结衣一区二区三区高清av | 国产成人高清亚洲一区久久| 精品一区二区三区AV天堂| 中文字幕在线一区| 自拍日韩亚洲一区在线| 四虎永久在线精品免费一区二区 | 精品人妻AV一区二区三区 | 精品日本一区二区三区在线观看 | 国产精品久久久久久一区二区三区 | 国模一区二区三区| 99久久精品国产高清一区二区| 亚洲美女视频一区二区三区| 亚洲AV成人精品日韩一区18p| 久久无码AV一区二区三区| 人妻无码一区二区三区| 国产99久久精品一区二区| 亚洲国产一区视频| 精品无码国产一区二区三区51安| 插我一区二区在线观看| 日韩精品久久一区二区三区 | 国产免费一区二区视频| 精品国产日韩一区三区| 福利一区二区三区视频在线观看| 在线视频精品一区| 91秒拍国产福利一区| 国产在线精品一区二区不卡麻豆| 国产成人精品一区二三区熟女| 国产亚洲情侣一区二区无|