目录
一、HTML结构
超文本标记语言(Hyper Text Markup Language)
HTML 代码是由“标签”构成的。
形如:
<body>hello</body>
• 标签名(body)放到<>中
• 大部分标签成对出现,<body>为开始标签,</body>为结束标签.
• 少数标签是由开始标签,称为"单标签"
• 开始标签和结束标签之间,写的是标签的内容(hello)
• 开始标签中可能会带有"属性",id属性相当于给这个标签设置了一个唯一的标识符(身份证号码)
<body id="myId">hello</body>
HTML 文件基本结构
<html>
<head>
<title>第一个页面</title>
</head>
<body>
hello world
</body>
</html>
• html 标签是整个 html 文件的根标签(最顶层标签)
• head 标签中写页面的属性
• body 标签中写的是页面上显示的内容
• title 标签中写的是页面的标题
标签层次结构
<html>
<head>
<title>第一个页面</title>
</head>
<body>
hello world
</body>
</html>
• head 和 body 是html 的子标签(html 就是 head 和 body 的父标签)
• title 是head 的子标签.head 是title 的父标签.
• head 和 body 之间是兄弟关系
二 HTML 常见标签
2.1 注释标签
注释不会显示在界面上,目的是提高代码的可读性
<!-- 我是注释 -->
2.2 标题标签:h1-h6
有六个,从 h1 到 h6 数字越大,则字体越小
<h1> hello </h1>
<h2> hello </h2>
<h3> hello </h3>
<h4> hello </h4>
<h5> hello </h5>
<h6> hello </h6>
2.3 段落标签: p
在 p 标签中的内容为一段
<p> 这是一个段落 </p>
• p标签之间存在一个空隙
• 当前的p标签描述的段落,前面还没有缩进
• 自动根据浏览器的宽度来排版
• html 内容首尾处的换行,空格均无效
• 在 html 中文字之间输入的多个空格只相当于一个空格
• 在 html 中直接输入换行不会真的换行,而是相当于一个空格
2.4 换行标签: br
hello<br/>world
• br 是 break 的缩写,表示换行
• br 是一个单标签(不需要结束标签)
• br标签不想 p 标签那样带有一个很大的空隙.
• <br/> 是规范写法.不建议写成<br>
2.5标签格式化
<strong> strong</strong>
<b>b 加粗</b>
<em>倾斜</em>
<i>倾斜</i>
<del>删除线</del>
<s>删除线</s>
<ins>下划线</ins>
<u> 下划线</u>
• 加粗: strong 标签和b 标签
• 倾斜: em 标签 和 i 标签
• 删除线: del 标签 和 s 标签
• 下划线: ins 标签 和 u 标签
2.6 图片标签
img 标签必须带有src 属性,表示图片的路径.
<!-- 相对路径,此时要把这个图片文件放到和html中的同级目录中 -->
<img src="course.jpg" width="100px" height="200px">
<!-- 若在上一级目录文件中,相对路径可用如下方式表示 -->
<img src="..\course.jpg" width="100px" height="200px">
<hr>
<!-- 绝对路径 -->
<img src="E:\CODE\VSCode\panda.jpg" width="300px" height="300px">
<hr>
<!-- 网络路径 -->
<img src="https://gd-hbimg.huaban.com/8bfe08162f50181c287ef3e2c9d16807e24b5bef2e7905-BV3Ogq_fw480webp" alt="这是一簇花" title="花" width=100px height=200px><br>
<img src="https://gd-hbimg.huaban.com/d9f99631a4e78bb592ca2b7d57698a024fa84f259efe1a-EGoH7V_fw1200" width="200" height="300">
• alt: 替换文本.当文本不能正确显示的时候,会显示一个替换的文字
• title: 提示文本,鼠标放到图片上,就会有提示
• width/height: 控制宽度和高度,高度和宽度一般改一个就行,另外一个会等比例缩放,否则图片就会失衡.
• border: 边框, 参数是宽度的像素,但是一般使用 CSS来设定.
注意:
1.属性可以有多个,但是不能写到标签之前
2.属行之间用空格分割,可以是多个空格,也可以是换行
3.属性之间不分先后顺序
4. 属性使用"键值对"的格式来表示.
2.7 超链接标签: a
<a href="https://www.baidu.com/" target="blank">百度</a>
• href: 必须具备,表示点击后会跳转到哪个页面
• target: 打开方式, 默认_self. 如果是 _blank. 则用新的标签页打开.
• 空连接: 使用 # 在 href 中占用.
<a href="#">空链接</a><br>
• 下载链接: href 对应的路径是一个文件.(可以是.zip 文件)
<a href="test.zip">下载文件</a>
• 网页元素链接: 可以给图片等任何元素添加链接(把元素放到 a 标签中)
<a href="https://www.sogou.com/">
<img src="https://gd-hbimg.huaban.com/d9f99631a4e78bb592ca2b7d57698a024fa84f259efe1a-EGoH7V_fw1200" width="200" height="300">
</a>
• 锚点链接:可以快速定位到页面中的某个位置
<a href="#panda"><strong> strong</strong></a>
<a href="#图片"> <b>b 加粗</b></a>
<img id="panda" src="E:\CODE\VSCode\panda.jpg" width="300px" height="300px">
<img id="图片" src="https://gdhbimg.huaban.com/d9f99631a4e78bb592ca2b7d57698a024fa84f259efe1a-EGoH7V_fw1200" width="200" height="300"><br>
禁止 a 标签跳转:<a href =" javascript : void(0) ;"> 或者 <a href = " javascript:;">
2.8 表格标签
• table 标签: 表示整个表格
• tr : 表时表格的一行
• td: 表示一个单元格
• th: 表示标头单元格.会居中加粗
• thead: 表格的头部区域(注意和 th 的区别, 范围是要比 th 大的)
• tbody: 表格得到主体区域.
<table border="1" width="200px" heigth="300px">
<thead>
<th>姓名</th>
<th>年龄</th>
<th>性别</th>
</thead>
<tbody>
<tr>
<td>张三</td>
<td>18</td>
<td>男</td>
</tr>
<tr>
<td>李四</td>
<td>20</td>
<td>女</td>
</tr>
<tr>
<td>王五</td>
<td>22</td>
<td>男</td>
</tr>
</tbody>
</table>
合并单元格
(1) 跨行合并 : rowspan="n"
(2) 跨列合并 : colspan="n"
步骤:
1.先确定跨行还是跨列
2.找好目标单元格(跨列合并,左侧是目标单元格;跨行合并,上方是目标单元格)
3.删除多余的单元格
<table border="1" width="200px" heigth="300px">
<thead>
<th>姓名</th>
<th>年龄</th>
<th>性别</th>
</thead>
<tbody>
<tr>
<td>张三</td>
<td rowspan="2">18</td>
<td>男</td>
</tr>
<tr>
<td>李四</td>
<td>女</td>
</tr>
<tr>
<td>王五</td>
<td colspan="2">22|男</td>
</tr>
</tbody>
</table>
2.9 列表标签
<h3>无序列表</h3>
<ul>
<li>java</li>
<li>python</li>
<li>c++</li>
</ul>
<P></P>
<h3>有序列表</h3>
<ol>
<li>事务</li>
<li>回滚</li>
<li>连表查询</li>
</ol>
<p></p>
<h3>自定义列表</h3>
<dl>
<dt>我的老婆们</dt>
<dd>阿猫</dd>
<dd>阿狗</dd>
<dd>阿兔</dd>
</dl>
• 元素之间是并列关系
• ul/ol 中只能放 li 不能放其他标签, dl 中只能放 dt 和 dd
• li 中可以放其他标签
• 列表中带有自己的样式, 可以使用 CSS 来修改
2.10 表单标签
表单是让客户输入信息的重要途径
分成两个部分:
• 表单域: 包含表单元素的区域,重点是 form 标签
• 表单控件: 输入框,提交按钮等. 重点是 input 标签
form 标签 :
<form action="https://www.javacn.site/" method="get">
...
</form>
input 标签:
<form action="https://www.javacn.site/" method="get">
<!-- 文本框 -->
姓名:<input type="text"><br>
<!-- 密码框 -->
密码:<input type="password"><br>
<!-- 单选框 -->
性别:<input type="radio" name="sex" >男 <input type="radio" name="sex">女<br>
<!-- 复选框 -->
爱好:<input type="checkbox"> 吃饭 <input type="checkbox"> 睡觉 <input type="checkbox"> 瑟瑟<br>
<!-- 普通按钮 -->
<input type="button" value="普通按钮"><br>
<!-- 当前点击了没有反应,需要搭配 JS 使用 -->
<input type="button" value="我是个按钮" onclick="alert('hello')"><br>
<!-- 提交按钮(按钮必须放到 form 标签内) -->
<input type="submit" value="提交" ><br>
<!-- 清空按钮 -->
<input type="reset" value="清除"><br>
<!-- 选择文件标签 -->
<input type="file"><br>
所属院校:
<select>
<option>北京大学</option>
<!-- selected 可以指定默认大学,默认是清华大学 -->
<option selected="selected">南京大学</option>
<option>清华大学</option>
<option>河南大学</option>
</select>
<br>
简介:
<textarea rows="4" cols="50">
</textarea>
</form>
对应运行截图:
2.11 无语义标签: div & span
div 标签,division 的缩写, 含义是分割
span 标签, 含义是跨度
这两个用于网页布局:
• div 是独占一行,是一个大盒子
• span 不独占一行,是一个小盒子
三 HTML 特殊字符
空格:
小于号: <
大于号: >
按位与: &