HTML(下)

form表单

表单功能

用于向服务器传输数据,从而实现与web服务器的交互

包含input系列标签,eg:文本字段,复选框,单选框,提交按钮等

还可以包含textarea、select、fieldset和lable标签

表单属性

属性 描述
accept-charset 规定在被提交的表单中使用的字符集(默认:页面字符集)
action 规定向何处提交表单的地址(URL)提交页面
autocomplete 规定浏览器应该自动完成表单(默认:开启)
enctype 规定被提交数据的编码(默认:url-encoded)
method 规定在提交表单时所用的HTTP方法(默认:GET)
name 规定识别表单的名称
novalidate 规定浏览器不验证表单
target 规定action属性中地址的目标(默认:_self)

<input>输入标签(文本框)(内联标签)

<input>元素会根据不同的type属性,变化为多种形态。

你需要先看一看上面的这一段代码你能看的懂吗,里面的属性你是否又了解,不了解那就对了,你可以在下面的属性值中找找这些属性到底是干什么的。

  <form>
姓名:<input value="呵呵" >逗比<br>
昵称:<input value="哈哈" readonly=""><br>
名字:<input type="text" value="name" disabled=""><br>
密码:<input type="password" value="pwd" size="50"><br>
性别:<input type="radio" name="gender" value="male" checked="">男
<input type="radio" name="gender" value="female" >女<br>
爱好:<input type="checkbox" name="love" value="eat">吃饭
<input type="checkbox" name="love" value="sleep">睡觉
<input type="checkbox" name="love" value="bat">打豆豆
</form>

标签属性

1)type="属性值"文本类型。属性值可以是:

  • text默认

  • password密码类型

  • radio单选按钮,名字相同的按钮作为一组进行单选(单选按钮,天生是不能互斥的,如果想互斥,必须要有相同的name属性。name就是“名字”。

    )。非常像以前的收音机,按下去一个按钮,其他的就抬起来了。所以叫做radio。

  • checkbox多选按钮,名字相同的按钮作为一组进行选择。

  • checked:将单选按钮或多选按钮默认处于选中状态。当<input>标签的type="radio"时,可以用这个属性。属性值也是checked,可以省略。

  • hidden隐藏框,在表单中包含不希望用户看见的信息

  • button普通按钮,结合js代码进行使用。

  • submit提交按钮,传送当前表单的数据给服务器或其他程序处理。这个按钮不需要写value自动就会有“提交”文字。这个按钮真的有提交功能。点击按钮后,这个表单就会被提交到form标签的action属性中指定的那个页面中去。

  • reset重置按钮,清空当前表单的内容,并设置为最初的默认值

  • image图片按钮,和提交按钮的功能完全一致,只不过图片按钮可以显示图片。

  • file文件选择框。

    提示:

    ​ 如果要限制上传文件的类型,需要配合JS来实现验证。

    ​ 对上传文件的安全检查:一是扩展名的检查,二是文件数据内容的检查。

2)value="内容":文本框里的默认内容(已经被填好了的)

3)size="50":表示文本框内可以显示五十个字符。一个英文或一个中文都算一个字符。

注意size属性值的单位不是像素哦

4)readonly:文本框只读,不能编辑。因为它的属性值也是readonly,所以属性值可以不写。

用了这个属性之后,在google浏览器中,光标点不进去;在IE浏览器中,光标可以点进去,但是文字不能编辑。

5)disabled:文本框只读,不能编辑,光标点不进去。属性值可以不写。

type属性值速记
type属性值 表现形式 对应代码
text 单行输入文本 <input type=text" />
password 密码输入框(不显示明文) <input type="password" />
date 日期输入框 <input type="date" />
checkbox 复选框 <input type="checkbox" checked="checked" name='x' />
radio 单选框 <input type="radio" name='x' />
submit 提交按钮 <input type="submit" value="提交" />
reset 重置按钮 <input type="reset" value="重置" /> 页面不会刷新,将所有输入的内容清空
button 普通按钮 <input type="button" value="普通按钮" />
hidden 隐藏输入框 <input type="hidden" />
file 文本选择框 <input type="file" />
多种按钮举例
<form>
<input type="button" value="我是一个普通按钮">
<br>
<input type="submit" value="我是一个提交按钮">
<br>
<input type="reset" value="我是一个重置按钮">
<br>
<input type="image" src="https://goss.veer.com/creative/vcg/veer/800water/veer-132444248.jpg">
<br>
<input type="file" value="我是一个文本选择框"> </form>

<select>下拉列表标签(内联标签)

<select>标签里面的每一项用<option>表示。

select就是“选择”,option“选项”。

select标签和ul、ol、dl一样,都是组标签。

<select>标签属性

  • multiple:可以对下拉列表中的选项进行多选。没有属性值。
  • size="2":如果属性值大于1,则列表为滚动视图。默认属性值为1,即下拉视图。
<form>
<select multiple="2">
<!--multiple="2"表示可以选两个-->
<option>小学</option>
<option>初中</option>
<option>高中</option>
</select> <select size="2">
<!--滚动视图,我们可以自己写一写看看效果-->
<option>小学</option>
<option>初中</option>
<option>高中</option>
</select>
</form>

<option>标签属性

  • selected:预选中。没有属性值。
<form>
<select multiple="2" size="2">
<option>小学</option>
<option>初中</option>
<option selected="">高中</option>
<!--你在没有选之前,他会给你预先选一个,但是你可以更改-->
</select>
</form>

<textarea>标签:多行文本输入框(内联标签)

text就是“文本”,area就是“区域”。这样你应该懂了吧!

属性

  • value:提交给服务器的值。
  • rows="4":指定文本区域的行数。
  • cols="20":指定文本区域的列数。
  • readonly:只读。
<form>
<textarea cols="8" rows="5" readonly="">我是个小可爱</textarea>
</form>

<label>标签(内联标签)

我们先看一段代码

<form action="">
<input type="radio" name="gender"/>男
<input type="radio" name="gender"/>女
</form>

上面一段代码会给我们显示一个选择性别的表单,我们会发现之后我们点击小圆点的时候,相应的性别才会被选中,如果单纯的点击文字(男或女)的时候并没有什么卵用,我们现在很想点击文字(男或女)的时候让他也能够选择,所以我们的<label>标签就起了作用,他就像是一滴蜂蜜,把小圆点和文字黏在一起,让我们无论点击小圆点还是文字都会选中相应的性别

本质上来讲,“男”、“女”这两个文字和input标签时没有关系的,而label就是解决这个问题的。我们可以通过label把input和汉字包裹起来作为整体。

解决方法如下:

代码承上啊!!!!!!

<form action="">
<input type="radio" name="gender" id="f1"/><label for="f1">男</label>
<input type="radio" name="gender" id="f2"/><label for="f2">女</label>
</form>

上方代码中,input标签要有一个id,然后label标签有一个for属性,和id相同,那么这个label和input就有绑定关系了。

当然了,复选框也有label:(任何表单元素都有label)

继续送上我的代码!!!!

<form action="">
<input type="checkbox" id="c1"><label for="c1">记住密码</label>
</form>

表单的语义化

我们在注册一个网站的信息的时候,有一部分是必填信息,有一部分是选填信息,这个时候可以利用表单的语义化。

<form>
<fieldset>
<legend>必填信息</legend>
姓名:<input value="呵呵">逗比
<br>
昵称:<input value="哈哈哈说的就是你" readonly="">
<br>
名字:<input type="text" value="name" disabled="">
<br>
密码:<input type="password" value="pwd" size="50">
<br>
性别:<input type="radio" name="gender" value="male">男
<input type="radio" name="gender" value="female">女
邮箱:<input type="email" name="user_email">
<!--type="email" name="user_email"在提交时会提醒你,必须要符合邮箱的规范-->
</fieldset> <fieldset>
<legend>其他信息</legend>
爱好:<input type="checkbox" name="love" value="eat">吃饭
<input type="checkbox" name="love" value="sleep">睡觉
<input type="checkbox" name="love" value="buy">买买买
</fieldset>
</form>

HTML(下)的更多相关文章

  1. C++程序结构---1

    C++ 基础教程Beta 版 原作:Juan Soulié 翻译:Jing Xu (aqua) 英文原版 本教程根据Juan Soulie的英文版C++教程翻译并改编. 本版为最新校对版,尚未定稿.如 ...

  2. Android SwipeRefreshLayout 下拉刷新——Hi_博客 Android App 开发笔记

    以前写下拉刷新 感觉好费劲,要判断ListView是否滚到顶部,还要加载头布局,还要控制 头布局的状态,等等一大堆.感觉麻烦死了.今天学习了SwipeRefreshLayout 的用法,来分享一下,有 ...

  3. IE6、7下html标签间存在空白符,导致渲染后占用多余空白位置的原因及解决方法

    直接上图:原因:该div包含的内容是靠后台进行print操作,输出的.如果没有输出任何内容,浏览器会默认给该空白区域添加空白符.在IE6.7下,浏览器解析渲染时,会认为空白符也是占位置的,默认其具有字 ...

  4. Ubuntu下使用nvm

    写在前面:刚写着写着博客就跨年了,希望新的一年大家万事如意,一切向"前"看! 安装 wget -qO- https://raw.githubusercontent.com/crea ...

  5. Cmder--Windows下命令行利器

    cmder cmder是一个增强型命令行工具,不仅可以使用windows下的所有命令,更爽的是可以使用linux的命令,shell命令. 安装包 安装包链接 下载后,直接解压即用. 修改命令提示符λ为 ...

  6. NodeJs在Linux下使用的各种问题

    环境:ubuntu16.04 ubuntu中安装NodeJs 通过apt-get命令安装后发现只能使用nodejs,而没有node命令 如果想避免这种情况请看下面连接的这种安装方式: 拓展见:Linu ...

  7. GreenDao 数据库:使用Raw文件夹下的数据库文件以及数据库升级

    一.使用Raw文件夹下的数据库文件 在使用GreenDao框架时,数据库和数据表都是根据生成的框架代码来自动创建的,从生成的DaoMaster中的OpenHelper类可以看出: public sta ...

  8. [APUE]UNIX进程的环境(下)

    一.共享库 共享库使得可执行文件中不再需要包含常用的库函数,而只需在所有进程都可存取的存储区中保存这种库例程的一个副本.程序第一次执行的时候或第一次调用某个库函数的时候,用动态链接方法将程序与共享库函 ...

  9. ASP.NET Aries 入门开发教程4:查询区的下拉配置

    背景: 今天去深圳溜达了一天,刚回来,看到首页都是微软大法好,看来离.NET的春天就差3个月了~~ 回到正题,这篇的教程讲解下拉配置. 查询区的下拉配置: 1:查询框怎么配置成下拉? 在配置表头:格式 ...

  10. tLinux 2.2下安装Mono 4.8

    Tlinux2.2发行版基于CentOS 7.2.1511研发而成,内核版本与Tlinux2.0发行版保持完全一致,更加稳定,并保持对Tlinux2.0的完全兼容.Mono 4版本要求CentOS 7 ...

随机推荐

  1. 关于数据库表设计之区域表system_district:省市县街道四级地址表

    关于省市县的数据表的设计有两种方式: 一.将其设计成一张表 DROP TABLE IF EXISTS `system_district`; CREATE TABLE `system_district` ...

  2. 2018-2019-2 20165215《网络对抗技术》Exp10 Final Windows本地内核提权+Exploit-Exercises Nebula学习与实践

    目录 PART ONE :Windows本地内核提权 漏洞概述 漏洞原理 漏洞复现 windbg调试本地内核 查看SSDT表和SSDTShadow表 查看窗口站结构体信息 利用Poc验证漏洞 漏洞利用 ...

  3. 认识git的简单命令

    一.课程目的 教大家学会it的简单命令(老师建议 English 的前后要加空格) 二.认识 git 命令 整篇文章都是用语雀写的. 解释了(使用git)绑定gitee的操作 https://www. ...

  4. 算法 - 插入排序交换次数 - Binary Indexed Tree

    场景:快速得到一段数组元素的和 题目:Insertion Sort Advanced Analysis | HackerRank 算法:binary-indexed-tree :: HackerRan ...

  5. java web 开发快速宝典 ------电子书

    http://www.educity.cn/jiaocheng/j10259.html 1.2.1  JDk 简介 JDK是Sun公司在1995年推出的一套可以跨操作系统平台编译和运行Java程序的开 ...

  6. html5内容快速学习

    accessKey 快捷键 <input type="text" accessType="m"/> <!-- chrome按下快捷键alt+m ...

  7. 七十六:flask.Restful之flask-Restful插件的基本使用

    安装:flask 0.8以上.python2.6或者3.3以上:pip install flask-restful 使用方法:1.从flask_restful中导入Api,来创建对象 2.写一个视图函 ...

  8. PS技巧集合

    一.把图片变模糊 图像——调整——色阶——输出色阶——滤镜——模糊——高斯模糊——半径 二.图片换色 点击右下角弹层下方的“fx”——颜色叠加——色样颜色

  9. Python学习小技巧之列表项的排序

    Python学习小技巧之列表项的排序 本文介绍的是关于Python列表项排序的相关内容,分享出来供大家参考学习,下面来看看详细的介绍: 典型代码1:     data_list = [6, 9, 1, ...

  10. php下关于字符串与数组的相互转换的函数

    public static function string2array($tags)    {        return preg_split('/\s*,\s*/',trim($tags),-1, ...