表单的作用就是用来将用户信息提交给服务器的,比如:百度的搜索框 注册 登录这些操作都需要填写表单。

使用form标签创建一个表单,form标签中必须指定一个action属性,该属性指向的是一个服务器的地址,当我们提交表单时将会提交到action属性对应的地址。

使用form创建的仅仅是一个空白的表单,我们还需要向form中添加不同的表单项。

在表单中可以使用fieldset来为表单项进行分组,可以将表单项中的同一组放到一个fieldset中。

在fieldset可以使用legend子标签,来指定组名。

使用input来创建一个文本框,它的type属性是text,如果希望表单项中的数据会提交到服务器中,还必须给表单项指定一个name属性,name表示提交内容的名字。

用户填写的信息会附在url地址的后边以查询字符串的形式发送给服务器。
url地址?查询字符串
格式:
属性名=属性值&属性名=属性值&属性名=属性值&属性名=属性值
在文本框中也可以指定value属性值,该值将会作为文本框的默认值显示。

单选按钮

  1. 使用input来创建一个单选按钮,它的type属性使用radio;
  2. 单选按钮通过name属性进行分组,name属性相同是一组按钮;
  3. 像这种需要用户选择但是不需要用户直接填写内容的表单项,还必须指定一个value属性,这样被选中的表单项的value属性值将会最终提交给服务器。

如果希望在单选按钮或者是多选框中指定默认选中的选项,则可以在希望选中的项中添加checked="checked"属性。

多选框

使用input创建一个多选框,它的type属性使用checkbox。

下拉列表

- 使用select来创建一个下拉列表
下拉列表的name属性需要指定给select,而value属性需要指定给option,可以通过在option中添加selected="selected"来将选项设置为默认选中。

当为select添加一个multiple="multiple",则下拉列表变为一个多选的下拉列表。

在select中可以使用optgroup对选项进行分组,同一个optgroup中的选项是一组,可以通过label属性来指定分组的名字。

使用textarea创建一个文本域。

提交按钮可以将表单中的信息提交给服务器,使用input创建一个提交按钮,它的type属性值是submit,在提交按钮中可以通过value属性来指定按钮上的文字。

<input type="reset" />可以创建一个重置按钮,点击重置按钮以后表单中内容将会恢复为默认值。

使用input type=button可以用来创建一个单纯的按钮,这个按钮没有任何功能,只能被点击。

除了使用input,也可以使用button标签来创建按钮,这种方式和使用input类似,只不过由于它是成对出现的标签,使用起来更加的灵活。

form.html:

<!DOCTYPE html>
<html> <head>
<meta charset="UTF-8">
<title>表单</title>
</head> <body>
<form action="target.html">
<fieldset>
<legend>用户信息</legend>
<label>用户名:</label>
<input type="text" name="username" />
</br>
</br>
<label>密码: </label>
<input type="password" name="password" />
</fieldset> <fieldset>
<legend>用户爱好</legend>
<label>男</label>
<input type="radio" name="gender" value="male"/>
<label>女</label>
<input type="radio" name="gender" value="female"/>
</fieldset>
<fieldset>
<legend>体育爱好</legend>
<input type="checkbox" name="hobby" value="mountain-climbing">登山</input>
<input type="checkbox" name="hobby" value="play-basketball">打篮球</input>
<input type="checkbox" name="hobby" value="play-billiards">打台球</input>
<input type="checkbox" name="hobby" value="swimming">游泳</input>
</fieldset>
<!--下拉列表-->
<select name="star">
<optgroup label="男明星">
<option value="ldh">刘德华</option>
<option value="yd">杨迪</option>
<option value="zbs">赵本山</option>
</optgroup>
<optgroup label="女明星">
<option value="lt">刘涛</option>
<option value="fbb">范冰冰</option>
<option value="lbb">李冰冰</option>
</optgroup>
</select>
<br />
<br />
自我介绍:
<textarea name="self-introduction"></textarea>
<br/>
<br/>
<input type="submit" value="提交" />
<input type="reset" value="重置" />
<input type="button" value="按钮" />
<br/>
<br/>
<button type="submit">提交</button>
<button type="reset" >重置</button>
<button type="button"/>按钮</button>
</body> </html>

target.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<h1>表单提交成功!!</h1>
</body>
</html>

看下界面:

点击提交进入target.html页面,点击重置页面内容恢复初始状态。

代码github地址:

https://github.com/soyoungboy/htmlCssStudy/blob/master/HelloHBuilder/form.html

https://github.com/soyoungboy/htmlCssStudy/blob/master/HelloHBuilder/target.html

可以自己跑下看看效果

前端学习 -- Html&Css -- 表单的更多相关文章

  1. AngularJS 1.2.x 学习笔记(表单校验篇)

    https://my.oschina.net/cokolin/blog/526911 摘要: 本文首发于 blog.csdn.net/vipshop_ebs/article/details/39472 ...

  2. Bootstrap学习笔记(二) 表单

    在Bootstrap学习笔记(一) 排版的基础上继续学习Bootstrap的表单,编辑器及head内代码不变. 3-1 基础表单 单中常见的元素主要包括:文本输入框.下拉选择框.单选按钮.复选按钮.文 ...

  3. CSS表单设计

    今天我们开始学习<十天学会web标准(div+css)>的css表单设计,包含以下内容和知识点: 改变文本框和文本域样式 用图片美化按钮 改变下拉列表样式 用label标签提升用户体验 一 ...

  4. js 节点 document html css 表单节点操作

    js 节点 document html css 表单节点操作 节点操作:访问.属性.创建 (1)节点的访问:firstChild.lastChild.childNodes.parentChild(父子 ...

  5. SpringMVC学习系列 之 表单标签

    http://www.cnblogs.com/liukemng/p/3754211.html 本篇我们来学习Spring MVC表单标签的使用,借助于Spring MVC提供的表单标签可以让我们在视图 ...

  6. Web标准:九、CSS表单设计

    Web标准:九.CSS表单设计 知识点: 1.改变文本框和文本域样式 2.用图片美化按钮 3.改变下拉列表样式 4.用label标签提升用户体验   1)改变文本框和文本域样式 文本框标签:<i ...

  7. 前端学习:CSS的学习总结(图解)

    前端学习:CSS的学习总结(图解) CSS代码笔记 CSS简介 css的引入方式和书写规范 CSS选择器 CSS属性 CSS盒子模型 CSS的定位

  8. 学习java前端 两种form表单提交方式

    第一种:原生方式 注意点:button标签的style为submit <form action="/trans/doTrans.do" method="post&q ...

  9. 一步一步学习Bootstrap系列--表单布局

    前言:Bootstrap 属于前端 ui 库,通过现成的ui组件能够迅速搭建前端页面,简直是我们后端开发的福音,通过几个项目的锻炼有必要总结些常用的知识,本篇把常用的Bootstrap表单布局进行归纳 ...

随机推荐

  1. MRT与MRTS工具官宣退休,推荐使用HEG

    今天错误的删除搞丢了之前下载的MRT与MRTS工具,浏览Modis官网下载时发现找不到了,后来在其官网上发现了这则通知,原来早已停止更新的MRT这次彻底退修了.通知原文如下~~~ The downlo ...

  2. MongoDB日常运维操作命令小结

    总所周知,MongoDB是一个NoSQL非数据库系统,即一个数据库可以包含多个集合(Collection),每个集合对应于关系数据库中的表:而每个集合中可以存储一组由列标识的记录,列是可以自由定义的, ...

  3. java 定时器中任务的启动、停止、再启动

    package com.cvicse.ump.timer.service; import java.util.Date; import java.util.Timer; import com.cvic ...

  4. 团队作业:SRS文档-飞机大战

    本实验为团队合作项目作业的一部分:SRS文档-飞机大战 项目分工:SRS文档项目为梁JM负责完成 实验要求: 3.SRS文档(第二周,截止5月31日)              要求对所选项目进行用例 ...

  5. 广商博客冲刺第六七天new

    第四五天沖刺傳送門 第一版的網頁已經放到 云服務器(估計快到期了) 傳送門. (不怎么會玩服務器啊..求指教..目前問題如下: 1.我的電腦mysql密碼跟服務器的密碼不一樣..上傳的時候要把代碼里面 ...

  6. [2017BUAA软工]第一次个人项目 数独的生成与求解

    零.Github链接 https://github.com/xxr5566833/sudo 一.PSP表格 PSP2.1 Personal Software Process Stages 预估耗时(分 ...

  7. [2017BUAA软工]个人项目

    软工个人项目 一.Github项目地址 https://github.com/Lydia-yang/2017BUAA-SoftwareEngineering 二.解题思路 在刚开始拿到题目的时候,关于 ...

  8. redi集群测试

    redis集群的测试   原文:http://blog.sina.com.cn/s/blog_53b45c4d0102wg10.html 1.测试存取值 客户端连接集群redis-cli需要带上 -c ...

  9. From 简书 转帖一下如何安装k8s1.10 改天做下实验. https://www.jianshu.com/p/9c7e1c957752

    centos7.3 kubernetes/k8s 1.10 离线安装 老菜_misa 关注 2018.04.25 23:57 字数 1243 阅读 266评论 1喜欢 3 本文介绍在centos7.3 ...

  10. [转帖]DevOps/TestOps概念

    发现收藏不好用..还是转吧.. https://www.cnblogs.com/fnng/p/8232410.html DevOps/TestOps概念 2018-01-07 22:02 by 虫师, ...