博客列表 >HTML 基础之表单元素

HTML 基础之表单元素

萨龙龙
萨龙龙原创
2020年04月04日 13:03:48661浏览

表格元素

1、<form> 元素的定义和用法

  • <form> 标签用于为用户输入创建 HTML 表单,用于向服务器传输数据,通过 PHP 或其它后端语言 与 MySQL 数据库进行交互。

  • 表单能够包含 input,textarea,select 等元素, input 可设置成文本字段(text,number,url,email,tel,password 等)、复选框、单选框、提交按钮等等。

  • 表单还可以包含 menus、fieldset、legend 和 label 元素。

  • 表单上的标签使用 label 元素,可与 input,textarea,select 等元素进行绑定。

2、<table> 元素实例

  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  6. <meta
  7. name="description"
  8. content="PHP 系统学习之路之 HTML 基础,form 标签表单元素的使用实例"
  9. />
  10. <meta name="keywords" content="PHP 学习, HTML 基础, form 标签, 表单元素" />
  11. <link rel="canonical" href="http://127.0.0.1:5500/0403/form.html" />
  12. <link rel="shortcut icon" href="/images/favicon.jpg" />
  13. <title>表单元素|PHP 系统学习之路之 HTML 基础</title>
  14. <style>
  15. /******************************************
  16. * 全局样式
  17. ******************************************/
  18. html,
  19. body,
  20. main,
  21. h2,
  22. button {
  23. margin: 0;
  24. padding: 0;
  25. border: 0;
  26. background: transparent;
  27. }
  28. h2 {
  29. line-height: 24px;
  30. color: #333;
  31. text-rendering: optimizelegibility;
  32. font-weight: normal;
  33. font-size: 32px;
  34. line-height: 36px;
  35. }
  36. input[type="email"],
  37. input[type="number"],
  38. input[type="password"],
  39. input[type="tel"],
  40. input[type="text"],
  41. input[type="url"],
  42. select,
  43. textarea {
  44. background-color: #fbfbfb;
  45. border: 1px #f2f2f2 solid;
  46. padding: 10px;
  47. min-width: 60px;
  48. font-size: 12px;
  49. width: calc(100% - 80px);
  50. }
  51. input:focus,
  52. textarea:focus {
  53. background-color: #fff;
  54. }
  55. input[type="checkbox"],
  56. input[type="radio"],
  57. input[type="reset"],
  58. input[type="submit"],
  59. label,
  60. select {
  61. cursor: pointer;
  62. }
  63. select,
  64. input[type="email"],
  65. input[type="number"],
  66. input[type="password"],
  67. input[type="reset"],
  68. input[type="submit"],
  69. input[type="tel"],
  70. input[type="text"],
  71. input[type="url"],
  72. textarea {
  73. -webkit-appearance: none;
  74. -moz-appearance: none;
  75. appearance: none;
  76. outline: none;
  77. border-radius: 0;
  78. }
  79. input[type="submit"],
  80. input[type="reset"],
  81. button {
  82. border: 0;
  83. }
  84. select {
  85. background-image: url(svg/select.svg);
  86. background-repeat: no-repeat;
  87. background-position: center right;
  88. background-size: 24px 24px;
  89. cursor: pointer;
  90. outline: none;
  91. }
  92. body * {
  93. -webkit-box-sizing: border-box;
  94. -moz-box-sizing: border-box;
  95. box-sizing: border-box;
  96. }
  97. input,
  98. textarea {
  99. -moz-transition: ease-in-out 0.5s;
  100. -webkit-transition: ease-in-out 0.5s;
  101. -o-transition: ease-in-out 0.5s;
  102. -ms-transition: ease-in-out 0.5s;
  103. transition: ease-in-out 0.5s;
  104. }
  105. body {
  106. font-size: 12px;
  107. overflow-x: hidden;
  108. overflow-y: scroll;
  109. line-height: 24px;
  110. color: #666;
  111. font-family: "PingFang SC", "Microsoft Yahei", "Helvetica Neue",
  112. Helvetica, STHeiTi, sans-serif;
  113. }
  114. /******************************************
  115. * 全局样式 end
  116. ******************************************/
  117. /******************************************
  118. * 主体内容
  119. ******************************************/
  120. main {
  121. display: flex;
  122. align-items: center;
  123. justify-content: center;
  124. align-self: center;
  125. min-height: 600px;
  126. padding: 100px;
  127. }
  128. /******************************************
  129. * 主体内容 end
  130. ******************************************/
  131. /******************************************
  132. * 表单元素
  133. ******************************************/
  134. .resiger-form {
  135. background-color: #fff;
  136. padding: 30px;
  137. width: 560px;
  138. border: 1px solid #eee;
  139. box-shadow: 0 0 20px rgba(0, 0, 0, 0.11);
  140. }
  141. /******************* 标题 *******************/
  142. .resiger-form h2 {
  143. display: block;
  144. text-align: center;
  145. margin-bottom: 30px;
  146. }
  147. /******************* 标题 end *******************/
  148. /******************* 表单 *******************/
  149. /* 模块 */
  150. .resiger-form section {
  151. margin-bottom: 12px;
  152. font-size: 0;
  153. }
  154. /* 标签 */
  155. .resiger-form section label {
  156. font-size: 12px;
  157. }
  158. .resiger-form section > label {
  159. display: inline-block;
  160. padding: 0 0 4px 2px;
  161. width: 80px;
  162. }
  163. /* textarea 元素 label 对齐 */
  164. .resiger-form .intro label {
  165. vertical-align: top;
  166. }
  167. /* 必填 */
  168. .resiger-form label b {
  169. color: #ff0000;
  170. }
  171. /***** 单选和多选 *****/
  172. .resiger-form .box {
  173. display: inline-block;
  174. vertical-align: middle;
  175. }
  176. /* label 样式 */
  177. .resiger-form .box label {
  178. color: #999999;
  179. }
  180. /***** 单选和多选end *****/
  181. /***** 按钮 *****/
  182. .resiger-form .buttons {
  183. margin-left: 80px;
  184. }
  185. .resiger-form .buttons .button {
  186. text-align: center;
  187. display: inline-block;
  188. position: relative;
  189. padding: 8px 20px;
  190. color: #ffffff;
  191. }
  192. /* 重置按钮 */
  193. .resiger-form .buttons input[type="reset"] {
  194. margin-right: 12px;
  195. background-color: #000000;
  196. }
  197. /* 提交按钮 */
  198. .resiger-form .buttons input[type="submit"] {
  199. background-color: #073997;
  200. }
  201. /***** 按钮 *****/
  202. /******************* 表单 end *******************/
  203. /******************************************
  204. * 表单元素 end
  205. ******************************************/
  206. </style>
  207. </head>
  208. <body>
  209. <!-- 主体内容 -->
  210. <main>
  211. <div class="resiger-form">
  212. <h2>注册</h2>
  213. <!-- 表单元素 -->
  214. <form action="" method="get">
  215. <!-- 用户名 -->
  216. <section>
  217. <label for="username">用户名<b>*</b></label>
  218. <input
  219. type="text"
  220. name="username"
  221. id="username"
  222. placeholder="请输入用户名!"
  223. minlength="6"
  224. maxlength="20"
  225. autofocus
  226. required
  227. />
  228. </section>
  229. <!-- 密码 -->
  230. <section>
  231. <label for="password1">密码<b>*</b></label>
  232. <input
  233. type="password"
  234. name="password1"
  235. id="password1"
  236. placeholder="请输入8位及以上的密码!"
  237. min="8"
  238. max="20"
  239. required
  240. />
  241. </section>
  242. <!-- 重复密码 -->
  243. <section>
  244. <label for="password2">重复密码<b>*</b></label>
  245. <input
  246. type="password"
  247. name="password2"
  248. id="password2"
  249. placeholder="重复密码"
  250. min="8"
  251. max="20"
  252. required
  253. />
  254. </section>
  255. <!-- 邮箱 -->
  256. <section>
  257. <label for="email">邮箱<b>*</b></label>
  258. <input
  259. type="email"
  260. name="email"
  261. id="email"
  262. placeholder="请输入邮箱!"
  263. required
  264. />
  265. </section>
  266. <!-- 手机 -->
  267. <section>
  268. <label for="phone">手机:</label>
  269. <input
  270. type="tel"
  271. name="phone"
  272. id="phone"
  273. placeholder="请输入手机号码!"
  274. />
  275. </section>
  276. <!-- 网站 -->
  277. <section>
  278. <label for="website">网站:</label>
  279. <input
  280. type="url"
  281. name="website"
  282. id="website"
  283. placeholder="请输入网站!"
  284. />
  285. </section>
  286. <!-- 年龄 -->
  287. <section>
  288. <label for="age">年龄:</label>
  289. <input
  290. type="number"
  291. name="age"
  292. id="age"
  293. placeholder="请输入年龄!"
  294. />
  295. </section>
  296. <!-- 简介 -->
  297. <section class="intro">
  298. <label for="intro">简介:</label>
  299. <textarea
  300. name="intro"
  301. id="intro"
  302. cols="30"
  303. rows="10"
  304. placeholder="请输入个人简介!"
  305. ></textarea>
  306. </section>
  307. <!-- 性别 -->
  308. <section>
  309. <label for="secret">性别:</label>
  310. <div class="box">
  311. <input type="radio" name="gender" id="male" value="male" />
  312. <label for="male"></label>
  313. <input type="radio" name="gender" id="female" value="female" />
  314. <label for="female"></label>
  315. <input
  316. type="radio"
  317. name="gender"
  318. id="secret"
  319. value="secret"
  320. checked
  321. />
  322. <label for="secret">保密</label>
  323. </div>
  324. </section>
  325. <!-- 爱好 -->
  326. <section>
  327. <label for="tibet">爱好:</label>
  328. <div class="box">
  329. <input
  330. type="checkbox"
  331. name="hobby[]"
  332. id="travel"
  333. value="travel"
  334. />
  335. <label for="travel">旅行</label>
  336. <input
  337. type="checkbox"
  338. name="hobby[]"
  339. id="photography"
  340. value="photography"
  341. />
  342. <label for="photography">摄影</label>
  343. <input
  344. type="checkbox"
  345. name="hobby[]"
  346. id="tibet"
  347. value="tibet"
  348. checked
  349. />
  350. <label for="tibet">西藏</label>
  351. </div>
  352. </section>
  353. <!-- 地区 -->
  354. <section>
  355. <label for="area"> 地区:</label>
  356. <select name="area" id="area" required>
  357. <option value="">请选择地区…</option>
  358. <option value="0">北京-海淀</option>
  359. <option value="1">上海-浦东</option>
  360. <option value="2" selected>云南-大理</option>
  361. </select>
  362. </section>
  363. <!-- 按钮 -->
  364. <section class="buttons">
  365. <input type="reset" class="button" value="重置" />
  366. <input type="submit" class="button" value="提交" />
  367. </section>
  368. </form>
  369. <!-- 表单元素 end -->
  370. </div>
  371. </main>
  372. <!-- 主体内容 end -->
  373. </body>
  374. </html>

3、实例预览

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议