文章目录
一、概述
HTML:Hyper Text Markup Language(超文本1标记语言2)
<标签>: 开始标签
</标签>:结束标签
B/S结构系统:
B:Browser(浏览器)
S:Server(服务器)
二、基本标签
2.1 换行符:<p></p>
如下片段,使用换行符:
<html>
<head>
<meta charset="utf-8">
<title>基本标签</title>
</head>
<body>
<!--段落标记-->
<p>“师父,有吃的了。”那长老问甚东西,行者道:“这里没人家化饭,那南山有一片红的,想必是熟透了的山桃,我去摘几个来你充饥。
”三藏喜道:“出家人若有桃子吃,就为上分了,快去!”</p>
<p>行者取了钵盂,纵起祥光,你看他觔斗幌幌,冷气飕飕,须臾间,奔南山摘桃不题。</p>
<p>却说常言有云:山高必有怪,岭峻却生精。果然这山上有一个妖精,孙大圣去时,惊动那怪。
他在云端里,踏着阴风,看见长老坐在地下,就不胜欢喜道:“造化!造化!几年家人都讲东土的唐和尚取大乘,他本是金蝉子化身,十世修行的原体。</p>
<p>有人吃他一块肉,长寿长生。真个到了。”那妖精上前就要拿他,只见长老左右手下有两员大将护持,不敢拢身。
他说两员大将是谁?说是八戒、沙僧。八戒、沙僧虽没甚么大本事,然八戒是天蓬元帅,沙僧是卷帘大将,他的威气尚不曾泄,故不敢拢身。
妖精说:“等我且戏他戏,看怎么说。”</p>
</body>
</html>
注:1.
<meta charset="utf-8">
告诉浏览器应该采用哪种编码方式打开该页面,这种编码方式要和文件的编码方式相同,不然会出乱码!!!
2.windows操作系统的浏览器在没有指定任何编码方式时,会默认采用GBK的编码方式打开,这是因为我们的windows操作系统时简体中文环境
效果:
2.2 标题字:<h1></h1>
标题字符号分为1~6六个等级,如下代码所示:
<html>
<head>
<meta charset="utf-8">
<title>基本标签</title>
</head>
<body>
<!--标题字-->
<h1>一级标题字</h1>
<h2>二级标题字</h2>
<h3>三级标题字</h3>
<h4>四级标题字</h4>
<h5>五级标题字</h5>
<h6>六级标题字</h6>
</body>
</html>
效果:
2.3 换行标记:<br>
或<br/>
换行标记为独目标记,如下代码所示:
<html>
<head>
<meta charset="utf-8">
<title>基本标签</title>
</head>
<body>
<!--换行标记-->
hello <br />world
</body>
</html>
效果:
2.4 水平线:<hr>
或<hr/>
水平线也为独目标记,如下代码所示:
<html>
<head>
<meta charset="utf-8">
<title>基本标签</title>
</head>
<body>
<!--水平线-->
hello world
<hr />
hello world
<hr/>
</body>
</html>
效果:
还可以给水平线指定颜色,如下所示:
<html>
<head>
<meta charset="utf-8">
<title>基本标签</title>
</head>
<body>
<!--水平线-->
hello world
<hr color="red">
hello world
<hr / color="grenn">
</body>
</html>
效果:
2.5 预留格式:<pre></pre>
保留格式,在HTML源码什么格式,到网页还是这个格式,如下代码所示:
<html>
<head>
<meta charset="utf-8">
<title>基本标签</title>
</head>
<body>
<!--预留格式-->
<pre>
for(int i; i < 100; i++){
System.out.println("i = " + i);
}
</pre>
</body>
</html>
效果:
2.6 粗体字:<b></b>
代码:
<html>
<head>
<meta charset="utf-8">
<title>基本标签</title>
</head>
<body>
<!--粗体字-->
<b>粗体字</b>
</body>
</html>
效果:
2.7 斜体字:<i></i>
代码:
<html>
<head>
<meta charset="utf-8">
<title>基本标签</title>
</head>
<body>
<!--斜体字-->
<i>斜体字</i>
</body>
</html>
效果:
2.8 插入字:<ins></ins>
代码:
<html>
<head>
<meta charset="utf-8">
<title>基本标签</title>
</head>
<body>
<!--插入字-->
<ins>插入字</ins>
</body>
</html>
效果:
2.9 删除字
代码:
<html>
<head>
<meta charset="utf-8">
<title>基本标签</title>
</head>
<body>
<!--删除字-->
<del>删除字</del>
</body>
</html>
效果:
2.10 右上角标:<sup></sup>
代码:
<html>
<head>
<meta charset="utf-8">
<title>基本标签</title>
</head>
<body>
<!--右上角标-->
10<sup>2</sup>
</body>
</html>
效果:
2.11 右下角标:<sub></sub>
代码:
<html>
<head>
<meta charset="utf-8">
<title>基本标签</title>
</head>
<body>
<!--右下角标-->
H<sub>2</sub>O
</body>
</html>
效果:
2.12 font字体标签:<font></font>
color
指定字体颜色,size
指定字体尺寸
代码:
<html>
<head>
<meta charset="utf-8">
<title>基本标签</title>
</head>
<body>
<!--font字体标签-->
<font color="red", size="12">hello world</font>
</body>
</html>
效果:
2.13 锚点链接
当我们点击链接,快速定位到页面的某个位置
代码:
<a href="#career">职业生涯</a>
<h2 id="career">XXX的职业生涯</h2>
点击 “职业生涯” 会跳转到 “XXX的职业生涯” 位置
三、实体符号
3.1 空格:
代码:
<html>
<head>
<meta charset="utf-8">
<title>实体符号</title>
</head>
<body>
<!--空格-->
a b c d
</body>
</html>
效果:
3.2 小于号:b<
,大于号:a>
代码:
<html>
<head>
<meta charset="utf-8">
<title>实体符号</title>
</head>
<body>
<!--大于号,小于号-->
b<a>c
</body>
</html>
效果:
四、表格
4.1 基础语法
代码:
<html>
<head>
<meta charset="utf-8">
<title>表格</title>
</head>
<body>
<!--表格基础语法-->
<table>
<tr>
<td>表格第一行第一列</td>
<td>表格第一行第二列</td>
<td>表格第一行第三列</td>
</tr>
<tr>
<td>表格第二行第一列</td>
<td>表格第二行第二列</td>
<td>表格第二行第三列</td>
</tr>
</table>
</body>
</html>
效果:
4.2 边框线:border
关键字
代码:
<html>
<head>
<meta charset="utf-8">
<title>表格</title>
</head>
<body>
<!--表格基础语法-->
<table border="1px">
<tr>
<td>表格第一行第一列</td>
<td>表格第一行第二列</td>
<td>表格第一行第三列</td>
</tr>
<tr>
<td>表格第二行第一列</td>
<td>表格第二行第二列</td>
<td>表格第二行第三列</td>
</tr>
</table>
</body>
</html>
注:1px代表一像素
效果:
4.3 宽度与高度:width
和height
代码1:
<html>
<head>
<meta charset="utf-8">
<title>表格</title>
</head>
<body>
<!--表格基础语法-->
<table border="1px", width="500px", height="500px">
<tr>
<td>表格第一行第一列</td>
<td>表格第一行第二列</td>
<td>表格第一行第三列</td>
</tr>
<tr>
<td>表格第二行第一列</td>
<td>表格第二行第二列</td>
<td>表格第二行第三列</td>
</tr>
</table>
</body>
</html>
效果:
宽度和高度传入的值除了是像素外,还可以传百分比,表示占显示框百分之几
代码2:
<html>
<head>
<meta charset="utf-8">
<title>表格</title>
</head>
<body>
<!--表格基础语法-->
<table border="1px", width="50%", height="50%">
<tr>
<td>表格第一行第一列</td>
<td>表格第一行第二列</td>
<td>表格第一行第三列</td>
</tr>
<tr>
<td>表格第二行第一列</td>
<td>表格第二行第二列</td>
<td>表格第二行第三列</td>
</tr>
</table>
</body>
</html>
效果:
4.4 布局:align
align
使用在<table></table>
中,表示整张表的布局:
代码
<html>
<head>
<meta charset="utf-8">
<title>表格</title>
</head>
<body>
<!--表格基础语法-->
<table border="1px", width="500px", height="500px", align="center">
<tr>
<td>表格第一行第一列</td>
<td>表格第一行第二列</td>
<td>表格第一行第三列</td>
</tr>
<tr>
<td>表格第二行第一列</td>
<td>表格第二行第二列</td>
<td>表格第二行第三列</td>
</tr>
</table>
</body>
</html>
效果:
align
使用在<tr></tr>
中,表示一行数据的布局:
代码:
<html>
<head>
<meta charset="utf-8">
<title>表格</title>
</head>
<body>
<!--表格基础语法-->
<table border="1px", width="500px", height="500px", align="center">
<tr align="center">
<td>(1, 1)</td>
<td>(1, 2)</td>
<td>(1, 3)</td>
</tr>
<tr>
<td>(2, 1)</td>
<td>(2, 2)</td>
<td>(2, 3)</td>
</tr>
</table>
</body>
</html>
效果:
align
使用在<td></td>
中,表示具体某一个数据的布局:
代码:
<html>
<head>
<meta charset="utf-8">
<title>表格</title>
</head>
<body>
<!--表格基础语法-->
<table border="1px", width="500px", height="500px", align="center">
<tr align="center">
<td>(1, 1)</td>
<td>(1, 2)</td>
<td>(1, 3)</td>
</tr>
<tr>
<td>(2, 1)</td>
<td>(2, 2)</td>
<td align="right">(2, 3)</td>
</tr>
</table>
</body>
</html>
效果:
4.5 单元格合并:colspan
和rowspan
colspan
表示列合并,rowspan
表示行合并
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>表格</title>
</head>
<body>
<!-- 表格合并 -->
<table border="1px", width = 50%>
<tr>
<td rowspan="2">a</td>
<td colspan="2">b</td>
</tr>
<tr>
<td>e</td>
<td>f</td>
</tr>
</table>
</body>
</html>
效果:
4.6 th标签:<th></th>
<th></th>
相当于<td></td>
,但是里面的内容自动加粗并居中
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>表格</title>
</head>
<body>
<!--<th>标签-->
<table border="1px", width = 50%>
<tr>
<th>员工编号</th>
<th>员工姓名</th>
<th>员工薪资</th>
</tr>
<tr>
<td>1</td>
<td>Jams</td>
<td>1000</td>
</tr>
<tr>
<td>2</td>
<td>JOJO</td>
<td>1000000</td>
</tr>
</table>
</body>
</html>
效果:
4.7 thead, tbody, tfoot标签
将整个表格分为thead, tbody, tfoot三个部分,有利于后期JavaScript操作
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>表格</title>
</head>
<body>
<!--thead, tbody, tfoot标签-->
<table border="1px", width = 50%>
<thead> <tr>
<th>员工编号</th>
<th>员工姓名</th>
<th>员工薪资</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>Jams</td>
<td>1000</td>
</tr>
<tr>
<td>2</td>
<td>JOJO</td>
<td>1000000</td>
</tr>
</tbody>
<tfoot>
<tr>
<td>x</td>
<td>y</td>
<td>z</td>
</tr>
</tfoot>>
</table>
</body>
</html>
效果:
五、背景颜色和背景图片:bgcolor
和background
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>背景</title>
</head>
<body bgcolor="green">
<!--背景颜色-->
</body>
</html>
效果:
将背景图片导入到目录中:
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>背景</title>
</head>
<body background="images/阿尼亚.jpg">
<!--背景图片-->
</body>
</html>
效果:
六、图片
6.1 设置图片:<img></img>
与背景图片不同,该图片是网页的元素
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>图片</title>
</head>
<body bgcolor="green">
<img src="images/百度logo.jpg""/>
</body>
</html>
效果:
6.2 图片大小:width
关键字
指定图片的宽度,高度会等比缩放,不要指定图片的高度
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>图片</title>
</head>
<body bgcolor="green">
<img src="images/百度logo.jpg", width="1000px"/>
</body>
</html>
效果:
6.3 提示信息:title
和alt
title
设置鼠标悬停时的提示信息
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>图片</title>
</head>
<body bgcolor="green">
<img src="images/百度logo.jpg", width="1000px", title="点击查看大图"/>
</body>
</html>
效果:
alt
用来设置当图片加载失败的时候的提示信息
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>图片</title>
</head>
<body bgcolor="green">
<img src="images/百度logo.jpg", width="200px", title="点击查看大图"/>
<img src="i" alt="图片加载失败">
</body>
</html>
效果:
七、超链接
<a></a>
标签中有一个属性,href
属性,热链接,用来指定链接的路径
7.1 文本做超链接
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>超链接</title>
</head>
<body>
<a href="http://www.baidu.com">百度</a>
</body>
</html>
效果:
点击即可传送到百度。
7.2 图片做超链接
标签嵌套使用
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>超链接</title>
</head>
<body>
<a href="http://www.baidu.com"><img src="images/百度logo.jpg"></a>
</body>
</html>
7.3 超链接的target
属性
target
有4个值:
_blank
:点击超链接,打开一个新的窗口
_self
:点击超链接,在当前窗口打开
_parent
:点击超链接,在当前窗口的父窗口打开
_top
:点击超链接,在当前窗口的顶级窗口打开
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>超链接</title>
</head>
<body>
<a href="http://www.baidu.com", target="_self"><img src="images/百度logo.jpg"></a>
<a href="https://www.bilibili.com/", target="_blank">b站</a>
</body>
</html>
八、列表
8.1 无序列表:<ul></ul>
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>无序列表</title>
</head>
<body>
<ul>
<li>中国
<ul>
<li>北京</li>
<li>上海</li>
<li>江苏
<ul>
<li>苏州
<ul>
<li>相城区</li>
</ul>
</li>
<li>扬州</li>
</ul>
</li>
</ul>
</li>
<li>日本</li>
<li>韩国</li>
</ul>
</body>
</html>
效果:
注:<ul></ul>
有关键字type
,可以指定文字前面的标题样式
8.2 有序列表:<ol></ol>
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>有序列表</title>
</head>
<body>
<ol>
<li>动物
<ol>
<li>狗
<ol>
<li>金毛</li>
<li>拉布拉多</li>
<li>萨摩耶</li>
</ol>
</li>
<li>猫</li>
<li>鸟</li>
</ol>
</li>
<li>植物</li>
<li>人类</li>
</ol>
</body>
</html>
效果:
注:<ol></ol>
也有关键字type
,可以指定文字前面的标题样式
九、表单:<form></form>
表单的作用: 发送请求,并且携带数据给服务器。(收集用户信息)
9.1 表单的基础语法
<form></form>
标签中有一个action
属性,这个属性和超链的herf
相同
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<form action="http://www.baidu.com">
<input type="submit" value="百度">
</form>
</body>
</html>
效果:
点击该按钮就可以跳转到百度页面。
注:1.
<input>
的type
属性必须是submit
才能发送请求。
2.<input>
的value
属性是指定按钮显示的内容。
9.2 用户登陆的简单实现
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<form action="http://192.168.145.2:8080/crm/login">
<hr>
用户名:<input type="text" name="x">
<br>
密码:<input type="password" name="y">
<br>
<input type="submit" value="登录">
<hr>
</form>
</body>
</html>
http://192.168.145.2:8080/crm/login:
协议:http协议
访问服务器的IP地址:192.168.145.2
访问该服务器的哪个软件:8080端口对应的服务
/com/login:是该服务器上的某个资源名
注:表单最终提交时,
<input>
的name
属性至关重要,有name
的才会提交,没有name
是不会提交的,并且向浏览器提交的数据格式是
url?name1=value1&name2=value2&name3=value3
,value
是输入的或者指定的,该提交格式是W3C指定的格式,所有浏览器都是这样。这样的意义:后台的Java程序接收到这个信息后,会按照这个格式去拆分字符串,拆分之后存储到数据库中。
效果:
输入任意用户名和密码后:
9.3 用户注册的实现
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>注册</title>
</head>
<body>
<form action="http://localhost:80/crm/register">
<hr>
用户名:<input type="text" name="username">
<br>
密码:<input type="password" name="password">
<br>
性别:<input type="radio" name="sex" checked> 男
<input type="radio" name="sex"> 女
<br>
兴趣:
<input type="checkbox" name="hobby" checked>打篮球
<input type="checkbox" name="hobby">打游戏
<input type="checkbox" name="hobby">健身
<input type="checkbox" name="hobby">摄影
<br>
学历:
<select name="quali">
<option value="xx" selected>小学</option>
<option value="cz">初中</option>
<option value="gz">高中</option>
<option value="zk">专科</option>
<option value="bk">本科</option>
<option value="ss">硕士</option>
</select>
<br>
<textarea name="jj" id="" cols="30" rows="10"></textarea>
<br>
<input type="submit" value="注册">
<hr>
</form>
</body>
</html>
- 性别采用了单选框,
type
属性为radio
。同一组单选框的name
属性一定要一样,否则就达不到单选的目的。选择某个选项为默认选项使用checked
关键字;- 兴趣采用了复选框,
type
属性为checkbox
。选择某个选项为默认选项使用checked
关键字;- 学历采用了下拉框,
<select> <option></option> </select>
,选择某个选项为默认选项使用selected
关键字;- 简历采用文本域,
<textarea></textarea>
效果:
输入相应内容后:
9.4 下拉列表
size
属性可设置下拉列表一次最多显示的条数,multiple
属性表示下拉支持多选
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>下拉列表</title>
</head>
<body>
<select name="province" size="3" multiple>
<option value="jiangsu">江苏</option>
<option value="henan">河南</option>
<option value="hebei">河北</option>
<option value="sichuan">四川</option>
<option value="fujian">福建</option>
<option value="anhui">安徽</option>
</select>
</body>
</html>
效果:
9.5 file控件
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>file控件</title>
</head>
<body>
文件:<input type="file">
</body>
</html>
后台Java程序通过IO流的方式接收这个文件
效果:
hidden
9.6 隐藏域控件 不希望用户在浏览器上看到,但是希望这个数据可以提交
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>hidden控件</title>
</head>
<body>
<form action="http:127.0.0.1:8080/crm/save">
<input type="hidden" name="usercode" value="11111">
<input type="submit" value="提交">
</form>
</body>
</html>
效果:
点击提交后的结果:
9.7 readeonly
和disabled
控件
readonly
和disabled
都是只读不可修改。但是readonly
修饰的可以提交给服务器,disabled
不行。
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>readonly和disabled控件</title>
</head>
<body>
<form action="http://www.baidu.com">
<input type="text" name="orgcode" value="11111" readonly>
<br>
<input type="text" name="usercode" value="22222" disabled>
<br>
<input type="submit" value="提交">
</form>
</body>
</html>
效果:
点击提交以后:
9.8 maxlength
属性
限定输入的字符长度
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>maxlength属性</title>
</head>
<body>
<input type="text" name="ceshi" maxlength="4">
</body>
</html>
效果:
9.9 <label></label>
标签
使用场景:在选择单选框时,由于单选框过小很难选中,这时需要设置点击对应内容也能选中单选框,增加用户体验
代码:
性别:
<input type="radio" name="sex" id="nan">
<label for="nan">男</label>
<input type="radio" name="sex" id="nv">
<label for="nv">女</label>
效果:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0n7NyZic-1660793887740)(C:\Users\d_hf\AppData\Roaming\Typora\typora-user-images\image-20220818104029978.png)]
十、id
属性
- 在HTML中任何一个节点上,都有
id
属性- 在同一网页上,
id
属性是不能重复的id
代表这个节点,,id
是这个节点的身份证号- 后期学习了JavaScript后,我们要通过JavaScript对HTML的节点进行增删改,对节点增删改的时候,需要先获取到该节点的对象,id属性可以让我们方便的获取到该节点的对象
- JavaScript通过
id
属性获取到节点对象,对节点进行操作可以使网页产生动态效果
代码:
<!DOCTYPE html>
<html id="myhtml">
<head id="myhead">
<meta charset="utf-8" id=mymeta"">
<title id="mytitle">id属性</title>
</head>
<body id="mybody"">
<form action="" id="myform">
<ul id="myul">
<li id="myid"></li>
</ul>
</form>
</body>
</html>
以上被称为html文档(doucument),或者简称为DOM树
十一、div
和span
图层
- 每一个图层在网页当中都是一个独立的盒子,图层最主要的作用就是网页布局。
table
表格也可用来布局,但是格式过于死板,不灵活,div
和span
布局更加灵活- 每一个
div
和span
左上角的顶点,都有x轴和y轴,通过这个坐标可以定位div在网页中的位置。- div和span的区别:
div
默认情况下独自占用一行,span
不会独占行div
可以嵌套