HTML介绍

1. 开发工具的使用
创建一个工程
我们在 d 盘下创建一个 demo 的目录,然后使用 VSCode 来打开这个目录,打开后,点击下图所示的图标来创建 一个first.html 文件 然后在右边的窗口中输入英文的感叹号后回车(或者按 tab 键)来生成 HTML 默认结构。 如果使用的是 webstorm ,则需要点击 New Project 按钮来创建一个新的工程,输入项目名称和路径后,点击下面的 create 按钮来创建。
2. 常用标签
2.1 <p> 标签 <p> 标签叫段落标签,一对 p 标签要占一行,多个 p 标签之间有换行。
2.2 <br>标签 <br> 标签用于换行,它是一个独立的标签,不需要闭合。
2.3 <hr>标签 <hr> 标签也是一个独立的标签,它是在页面中画一条水平实线。
2.4 <pre>标签 这个标签叫预打印标签,使用它可以显示出我们在 html 页面中书写的原样格式。
2.5 <div>标签 它是一个窗口标签,一般用于在页面中存放另外的标签。
2.6 <span>标签 这是一个行内标签,一般用于定义一些不需要宽度和高度的内容。
2.7 <img>标签 这个标签用于在页面中显示图片。为了演示这个效果,我们在当前的项目中添加一个目录用于存放图片,这个目 录名称一般取名为 images
img 标签的属性介绍
src :用于指定图片的路径,路径分两种:
相对路径:以当前文件所在的路径为参考
绝对路径:在 window 中以是盘符开头的路径,在 linux 中是以 / 开头路径,在网络是以
http: / 开头的路径。
alt :用于指定当图片不能正常显示时的一个提示信息
width :指定图片显示宽度
height :指定图片显示高度
title :用于当鼠标移到图片上时显示的提示信息,一般用于搜索引擎优化
border :指定图片边框粗细
align :指定图片对齐方式,有以下两个值:
left :左对齐,默认值
right :右对齐
3链接标签
1.<a> 这个标签的作用是用于给文字或图片做链接的 .
示例:
<!DOCTYPE html>
<html lang = "en" >
<head>
       <meta charset = "UTF-8" >
       <title> Title </title>
</head>
<body>
<a href = "http://www.baidu.com/" > 百度 </a>
</body>
</html>
对于这个标签来说,它用于做超链接时,还可以指定以下属性:
href :用于指定链接的路径,可以是相对路径,也可以是绝对路径
target :用于指定打开的方式,有以下几个值:
_self :当前窗口打开,即要打开的页面替换当前窗口,它是默认值
_blank :在新的标签页中打开指定的页面
_parent :它需要用到 iframe 模式中才效
_top :它需要用到 iframe 模式中才效
除了可以做链接以外,还可以使用这个标签来做描点,要做描点需要有以下步骤:
1. 定义描点
<a name = "top" ></a>
2. 使用描点
<a href = "#top" > 顶部 </a>
多媒体标签
这种多媒体标签有两种:一种是播放视频的,另一种是播放音乐的。
播放视频
使用 video 标签来播放视频,支持格式有: mp4,avi
<!DOCTYPE html>
<html lang = "en" >
<head>
       <meta charset = "UTF-8" >
       <title> 视频播放标签 </title>
</head>
<body>
<video src = "media/video.mp4" autoplay controls loop
></video>
</body>
</html>
通过 video 标签来指定要播放的视频,然后通过 src 属性来指定视频的地址,可以是相对路径,也可以是
绝对路径。
这个标签还可以使用 autoplay 属性来指定自动播放。通过 controls 属性来指定控制按钮。
播放音乐
使用 audio 标签来播放音乐,不同浏览支持的格式不一样。
<!DOCTYPE html>
<html lang = "en" >
<head>
       <meta charset = "UTF-8" >
       <title> 播放音乐 </title>
</head>
<body>
<audio src = "media/snow.mp3" autoplay ></audio>
</body>
</html>
列表标签
如果希望把有些内容以列表的方式来进行呈现,此时就可以使用列表标签。在 HTML 中,列表标签有以
下几种:
无序列表
有序列表
标题列表
无序列表
无序列表使用 ul 标签来定义,每一个列表顶使用一个 li 标签来定义。例如:
<!DOCTYPE html>
<html lang = "en" >
<head>
<meta charset = "UTF-8" >
<title> 无序标签的使用 </title>
</head>
<body>
<ul type = "rect" >
<li> 重庆 </li>
<li> 北京 </li>
<li> 上海 </li>
<li> 天津 </li>
</ul>
</body>
</html>
对于无序标签,每一个具体项前面会有一个小圆点,我们可以使用 type 属性来修改,它有以下几个值:
circle :以空心小圆圈的形式显示
square :以小正方形黑色块显示
disc :以实心的小圆点显示,它是默认值
这个标签一般用于定义菜单,或者定义列表图片。
有序标签
有序标签就是可以在每一项之前有一个序号,使用 ol 标签来定义,每一个具体的项还是使用 li 标签来定
义。
例如:
<!DOCTYPE html>
<html lang = "en" >
<head>
<meta charset = "UTF-8" >
<title> 有序列表标签的使用 </title>
</head>
<body>
<ol>
<li> 第一名 </li>
<li> 第二名 </li>
<li> 第三名 </li>
</ol>
</body>
</html>
带标题的列表
这种列表使用 dl 标签来定义,然后通过 dt 标签定义标题,再通过 dd 标签来定义内容。
例如:
<!DOCTYPE html>
<html lang = "en" >
<head>
<meta charset = "UTF-8" >
<title> 带标题的列表标签的使用 </title>
</head>
<body>
<dl>
<dt> 四个直辖市 </dt>
<dd> 北京 </dd>
<dd> 天津 </dd>
<dd> 上海 </dd>
<dd> 重庆 </dd>
<dd>
<dl>
<dt> dt </dt>
<dd> dd </dd>
</dl>
</dd>
</dl>
</body>
</html>
表格标签
表格标签用于数据展示的,它涉及到 table tr td th 等子标签。
要定义一个表格,我们需要使用 table 标签,如果要定义一行,我们还需要使用 tr 子标签,
要在一行中定义单元格,就需要使用到 td 子标签。
例如:定义一个三行三列的表格。
<!DOCTYPE html>
<html lang = "en" >
<head>
<meta charset = "UTF-8" >
<title> 表格标签的使用 </title>
</head>
<body>
<table width = "300" border = "1" cellpadding = "0" cellspacing = "0" align = "left" >
<caption> 表格标题 </caption>
<thead>
<tr>
<th> 编号 </th>
<th> 姓名 </th>
<th> 年龄 </th>
</tr>
</thead>
<tbody>
<tr align = "center" >
<td align = "center" rowspan = "2" > 1 </td>
<td width = "100" > 刘备 </td>
<td> 28 </td>
</tr>
<tr align = "center" >
<!--<td>2</td>-->
<td> 关羽 </td>
<td> 27 </td>
</tr>
<tr align = "center" >
<td colspan = "2" > 3 </td>
<td> 张飞 </td>
<!--<td>26</td>-->
</tr>
</tbody>
<tfoot>
</tfoot>
</table>
</body>
</html>
table 标签有以下几种属性:
width :用于指定表格的宽度,单位是像素
border :用于定义表格的边框,值的类型是数字,而是一个正数,值越大边框越粗
cellpadding :用于定义单元格的内边距,即单元格中的内容也单元格的边之间的距离
cellspecing :用于定义单元格的外边距,即单元格与单元格之间的距离
align :用于定义表格的对齐方式
table 还在以下几个子标签:
caption :用于定义表格的标题
thead :用于定义表头部分
tbody :用于定义表体部分
tfoot :用于定义表尾部分
tr :用于定义表格的一行
th :用于定义一个单元格,它的特点是内容加粗且居中显示
td :用于定义一个单元格
td 标签有几个属性需要说明:
colspan :用于定义跨列操作,也就是合并多个列
rowspan :用于定义跨行操作,也就是合并多个行
文字加粗标签
可以使用 strong 标签来对文字进行加粗操作。例如:
<div><strong> 这是加粗后的文字效果 </strong></div>
标题标签
HTML 中,标题标签一共有 6 个,分别是 h1 ~ h6,大小逐级递减。例如:
<h1> h1 标签 </h1>
<h2> h2 标签 </h2>
<h3> h3 标签 </h3>
<h4> h4 标签 </h4>
<h5> h5 标签 </h5>
<h6> h6 标签 </h6>
表单标签的使用
在一个 web 项目中,和用户之间进行交互操作是必不可少的,这时就需要使用到表单来让用户和服务器 之间进行交互。因此,表单是一个非常重要的元素。 但在表单中,包括的子标签非常多,大体上可分为以下几种:
文本输入框
文本输入域
单选框
多选框
下拉列表
文件上传
提交按钮
重置按钮
form 标签
form 标签是用于指定表单数据的提交方式和地址。它有以下几个属性:
name :用于指定表单的名称,方便后续提交使用
id :表单的唯一名称,一般用于提交或样式设置
action :用于定义表单数据的提交地址
method :用于指定表单数据的提交方式,有以下几个常用值
get :以 get 方式进行提交,所提交的数据会在浏览器地址栏中显示,这种提交方式所提交的数
据不能超过 4K 大小
post :以 post 方式进行提交,这种提交方式会把数据放到请求头中,而不会在浏览器地址栏
中显示,理论上这种方式提交没有大小的限制
put :用于修改数据,这种方式是 RestFul 风格的,后续在某些项目中会用到,一般现在可以
不用考虑
delete :用于删除数据,这种方式是 RestFul 风格的,后续在某些项目中会用到,一般现在可
以不用考虑
enctype :用于指定表单提交的数据类型,有以下两个值:
multipart/form-data :以二进制流的方式进行提交,一般用于文件上传
application/x-www-form-urlencoded :以文本的方式进行提交,常用方式,默认值
文本输入框
文本输入框是使用 input 标签来指定,根据它的 type 属性来指定是什么样的类型的输入框。
它的属性说明如下:
name :用于表单提交是把数据提交到后端
id :给这个输入框一个唯一值,一般是用于 JavaScript 来获取它时所使用
value :它代表是这个输入框所输入的值
size :用于指定这个输入框的长度,不推荐使用,后续会用 CSS 来控制
maxlength :用于指定这个输入框所能输入值的最大的长度 placeholder :用于指定在输入框中没有值是的提示信息,它是 H5 的属性
单选框
单选框也是使用 input 标签,但它的 type 属性的值为 radio ,它一般用于多个值中只能选择一个值的情 况。如,姓别 属性说明如下:
name :给这个单选框指定一个组名,也是数据提交后后端能够获取数据的值,多个单选框如果
name 属性相同才会是同一个组。
value :单选框的值
checked :它是一个布尔值(真和假),如果值为值( true )即选中,值为假( false )则未选中
多选框
多选框也是使用 input 标签,但它的 type 属性的值为 checkbox ,一般用于多个选择的情况。
属性与单选框相同。
文本输入域
文本输入域是用于输入长文本的内容,使用 textarea 标签,它有以下几个属性:
name :用于获取文本域的值
rows :指定文本域的高度(行数)
cols :指定文本域的宽度(列数)
下拉列表
下拉列表是用于选择使用的,它可以是单选的,也可以是多选的。使用 select 标签来指定,属性如下:
name :用于获取下拉框的值
multiple :指定是否可以多选,不重要,了解即可
size :用于指定可看选项个数,不重要,了解即可
子标签是 option ,用于指定下拉选项,它的 value 属性用于指定这个选项的值
文件上传
文件上传还是使用 input 标签,但它的 type 属性为 file ,常用的属性也是 name
3. 选择器
3.1 基本选择器
基本选择器包括:标签选择器(根据标签的名称获取)、 ID 选择器(获取的是 ID 属性)、类选择器
class 属性)、通用选择器(通配符)
<!DOCTYPE html>
<html>
<head>
<title> 选择器 </title>
<style type = "text/css" >
/*div{
color: red;
}*/
/*#one{
color: blue;
}*/
/*.two{
color: yellow;
}*/
*{
color : green ;
}
</style>
</head>
<body>
<div id = "one" class = "two" >
这是第一个 div
</div>
<div >
这是第一个 div
</div>
</body>
</html>
注意: id 属性是唯一的, class 不唯一
思考:四种选择器的优先级?
ID > class > 标签 > 通配符
3.2 包含选择
子代选择器(获取的是某个标签的第一级子标签)
后代选择器(获取的某个标签里面所有的子标签)
分组选择(逗号选择器,可以同时设置多个标签,使用逗号进行分割)
<!DOCTYPE html>
<html>
<head>
<title> 选择器 </title>
<style type = "text/css" >
/* 子代选择器 */
div .list > ul {
border : 1px solid red ;
}
/* 后代选择器 */
.list li {
border : 1px solid blue ;
}
/* 逗号择器 */
.one , .two , #first {
color : green ;
width : 200px ;
height : 200px ;
background : pink ;
border : 1px solid black ;
}
</style>
</head>
<body>
<div class = "one" > 这是一个 div </div>
<div class = "two" > 这是第二个 div </div>
<p id = "first" > 这是一个段落标签 </p>
<div class = "list" >
<ul>
<li> 这是列表 1 </li>
<li> 这是列表 2 </li>
<li> 这是列表 3 </li>
<li> 这是列表 4 </li>
<li> 这是列表 5 </li>
<li> 这是列表 6 </li>
<li> 这是列表 7 </li>
<li> 这是列表 8 </li>
</ul>
</div>
</body>
</html>
3.3 属性选择器
<!DOCTYPE html>
<html>
<head>
<title> 选择器 </title>
<style type = "text/css" >
/* 选择选中的额标签中存在的某个属性 */
div [ title ]{
border : 1px solid black ;
}
/* 确切的等于某个值 */
input [ type = "text" ]{
background : red ;
}
/* 属性值包含某个值 */
input [ type *= "e" ]{
background : blue ;
}
/* 属性值以某个值开头 */
input [ type ^= "e" ]{
background : green ;
}
/* 属性值以某个值结尾 */
input [ type $= "rl" ]{
background : red ;
}
/*+ 表示下一个标签 */
.msg + p {
border : 1px solid green ;
}
/* 属性等于某个属性值 */
[ title = " 这是一个标题 " ]{
color : red ;
}
</style>
</head>
<body>
<div class = "container" >
这是一个 div 容器
</div>
<div title = " 这是一个标题 " > 这是第二个 div </div>
<input type = "text" name = "" id = "" value = " 张三 " >
<input type = "email" name = "" id = "" value = " 李四 " >
<input type = "url" name = "" id = "" value = " 王五 " >
<hr>
<div class = "msg" > 我喜欢打游戏 </div>
<p id = "msg1" "> 这是一个段落 </p>
</body>
</html>
3.4 伪类选择器
同一个标签,根据不同的状态,有不同的样式,这就叫做伪类,通过 : 进行设置不同的样式(实现伪类选择器)
:link ------ 链接点击之前
:visited ----- 链接点击之后
:hover ------" 悬停 "
:active ------" 激活 " 鼠标点击的时候但是不松手
<!DOCTYPE html>
<html>
<head>
<title></title>
<style type = "text/css" >
/* 点击之前的颜色 */
a : link {
color : red ;
}
/* 点击之后的颜色 */
a : visited {
color : green ;
}
/* 鼠标悬停的颜色 */
a : hover {
color : blue ;
}
/* 鼠标点击在上面但是不松手的时候 */
a : active {
color : pink ;
}
</style>
</head>
<body>
<a href = "https://www.baidu.com/" > 点我 </a>
</body>
</html>
四种状态的顺序最好固定, link visited hover active
3.5 伪元素选择器
:before
:after ------ CSS2
::before
::after
注意:要使用伪元素选择器一定要加上 content 属性
<!DOCTYPE html>
<html>
<head>
<title></title>
<style type = "text/css" >
p :: before {
content : " 张三 " ;
color : red ;
}
p :: after {
content : " 李四 " ;
color : green ;
}
</style>
</head>
<body>
<p> 这是一个段落 </p>
</body>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值