HTML5学习笔记
HTML学习目录
一、Web标准的构成
主要包括结构(Structure)、表现(Presentation)和行为(Behavior)三个方面。
标准 | 说明 |
---|---|
结构 | 结构用于对网页元素进行整理和分类,主要学的是HTML |
表现(样式) | 表现用于设置网页元素的版式、颜色、大小等外观样式,主要指的是CSS |
行为 | 行为是指网页模型的定义及交互的编写,学的主要是JavaScript |
Web标准提出的最佳体验方案:结构、样式、行为相分离。
二、HTML标签
1、语法规范
1.1 基本语法规范
- HTML标签是由尖括号包围的关键字,例如
<p>
- HTML标签通常是成对出现的,例如
<html></html>
,称为双标签 - 有些特殊标签是单标签,例如
<br />
,称为单标签
1.2 标签关系
双标签关系可以分为两类:包含关系和并列关系。
包含关系:也称为父子关系
<head>(父)
<title></title>(子)
</head>
并列关系:也称为兄弟关系
<head></head>
<body></body>
2.HTML基本结构标签
每个网页都有一个基本的结构标签(也称为骨架标签),页面内容也是这些基本标签上数学的。
HTML页面也称为HTML文档。
<html>
<head>
<title>头部页面</title>
</head>
<body>
要好好学习,未来要当CEO
</body>
</html>
标签名 | 定义 | 说明 |
---|---|---|
<html></html> | HTML标签 | 页面中最大的标签,我们称为根标签 |
<head></head> | 文档的头部 | 注意在head标签中我们必须要设置的标签是tile |
<title></title> | 文档的标题 | 让页面拥有一个属于自己的标题 |
<body></body> | 文档的主体 | 包含文档的所有内容,页面内容基本都是放在<body> 里面的 |
HTML文档的后缀名必须是 .html 或者 .htm ,浏览器的作用是读取HTML文档,并以网页的形式显示出它们
3.HTML常用标签
3.1标题标签
为了使页面更具语义化,会在页面中用到标题标签,HTML提供了6个等级的网页标签。
如<h1></h1>
-<h6></h6>
<h1>一级标题</h1>
<h2>二级标题</h2>
<h3>三级标题</h3>
作为标题使用,并且依据重要性递减。
特点:
- 加了标题的文字会变粗,字号也会依次变大。
- 一个标题独占一行。
3.2段落和换行标签
3.2.1段落标签
<p></p>
标签用于定义段落,可以将页面分为若干段落
<p>段落标签</p>
特点:
- 文本在一个段落中会根据浏览器窗口的大小自动换行
- 段落和段落之间会有空隙
3.2.2换行标签
<br/>
标签用于强制性换行
<br />用于强制性换行
特点:
<br />
是个单标签<br />
段落之间会有一些间距
3.3 文本格式化标签
语义 | 标签 | 说明 |
---|---|---|
加粗 | <strong></strong> 或者<b></b> | 推荐使用<strong></strong> 语义更强烈 |
倾斜 | <em></em> 或者<i></i> | 推荐使用<em></em> 语义更强烈 |
删除线 | <del></del> 或者<s></s> | 推荐使用<del></del> 语义更强烈 |
下划线 | <ins></ins> 或者<u></u> | 推荐使用<ins></ins> 语义更强烈 |
3.4 div和span标签
<div>
和<span>
是没有语义的,它们是一个盒子,用来装内容。
<div>大盒子,独占一行</div>
<span>小盒子1<span><span>小盒子2span>
特点:
<div>
标签用来布局,但是一行只能放一个<div>
。可以理解为,它是独占一行的大盒子。<span>
标签用来布局,一行上可以有多个<span>
。可以理解为,小盒子
3.5 图像标签和路径
3.5.1图像标签img
<img />
标签用于定义HTML页面中的图像,是单标签
<img src="图像URL" />
img标签的其他属性:
属性 | 属性值 | 说明 |
---|---|---|
src | 图片路径 | 必需属性 |
alt | 文本 | 替换文本,图像不能显示时,会替换为文字 |
title | 文本 | 提示文本,当鼠标移动到图像上时,会出现文字提示 |
weith | 像素 | 设置图像是宽度 |
height | 像素 | 设置图像是高度 |
border | 像素 | 设置图像的边框粗细 |
图像标签属性注意点:
- 图像标签可以拥有多个属性,必须写在标签名的后面
- 属性之间不分先后顺序,标签名与属性,属性与属性之间均已空格分开
- 属性采取键值对的格式,即 key = “value”的格式,属性=“属性值”
src
是<img>
标签的必需属性,用于指定图像文件的路径和文件名。
3.6 超链接标签
3.6.1 语法格式
<a></a>
标签用于定义超链接,作用是从一个页面链接跳转到另一个页面
<a href="跳转目标" targer=“目标窗口的弹出方式”>文本或图像</a>
如:<a href="htttp://www.baidu.com" targer="_blank">文本或图像</a>
属性 | 作用 |
---|---|
href(必需属性) | 用于指定链接目标的url地址,当为标签应用href属性时,它就具有了超链接的功能 |
target | 用于指定链接页面的打开方式,其中_self 为默认值,_blank 为打开一个新窗口 |
3.6.2 链接分类
-
外部链接:例如
<a href="http://www.baidu.com">百度</a>
地址必须以http://
开头。 -
内部链接:网站内部页面之间的相互链接,直接链接内部页面名称即可,例如
<a href="index.html">首页</a>
-
空链接:没有确定链接目标时
<a href="#">首页<a/>
-
下载链接:如果href里面地址是一个文件或者压缩包,会下载这个文件
-
网页元素链接:在网页中的各种网页元素,如文本、图像、表格、音频、视频等都可以添加超链接
<a href = "http://www.baidu.com"><img src = "img.jpg"></a>
-
锚点(id)链接:点击链接可以快速定位到页面中的某个位置。
设置链接文本的属性 href 为#名字
的形式,如:<a href="#two">第二集</a>
找到目标标签,添加一个id属性 = 刚才的名字,如:
<h3 id="tow">第二集简介</two>
3.7 表格标签
3.7.1 表格标签的主要作用
表格主要用于显示、展示数据
支出项目 | 单价 | 数目 |
---|---|---|
假发 | 30 | 12 |
3.7.2 表格标签的基本语法
<table>
<tr>
<td>单元格内的文字</td>
</tr>
</table>
<table></table>
是用于定义表格的标签<tr></tr>
标签用于定义表格中的行,必须嵌套在<table></table>
标签中<td></td>
用于定义b表格中的单元格,必须嵌套在<tr></tr>
标签中- 字母td指表格数据(table data),即数据单元格的内容
3.7.3 表头单元格标签
一般位于表格的第一行或第一列,里面的文本内容会加粗居中显示。
<th>
标签表示HTML表格的表头部分
<table>
<tr>
<th>姓名</th>
<th>性别</th>
<th>电话</th>
</tr>
<tr>
<td>曹小嘉</td>
<td>男</td>
<td>123</td>
</tr>
</table>
姓名 | 性别 | 电话 |
---|---|---|
小嘉 | 男 | 123 |
3.7.5 表格构造标签
当表格很长时,为了更好的表示单元格的语义,可以将表格分割成表格头部和表格主体两大部分。用 thead 表示头部区域、 tbody 表示主体区域 。
<table>
<!-- 头部区域 -->
<thead>
<tr>
<th>姓名</th>
<th>性别</th>
<th>年龄</th>
</tr>
</thead>
<!-- 主体区域 -->
<tbody>
<tr>
<td>曹小嘉</td>
<td>男</td>
<td>20</td>
</tr>
</tbody>
</table>
3.7.6 合并单元格
-
合并单元格方式:
跨行合并:rowspan = “合并单元格的个数”
跨列合并:colspan = “合并单元格的个数” -
合并单元格三部曲:
1、确定跨行还是跨列
2、找到目标单元格,写上 :合并方式 = 合并单元格的数量,如:
<td colspan="2"></td>
3、删除多余的单元格
3.8 列表标签
表格是用来显示数据的,列表是用来布局的,因为它最大的特点就是整齐有序。分为无序列表、有序列表和自定义列表。
3.8.1 无序列表(重点)
无序列表一般用于定义导航栏
<ul></ul>
标签表示HTML页面中项目的无序列表,一般会以项目符号呈现列表项,列表项用<li>
标签定义。
<ul>
<li>列表1</li>
<li>列表2</li>
<li>列表3</li>
</ul>
注意:
1. 无序列表各个表项之间没有顺序级别之分。
2. <ul></ul>
中只能嵌套 <li></li>
,但是<li></li>
中可以容纳所有元素。
3. 无序列表会带有自己的样式属性,使用时,通过CSS来设置。
3.8.2 有序列表
注意事项和无序列表基本一致,在实际开发中使用并不多。
<ol>
<li>列表1</li>
<li>列表1</li>
<li>列表1</li>
</ol>
3.8.3 自定义列表(重点)
使用场景:常用于对术语或名词进行解释和描述,定义列表的列表项前没有任何项目符号。
<dl>
<dt>联系方式</dt>
<dd>邮箱</dd>
<dd>微信</dd>
<dd>QQ</dd>
</dl>
注意:
<dl></dl>
里面只能包含 <dt></dt>
和 <dd></dd>
<dt>
和<dd>
个数没有限制,经常是一个<dt>
对应多个<dd>
3.8.4 列表总结
标签名 | 定义 | 说明 |
---|---|---|
<ul></ul> | 无序列表 | 里面只能包含<li> 没有顺序,使用较多,<li> 里面可以包含任何标签 |
<ol></ol> | 有序列表 | 里面只能包含<li> 有顺序,使用较少,<li> 里面可以包含任何标签 |
<dl></dl> | 自定义列表 | 里面只能包含<dt><dd> ,使用较多,<dt><dd> 里面可以放任何标签,经常是一个<dt> 对应多个<dd> |
3.9 表单标签
3.9.1 表单域
表单域是一个包含表单元素的区域
HTML标签中<form>
标签用于定义表单域,以实现用户信息的手机和传递
<form>
会把它范围内的表单元素信息提交给服务器
<form action="url地址" method="提交方式" name="表单域名称">
各种表单元素控件
</form>
常用属性:
属性 | 属性值 | 作用 |
---|---|---|
action | url地址 | 用于指定接收并处理表单数据的服务器程序的url地址 |
method | get/post | 用于设置表单数据的提交方式,取其值为get或post |
name | 名称 | 用于指定表单的名称,以区分同一个页面中的多个表单域 |
注意:
- 在写表单元素之前,应该会有个表单域把他们进行包含:
- 表单域是
<form>
标签
3.9.2 表单域的组成
HTML标签中一个完整的表单通常由表单域、表单控件(也成为表单元素)和提示信息三个部分组成
3.9.3 表单控件(表单元素)
在表单域中可以定义各种表单元素,这些表单元素允许用户在表单中输入或者选择的内容控件
表单名字 | 作用 |
---|---|
input | 输入表单元素 |
select | 下拉框表单元素 |
textarea | 文本域表单元素 |
3.9.4 input元素
<input>
标签用于收集用户信息
在<input>
标签中,包含type属性,根据不同的type属性,可以有不同的类型(文本字段,复选框,掩码后的文本控件,单选按钮,按钮等)
<input type="属性值" />
<input>
标签为单标签- type属性设置不同的属性值用来指定不同的控件类型
type属性的属性值及描述:
属性值 | 描述 |
---|---|
button | 定义点击按钮(多数情况下,用于通过JavaScript启动脚本) |
radio | 定义单选按钮 |
checkbox | 定义复选框 |
file | 定义输入字段和“浏览按钮” ,供文件上传 |
hidden | 定义隐藏的输入字段 |
image | 定义图像形式的提交按钮 |
password | 定义密码字段,该字段中的字符被掩码 |
reset | 定义重复按钮。重复按钮会清除表单中的所有数据 |
submit | 定义提交按钮。提交按钮会把表单的数据提交给服务器 |
text | 定义单行输入字段,用户可在其中输入文本,默认宽度为20个字符 |
input标签的其他属性:
属性 | 属性值 | 描述 |
---|---|---|
name | 由用户自定义 | 定义input元素的名称 |
value | 由用户自定义 | 规定input的值(用于注册,登录) |
checked | checked | 页面加载时默认为选中(用于勾选协议或者性别) |
maxlength | 正值数 | 规定输入字符的最大长度(用于表单用户名) |
name
和value
是每个表单元素都有的属性值,主要给后台使用name
表单元素的名字,要求单选按钮和复选框要有相同的name
值checked
属性主要针对于单选按钮,主要作用是一打开页面,就要默认选中某个表单元素maxlength
是用户可以在表单元素输入的最大字符数,一般比较少用(主要用于用户名称)
3.9.5 label元素
<label>
标签为<input>
元素定义标注(标签)一般用于用户体验
<label>
标签用于绑定一个表单元素,当点击<label>
标签内的文本时,浏览器会自动将焦点(鼠标光标)转到相对应的input表单元素上,用来添加用户体验
<label for="sex">男<label>
<input type="text" name="sex" id="sex"/>
注意:<label>
标签的for属性需要和<input>
标签的id属性相同
3.9.6 select表单元素
<select>
下拉框使用场景:如果多个选项让用户选择的话,并且想要节约页面空间时,可以使用<select>
标签控件定义下拉列表
<select>
<option>选项1</option>
<option>选项2</option>
<option>选项3</option>
....
</select>
注意:
1.<select>
中至少包含一对<option>
2.在<option>
中定义selected="selected"
时,当前项即为默认选中项。
3.9.7 textarea表单元素
<textarea row="3" cols="20">
文本内容
<textarea/>
注意:
- 通过
<textarea>
标签可以创建多行文本输入框 - cols=“每行中的字符数” ,rols=“显示的行数”,在实际开发中不会使用,一般都是用CSS来改变大小。
3.9.8 表单元素总结
表单名字 | 作用 |
---|---|
input | 输入表单元素 |
select | 下拉框表单元素 |
textarea | 文本域表单元素 |
- 这三组表单元素都应该包含在form表单域里面,并且要有name属性
- 有三个名字比较类似的标签
- 表单域 form 使用场景:提交区域内表单元素给后台服务器
- 文本域 file 是input type属性值 使用场景:上传文件
- 文本域 textarea 使用场景:输入多行文字,比如留言板,网站介绍等