目录
概念
全称Hyper Text Markup Language 超文本标记语言,是最基础的网页开发语言。
- 超文本:
超文本是用超链接的方法,将各种不同空间的文字信息组织在一起的网状文本。 - 标记语言:
由标签构成的语言。 如 html,xml。标记语言不是编程语言。
快速入门
语法
-
html文档后缀名 .html 或者 .htm
-
标签分为
- 围堵标签:有开始标签和结束标签。如 <html></html>
- 自闭合标签:开始标签和结束标签在一起。如 <br/>
-
标签可以嵌套:
需要正确嵌套,不能你中有我,我中有你
错误:<a><b></a></b>
正确:<a><b></b></a> -
在开始标签中可以定义属性。属性是由键值对构成,值需要用引号(单双都可)引起来。
-
html的标签不区分大小写,但是建议使用小写。
简单示例如下:
<html>
<head>
<title>title</title>
</head>
<body>
<FONT color='red'>Hello World</font><br/>
<font color='green'>Hello World</font>
</body>
</html>
基本标签
HTML 参考手册可以查看完整的html标签及其功能。
1. 文件标签
文件标签是构成html最基本的标签。
html: html文档的根标签。
head:头标签。用于指定html文档的一些属性,引入外部的资源。
title:标题标签。
body:体标签。
<!DOCTYPE html>:html5中定义该文档是html文档
2. 文本标签
也就是和文本有关的标签。
注释:<!-- 注释内容 -->
<h1> to <h6>:标题标签, h1~h6:字体大小逐渐递减。
<p>:段落标签
<br>:换行标签
<hr>:展示一条水平线
<b>:字体加粗
<i>:字体斜体
<font>: 字体标签
<center>: 文本居中
可定义属性举例:
- color:颜色
1. 英文单词:red,green,blue
2. rgb(值1,值2,值3):值的范围:0~255 如 rgb(0,0,255)
3. #值1值2值3:值的范围:00~FF之间。如: #FF00FF - width:宽度
1. 数值:width=‘20’ ,数值的单位,默认是 px(像素)
2. 数值%:占比相对于父元素的比例 - size:高度
- align:对齐方式
|–center:居中
|–left:左对齐
|–right:右对齐
小示例:
<!DOCTYPE html>
<html lang="ch">
<head>
<meta charset="UTF-8">
<title>比特大陆简介</title>
</head>
<body>
<header>
<div id="header">
<h1>
公司简介
</h1>
</div>
</header>
<hr color="#ffd700">
<p>
<font color="#FF0000">比特大陆科技控股公司</font>(以下简称比特大陆,英文BITMAIN)成立于2013年,是一家<b><i>全球领先的科技公司</i></b>,其产品包括算力芯片、算力服务器、算力云,主要应用于区块链和人工智能领域。
</p>
<p>
比特大陆总部位于北京市海淀区,在香港、新加坡、美国等地设有研发中心。
</p>
<p>
本着聚焦主业,有序横向发展,成为一家世界顶尖的科技公司的企业愿景,比特大陆积极拓展算力中心的全球布局,不断提高区块链云计算的资源利用率,探索发现环境友好型区块链云计算技术。
</p>
<hr color="#ffd700">
<footer>
<div id="footer">
<font color="gray" size="2">
<center>
Copyright © 2020 BitMain Technologies Holding Company. All Rights Reserved.比特大陆科技控股公司<br>
京公网安备 11010802022514号 京ICP备15028173号-2
</center>
</font>
</div>
</footer>
</body>
</html>
页面展示:
3. 图片标签
img:展示图片
- 属性:
* src:指定图片的位置
*alt:图片的默认文字(如图片加载失败时,将会显示) - 代码:
<!--展示一张图片 img-->
<img src="image/jingxuan_2.jpg" align="right" alt="古镇" width="500" height="500"/>
<!--
相对路径
* 以.开头的路径
* ./:代表当前目录 ./image/1.jpg
* ../:代表上一级目录
-->
<img src="./image/jiangwai_1.jpg">
<img src="../image/jiangwai_1.jpg">
4. 列表标签
- 有序列表:
- ol 定义一个有序列表,可指定type、start等属性
- li 列表的每一项
- 无序列表:
- ul 定义一个无序列表
- li 列表的每一项
示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>列表标签</title>
</head>
<body>
<!--有序列表 ol-->
早上起床干的事情
<ol type="A" start="5">
<li>睁眼</li>
<li> 看手机</li>
<li> 穿衣服</li>
<li> 洗漱</li>
</ol>
<!-- 无序列表 ul-->
早上起床干的事情
<ul type="disc">
<li>睁眼</li>
<li> 看手机</li>
<li> 穿衣服</li>
<li> 洗漱</li>
</ul>
早上起床干的事情
<ul type="square">
<li>睁眼</li>
<li> 看手机</li>
<li> 穿衣服</li>
<li> 洗漱</li>
</ul>
早上起床干的事情
<ul type="circle">
<li>睁眼</li>
<li> 看手机</li>
<li> 穿衣服</li>
<li> 洗漱</li>
</ul>
</body>
</html>
效果:
5. 链接标签
a标签:定义一个超链接
属性:
- href:指定访问资源的URL(统一资源定位符)
- target:指定打开资源的方式
_self:默认值,在当前页面打开
_blank:在空白页面打开
示例:
<!--超链接 a-->
<a href="http://www.baidu.com">点我</a>
<br>
<a href="http://www.baidu.com" target="_self">点我</a>
<br>
<a href="http://www.baidu.com" target="_blank">点我</a>
<br>
<a href="./5_列表标签.html">列表标签</a><br>
<a href="mailto:[email protected]">联系我们</a>
<br>
<a href="http://www.baidu.com"><img src="image/jiangwai_1.jpg"></a>
效果:
6. div和span
这两个标签常用于与CSS联合使用来控制内容的样式。
- div:每一个div占满一整行,属于块级标签
- span:多个span标签内的内容会在同一行展示,属于行内标签、内联标签
7. 语义化标签
html5中为了提高程序的可读性,提供了一些标签。
举例其中两个:
-
:页眉
8. 表格标签
table:定义表格
此标签的常用属性:
属性 | 作用 |
---|---|
width | 宽度 |
border | 边框 |
cellpadding | 定义内容和单元格的距离 |
cellspacing | 定义单元格之间的距离,如果指定为0,则单元格的线会合为一条 |
bgcolor | 背景色 |
align | 对齐方式 |
tr:定义行
属性 | 作用 |
---|---|
bgcolor | 背景色 |
align | 对齐方式 |
td:定义单元格
属性 | 作用 |
---|---|
colspan | 合并列 |
rowspa | 合并行 |
th:定义表头单元格
以下几个标签虽然没有实际的效果,但是常用来提高可读性或控制样式:
<caption>:表格标题
<thead>:表示表格的头部分
<tbody>:表示表格的体部分
<tfoot>:表示表格的脚部分
示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>表格标签</title>
</head>
<body>
<table border="1" width="50%" cellpadding="0" cellspacing="0" bgcolor="#faebd7" align="center">
<tr>
<!-- <td>编号</td>
<td>姓名</td>
<td>成绩</td>-->
<th>编号</th>
<th>姓名</th>
<th>成绩</th>
</tr>
<tr>
<td>1</td>
<td>小龙女</td>
<td>100</td>
</tr>
<tr>
<td>2</td>
<td>杨过</td>
<td>50</td>
</tr>
</table>
<hr>
<table border="1" width="50%" cellpadding="0" cellspacing="0" bgcolor="#faebd7" align="center">
<thead>
<caption>学生信息表</caption>
<tr>
<!-- <td>编号</td>
<td>姓名</td>
<td>成绩</td>-->
<th>编号</th>
<th>姓名</th>
<th>成绩</th>
</tr>
</thead>
<tbody>
<tr bgcolor="#7fffd4" align="center">
<td>1</td>
<td>小龙女</td>
<td>100</td>
</tr>
<tr>
<td>2</td>
<td>杨过</td>
<td>50</td>
</tr>
</tbody>
<tfoot>
<tr>
<td>3</td>
<td>尹志平</td>
<td>10</td>
</tr>
</tfoot>
</table>
<hr>
<table border="1" width="50%" cellpadding="0" cellspacing="0" bgcolor="#faebd7" align="center">
<tr>
<th rowspan="2">编号</th>
<th>姓名</th>
<th>成绩</th>
</tr>
<tr>
<td>小龙女</td>
<td>100</td>
</tr>
<tr>
<td>2</td>
<td colspan="2">杨过</td>
</tr>
</table>
<hr>
</body>
</html>
效果:
案例:旅游网站首页
- 确定使用table来完成布局
- 如果某一行只有一个单元格,则使用
<tr><td></td></tr>
- 如果某一行有多个单元格,则使用
<tr>
<td>
<table></table>
</td>
</tr>
4.代码实现
详见代码与图片资源。
5.效果
表单标签
用于采集用户输入的数据,用于和服务器进行交互。一个表单可包含多个表单项。
form标签
form标签:用于定义表单,也就是定义了一个范围,指定了采集用户数据的范围。
属性:
-
action:指定提交数据的URL(一般是服务器的某项资源)
-
method: 指定提交方式,一共7种,post和get这2种比较常用
-
name:指定参数名称。表单项中的数据要想被提交,必须指定其name属性。
例:
<form action="#" method="post">
用户名:<input type="text" name="username"><br>
密码:<input name="password"><br>
<input type="submit" value="登录" >
</form>
效果:
表单项标签
分为三种标签:input、select、textarea
1.input
<input> 标签用于搜集用户信息。
根据不同的 type 属性值,输入字段拥有很多种形式。输入字段可以是文本字段、复选框、掩码后的文本控件、单选按钮、按钮等等。
(1)type属性:列举如下
- text:文本输入框,默认值
- placeholder:指定输入框的提示信息,当输入框的内容发生变化,会自动清空提示信息
- password:密码输入框
<label for="username"> 用户名 </label>:<input type="text" name="username" placeholder="请输入用户名" id="username"><br>
密码:<input type="password" name="password" placeholder="请输入密码"><br>
- radio:单选框
注意:
1. 要想让多个单选框实现单选的效果,则多个单选框的name属性值必须一样。
2. 一般会给每一个单选框提供value属性,指定其被选中后提交的值
3. checked属性,可以指定默认值
性别:<input type="radio" name="gender" value="male" > 男
<input type="radio" name="gender" value="female" checked> 女
- checkbox:复选框
- 一般会给每一个单选框提供value属性,指定其被选中后提交的值
- checked属性,可以指定默认值
爱好:<input type="checkbox" name="hobby" value="shopping"> 逛街
<input type="checkbox" name="hobby" value="java" checked> Java
<input type="checkbox" name="hobby" value="game"> 游戏<br>
- file:文件选择框
图片:<input type="file" name="file"><br>
- hidden:隐藏域,用于提交一些信息。
隐藏域:<input type="hidden" name="id" value="aaa"> <br>
界面上看不到,但是该标签中写的隐藏信息会在表单提交时被提交。
按钮:
- submit:提交按钮。可以提交表单
- button:普通按钮
- image:图片提交按钮,src属性指定图片的路径
<input type="submit" value="登录" >
<input type="button" value="一个按钮" ><br>
<input type="image" src="img/regbtn.jpg">
(2)label属性:指定输入项的文字描述信息
label的for属性一般会和 input 的 id属性值 对应。如果对应了,则点击label区域,会让input输入框获取焦点。
2.select: 下拉列表
子元素:option,指定列表项
省份:<select name="province">
<option value="">--请选择--</option>
<option value="1">北京</option>
<option value="2">上海</option>
<option value="3" selected>陕西</option>
</select><br>
3.extarea:文本域
cols:指定列数,每一行有多少个字符
rows:默认多少行。
自我描述:
<textarea cols="20" rows="5" name="des"></textarea>
案例:注册页面
将表单定义在表格中:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>注册页面</title>
</head>
<body>
<!--定义表单 form-->
<form action="#" method="post">
<table border="1" align="center" width="500">
<tr>
<td><label for="username">用户名</label></td>
<td><input type="text" name="username" id="username"></td>
</tr>
<tr>
<td><label for="password">密码</label></td>
<td><input type="password" name="password" id="password"></td>
</tr>
<tr>
<td><label for="email">Email</label></td>
<td><input type="email" name="email" id="email"></td>
</tr>
<tr>
<td><label for="name">姓名</label></td>
<td><input type="text" name="name" id="name"></td>
</tr>
<tr>
<td><label for="tel">手机号</label></td>
<td><input type="text" name="tel" id="tel"></td>
</tr>
<tr>
<td><label>性别</label></td>
<td><input type="radio" name="gender" value="male"> 男
<input type="radio" name="gender" value="female"> 女
</td>
</tr>
<tr>
<td><label for="birthday">出生日期</label></td>
<td><input type="date" name="birthday" id="birthday"></td>
</tr>
<tr>
<td><label for="checkcode">验证码</label></td>
<td><input type="text" name="checkcode" id="checkcode">
<img src="img/verify_code.jpg">
</td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="注册"></td>
</tr>
</table>
</form>
</body>
</html>
效果: