关于HTML
-
HTML文件
- 网页是网站中的单独页面,而网页文件的格式通常是HTML;
- 网页是构成网站的基本元素,它通常是由图片、链接、文字、声音、视频等元素组成;
- 网页通常格式以 .htm 或者 .html 后缀结尾的文件,通常也叫HTML文件
-
HTML 是超文本标记语言(Hyper Text Markup Language)
HTML是描述网页的一种语言,不是编程语言,而是一种标记语言,用于创建文本与编写网页图片等
超文本:
- 呈现内容上超越了传统文本能够表示的范围,有图片、声音、多媒体等内容;
- 可以从一个文件跳转到另一个文件;
-
网页加载过程
前端人员开发代码 -> 浏览器显示代码(解析、渲染)-> 生成Web页面
-
网页标准的组成
主要包括结构、表现、行为
标准 | 说明 |
---|---|
结构 | 结构用于对网页元素进行整理和分类,现阶段主要学习的是HTML |
表现 | 表现用于设置网页元素的版式、颜色、大小等外观样式,主要指CSS |
行为 | 行为是指网页模型的定义以及交互的编写,现阶段主要学习为JavaScript |
Web标准的最佳方案就是 结构、表现和行为相互分离(各自在对应文件中编写代码)
概述
-
基本语法概述
-
HTML标签是由尖括号包围的关键词,例如;
-
HTML标签通常是成对出现的,例如 和 ,我们称为双标签。标签对中的第一个标签是开始标签,第二个标签是结束标签;
-
也有部分特殊标签必须是单个标签,例如<br />,我们称为单标签。
-
-
标签关系
包含关系、并列关系
-
基本结构
<html>
<head>
<title>Hello页面</title>
</head>
<body>
专业Hello 语句
</body>
</html>
每一个网页都有结构标签(骨架标签),页面内容也是在这些基本标签上书写的
标签名 | 定义 | 说明 |
---|---|---|
html标签 | HTML标签 | 页面中最大标签,我们称为根标签 |
head标签 | 文档的头部 | 在head标签中必须设置的标签为title |
title标签 | 文档的标题 | 让页面拥有一个属于自己的网页标题 |
body标签 | 文档的主体 | 元素包含文档的所有内容,页面内容基本都是放到body中的 |
文档声明与字符编码
- 文档声明
<! DOCTYPE> 文档类型声明,告诉浏览器该用哪种HTML版本来显示网页
<! DOCTYPE html>
**注意:**该代码含义为当前采用HTML5版本来显示网页,该代码必须放置在文档最前面,即之前,且它不是一个标签,仅仅是一个声明
<html lang="en">
lang用来定义当前文档显示语言的种类,en为英语,如果是中文则为zh-CN
<meta charset="utf-8">
charset是字符集设置,规定HTML文档该用那种字符进行编码
charset常用的值有 GB2312、BIG5、GBK、UTF-8
HTML常用标签
- 文本格式化标签
语义 | 标签 | 说明 |
---|---|---|
加粗 | <strong>或者<b> | 更推荐使用<strong> 标签加粗 语义更强烈 |
倾斜 | <em>或者<i> | 更推荐使用<em> 标签倾斜 语义更强烈 |
删除线 | <del>或者<s> | 更推荐使用<del> 标签删除线 语义更强烈 |
下划线 | <ins>或者<u> | 更推荐使用<ins> 标签下划线语义更强烈 |
-
图像标签的属性:
-
在HTML标签中, img 标签用于定义HTML 页面中的图像
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <!-- img是图像标签 是单标签 --> <!-- 一个标签的属性 通常写在标签名称之后,用空格隔开 --> <!-- <img src="file:///C:/Users/Administrator/Desktop/cat.png" /> --> <!-- 绝对路径 file:///C:/Users/Administrator/Desktop/cat.png --> <!-- 本地连接前 加上 file:/// --> <!-- <img src="图像URL"/> --> <img src="../../images/cat.png" /> <!-- 相对路径 : 相对于当前文件所在目录的位置 的相对相对位置关系 --> <!-- 绝对路径:从根文件出发 相对路径: 从所在的当前文件出发 --> </body> </html>
src是img标签必须的属性,用于指定图像文件的路径和文件名
属性 | 属性值 | 说明 |
---|---|---|
src | 图片路径 | 必须属性 |
alt | 文本 | 替换文本。图像不能显示的文字 |
title | 文本 | 提示文本。鼠标放到图像上,显示文字 |
width | 像素 | 设置图像的宽度 |
height | 像素 | 设置图像的高度 |
border | 像素 | 设置图像的边框粗细 |
注意:
-
图像标签可以拥有多个属性,必须写在标签名的后面;
-
属性之间不分先后顺序,标签名与属性,属性与属性之间均以空格分开
-
属性采取键值对的格式,即key =“value” 的格式,属性=“属性值”
- 超链接标签
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<!-- 链接的作用 :1、跳转到其它网页(html文件) -->
<!-- 2、下载文件 -->
<!-- 3、导航 (滚动到指定位置)-->
<!-- 跳转到指定的网页 -->
<!-- 按下时是红色 未点击时是蓝色 点击后是紫色 -->
<a href="https://www.baidu.com">百度一下</a>
<a href="https://www.sina.com">新浪网页</a>
<!-- 跳转到本地的网页 采用相对路径写法 -->
<a href="01-第一个网页.html">跳转到第一个网页</a>
<!-- target属性有两个属性值 _self 当前网页中打开链接
_blank 新建的网页中打开链接 -->
<a href="https://www.baidu.com" target="_self">百度</a>
<a href="https://www.baidu.com" target="_blank">百度</a>
<!-- 空链接 自刷新、自跳转-->
<a href="#">这是一个空链接</a>
<!-- 下载链接 -->
<a href="./images/cat.png">点击展示图片</a>
<a href="./sizer334.zip">点击下载文件</a>
</body>
</html>
链接的语法格式:
<a href="跳转目标" target="目标窗口的弹出方式">文本或者图像</a>
- 锚点设置(anchor 锚)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<!-- 链接中的导航功能 : 锚点 -->
<!-- 功能 : 从目录导航到指定位置; 回到网页顶部 -->
<!-- 锚点设置的步骤 -->
<!-- 1、给需要导航的标记 设置id属性 id值必须唯一 -->
<!-- 2、在对应链接标记中的href属性 设置属性值为" #id值 " -->
<!-- Ctrl + / 快捷注释 -->
<!-- 标记语言注释 -->
<h1 id="top">萌宠</h1>
<h2>目录</h2>
<a href="#a">1 萌宠简介</a> <br />
<a href="#b">2 萌宠种类</a> <br />
<a href="#c">3 猫的生活习性</a>
<h2 id="a">萌宠简介</h2>
内容...
<h2 id="b">萌宠种类</h2>
内容...
<h3 id="c">猫的生活习性</h3>
内容...
<br />
<a href="#top">返回到顶部</a>
</body>
</html>
属性作用
属性 | 作用 |
---|---|
href | 用于指定链接目标的url地址,(必须属性)当为标签应用href属性时,它就具有了超链接的功能 |
target | 用于指定链接页面的打开方式,其中_self为默认值,_blank为在新窗口中打开方式 |
链接的分类:
-
外部链接:外部网络地址 https://www.baidu.com
-
内部链接: index.html
-
空链接: #
-
下载链接: 链接中带文件或者压缩包
-
网页元素:网页中的各种元素,文本、图像、表格、音频、视频等都可以添加超链接
-
锚点链接:通过链接可以快速定位到页面中的指定位置 (href = “#元素id属性”)比如百度百科
表格标签
表格的基本语法
<table>
<tr>
<td>单元格中的文字</td>
......
</tr>
</table>
-
<table></table>是用于定义表格的标签;
-
<tr></tr> 标签用于定义表格中的行,必须嵌套在table中;
-
<td></td> 用于定义表格中的单元格,必须嵌套在tr中。
表格属性
属性名 | 属性值 | 描述 |
---|---|---|
align | left、center、right | 规定表格相对于周围元素的对齐方式 |
border | 数字值 | 规定表格单元是否拥有边框,默认为0,表示没有边框,其余值越大外边界越宽。 |
cellpadding | 像素值 | 规定单元边缘与内容之间的空白,默认1像素 |
cellspacing | 像素值 | 规定单元格之间的空白,默认2像素 |
width | 像素值或百分比 | 规定表格的宽度 |
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<!-- table的属性 -->
<!-- align 设置表格的水平位置 left 靠左 center 居中 right 靠右 -->
<!-- border 设置表格的边框 边框为0时,没有单元格边框 边框为1时,就有单元格 -->
<!-- cellpadding 设置内容 和单元格边界之间的举例 -->
<!-- cellspacing 设置(单元格边界——表格外边界)
(单元格边界-单元格边界),之间的距离 -->
<!-- width 设置表格的宽度 属性值: 数字、
百分比(相对于父元素的宽度值的百分数,父元素改变时,table也随之改变) -->
<!-- 注意: border的内容就是数字没有单位,其余 width\cell...\cell.. 以像素为单位 -->
<table width="50%"
align="center"
border="1"
cellpadding="10"
cellspacing="0">
<tr>
<th>姓名</th>
<th>年龄</th>
</tr>
<tr>
<td>张三</td>
<td>12</td>
</tr>
</table>
<table align="center" border="1" cellpadding="0">
<tr>
<th>姓名</th>
<th>年龄111111111111111</th>
</tr>
<tr>
<td>张三</td>
<td>12</td>
</tr>
</table>
</body>
</html>
注意:
-
<thead></thead> :用于定义表格的头部,<thead>内部必须有<tr>标签,一般是位于第一行;
-
<tbody></tbody> : 用于定义表格的主体,主要用于放数据本体
-
以上的标签都需要在table标签中方能生效
合并单元格方式
-
跨行合并:rowspan = “合并单元格的数量”
-
跨列合并:colspan = “合并单元格的数量”
-
合并单元格
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<table border="1" cellspacing="0">
<tr>
<th>项目</th>
<th></th>
<th>照片</th>
</tr>
<tr>
<td>姓名</td>
<td>张三</td>
<!-- 1、判断是合并 行,还是合并 列 -->
<!-- 2、需要合并的数量 (合并的本质不是将三个td合并,而且将设置rowspan或者colspan的大小给单元格) -->
<!-- 3、删除掉多余的单元格 -->
<td rowspan="3"></td>
</tr>
<tr>
<td>年龄</td>
<td>12</td>
<!-- 删除多余的单元格 -->
<!-- <td></td> -->
</tr>
<tr>
<td colspan="2">地址:重庆沙坪坝</td>
<!-- <td></td> -->
<!-- 删除多余的单元格 -->
<!-- <td></td> -->
</tr>
</table>
</body>
</html>
表格标签
- 无序列表
标签是HTML页面中项目的无序列表,一般会以项目符号呈现列表项,而列表项使用
- 符号来定义。
<ul>
<li>列表项1</li>
<li>列表项2</li>
<li>列表项3</li>
……
</ul>
..............................................................
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<!--无序列表 双标签 -->
<!-- ul中的li标签(列表项)没有顺序 -->
<!-- ul中除了li标签外,不能防止任何文字或者元素标签 -->
<!-- li中可以定义任意元素。 -->
水果:
<ul>
<li>
苹果
<img src="./images/电影_movie.png" width="16px" height="16px">
</li>
<li>
香蕉
<!-- 二级列表 :一级列表的选项中嵌套一个列表 -->
<ul>
<li>台湾香蕉</li>
<li>云南香蕉</li>
</ul>
</li>
<li>西瓜</li>
</ul>
</body>
</html>
- 有序列表
有序列表即拥有排列顺序的列表,在HTML标签中, <ol></ol>标签用于定义有序列表,列表排序以数字来显示。
- 自定义列表
在HTML中,<dl></dl> 标签用于定义描述列表(或定义列表),该标签会与<dt></dt>(定义项目/名称)和<dd></dd>(描 述每一个项目/名称)一起使用。
- 列表总结
标签名 | 定义 | 说明 |
---|---|---|
<ul></ul> | 无序列表 | 里面只包含li,没有顺序,使用较多。 li里面可以包含任何标签 |
<ol></ol> | 有序列表 | 里面只能包含li 有顺序,使用相对较少, li里面可以包含任何标签 |
<dl></dl> | 自定义列表 | 里面只能包含dt和dd, dt和dd里面可以放任何标签 |
表单标签
- 表单的组成
在HTML中,一个完整的表单通常由表单域、表单控件(也称为表单元素)和提示信息3个部分构成。
- 表单域
- 表单域是一个包含表单元素的区域 ;
- 在HTML标签中, 标签用于定义表单域,实现用户信息的收集和传递;
- 会把它范围内的表单元素信息提交给服务器
- 表单域认识
<form action=" url地址" method="提交方式" name="表单域名称">
各种表单元素
</form>
..........................................................
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<!-- form 表单域 :表单域中可以定义“表单元素” -->
<!-- action="服务器地址" http链接 或者 链接地址 -->
<!-- method="" 可选值 GET和 POST get :得到,从服务
器获取信息,比如下载 post:上传,给服务器信息,比如:微信发朋友圈 -->
<!-- name="" 表单的名字 当网页中存在多个form表单域时,可以通过name区分表单域 -->
<form action="" method="" name="登录">
</form>
<form name="注册">
</form>
</body>
</html>
- 常用属性
属性 | 属性值 | 作用 |
---|---|---|
action | url地址 | 用于指定接收并处理表单数据的服务器程序的url地址 |
method | get/post | 用于设置表单数据的提交方式,其取值为get和post |
name | 名称 | 用于指定表单的名称,以区分同一个页面中的多个表单域 |
-
表单元素:
-
input输入表单元素
input是用于收集用户信息的表单元素,在其标签中包含一个type属性,根据不同的属性值,输入字段可以有多种形式(可以是文本,复选框,掩码后的文本,单选按钮,按钮等)。
<input type="属性值">
...............................................................
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<!-- 重要 : input表单元素 必须放置在表单域中 -->
<form>
<!-- 单标签:br hr -->
<!-- 输入标签 -->
<!-- input默认是一个输入框标签 input一行可以存在多个 -->
<!-- <input /> -->
<!-- input中type属性可以决定表单输入内容的类型 -->
<!-- type="button" 按钮 可点击-->
<!-- value="" 按钮的名称 -->
<input type="button" value="这是一个按钮"/> <br />
<!-- 复选框(多选框) -->
<!-- type="checkbox" 例如:记住密码 -->
<!-- 表单输入内容:键值对 name="" value="" -->
<!-- <input type="checkbox" />记住密码 -->
<!-- ArrayList add remove -->
<!-- menu 集合 = ["红烧肉"] -->
<input type="checkbox" name="menu" value="宫保鸡丁"/>宫保鸡丁<br />
<input type="checkbox" name="menu" value="红烧肉"/>红烧肉<br />
<input type="checkbox" name="menu" value="青椒肉丝"/>青椒肉丝<br />
<!-- 单选框 -->
<!-- type="radio" 例如:性别 -->
<!-- 表单输入内容:键值对 name="" value="" -->
<!-- sex = "female" -->
<input type="radio" name="sex" value="male"/>男<br />
<input type="radio" name="sex" value="female"/>女<br />
<!-- 文件选择 -->
<!-- type="file" 例如:文件上传 -->
<!-- upload = 文件路径(文件) -->
<input type="file" name="upload"/><br />
<!-- 文本输入 -->
<!-- type="text" input的默认type值就是text -->
<!-- 表单输入内容:键值对 name="" value="" -->
<!-- value实际上就是输入框输入的内容 -->
<!-- content = "输入的内容" -->
<input type="text" name="content" value=""/><br />
<!-- type="password" 基本与text一样 输入格式为密码 -->
<input type="password" name="password" value=""/><br />
<!-- type="number" 输入格式为数字 -->
<input type="number" name="number" value=""/><br />
</form>
</body>
</html>
属性值 | 描述 |
---|---|
button | 定义点击按钮(多数情况下是由JavaScript启动脚本) |
checkbox | 定义复选框 |
file | 定义输入字段和“浏览”按钮,供文件上传 |
hidden | 定义隐藏的输入字段 |
image | 定义图像形式的提交按钮 |
password | 定义密码字段。该字段中的字符被掩码。 |
radio | 定义单选按钮 |
reset | 定义重制按钮,重制按钮会使表单中的所有数据被清除 |
submit | 定义提交按钮,提交按钮会把表单中的所有数据发送到服务器 |
text | 定义单行的输入字段,用户可在其中输入文本。默认为20个字符宽度 |
- 表单标签的其他属性
属性 | 属性值 | 描述 |
---|---|---|
name | 由用户自定义 | 定义input元素的名称 |
value | 由用户自定义 | 规定input元素的值 |
checked | checked | 规定此input元素首次加载时应当被选中 |
maxlength | 正整数 | 规定输入字段中的字符的最大长度 |
- 表单标签
为input元素定义标注。
标签用于绑定一个表单元素,当点击标签内的文件时,浏览器就会自动将焦点(光标)转到对应的表单元素上。
- lable标签
<label for="sex"></label>
<input type="radio" name="sex" id="sex"></input>
..............................................................
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<h2>登录界面</h2>
<form action="服务器地址" method="post">
<!-- label 用for属性,指向对应表单元素input中的id属性 -->
<!-- 当用户点击对应的label,它的for属性指向的id属性所在输入框就能获取焦点 -->
<label for="user">账号:</label><input type="text" id="user"/><br />
密码:<input type="password"/><br />
<input type="submit" value="登录"/>
<input type="reset" value="重置"/>
</form>
</body>
</html>
<