01 HTML基础大全

HTML基础

1. 解析互联网运行过程

  1. HTML就是用来制作网页文件的。
  2. 浏览器查看的网页都是.html或.htm文件
  3. HTML叫做超文本标记语言(Hypertext Markup Language),用于搭建网页的结构。

1.网页的组成(一)

  • 前端三层:HTML(结构层)、css(样式层)、JavaScript(行为层)。

    image-20220513235440674

2.网页的组成(二)

  • 其他多媒体内容:图片、视频、音频、超级链接等。
  • 所有的网页文件都是真实的、物理存在的文件。

3. 互联网运行过程

  • 程序员将网页源文件上传到服务器进行存储,用户后期通过客户端(如浏览器软件)发送HTTP请求到服务器,服务器接收请求后进行响应,将存储的相关文件通过HTTP响应回传到用户本地客户端,最终通过客户端将网页文件进行渲染,显示出最终用户看到的网页效果。

    image-20220513235727646

  • 服务器

    服务器(server),就是一种特殊的计算机,也包括处理器、硬盘、内存、系统总线等,但是由于需要提供更可靠的服务,因此在处理能力、稳定性、可靠性、安全性等方面要求较高。

    作用:对于WEB来讲,用于存储开发人员上传的网页数据,且需要响应服务请求,并进行处理。要求:对于网站服务器来说,为了让用户随时进行访问,必须24小时不间断工作。

    image-20220513235818532

  • 云服务器

    • 目前绝大多数网站都采用的是云服务器(Elastic Compute Service, ECS),云服务器是一种简单高效、安全可靠、处理能力可弹性伸缩的计算服务。其管理方式比物理服务器更简单高效。用户无需提前购买硬件,即可迅速创建或释放任意多台云服务器。

    image-20220513235856502

  • 客户端

    客户端(Client)也叫用户端,指的是普通用户使用的终端,客户端有多种形式,比如最常用的就是浏览器、app等,而web开发最主要的客户端形式还是浏览器。

    浏览器(Browser),是一种用户上网搜索、查看信息资源的应用程序。

    功能:用于发送HTTP请求到服务器,接收服务器发回的HTTP响应,渲染HTML网页。

  • 主流浏览器

    主流的Web页面浏览器有:微软的IE和Microsoft Edge、Mozilla的Firefox、苹果公司的Safari、Google的Chrome及Opera软件公司的Opera。

    image-20220514000009562

  • 主流浏览器内核

    因为不同浏览器使用内核及所支持的HTML等网页语言标准不同,对网页的渲染效果会有差异

    image-20220514000054873

    推荐:使用Chrome浏览器。(渲染效果好、市场占有率高、自带开发者调试工具)

  • 浏览器功能

    作用1:发送HTTP请求,发送的方式是在浏览器地址栏输入对应网址,或者点击超级链接。

    image-20220514000254572

    作用2:接收服务器发回的HTTP响应,服务器会发回一个HTML给浏览器。

    作用3:将接收到的HTML进行解析并显示。

4. HTTP协议

  • Hypertext Transfer Protocol:超文本传输协议。是客户端浏览器或其他程序与WEB服务器之间的应用层通信协议

    HTTP请求

    • request,浏览器根据网址向对应的服务 器发送请求。
    • 发起请求的方法:在浏览器地址栏中输 入网址,或者点击网址链接。
    • HTML页面解析过程中,会发出多个http 请求,包含网页的图片、视频、音频等 文件请求。

    HTTP响应

    • 响应:response,服务器根据请求响应一个HTML文件,将HTML传输给客户端,在浏览器中进行HTML网页的渲染。

2.认识纯文本格式

  • 纯文本格式,就是没有任何文本修饰的,没有任何粗体,下划线,斜体,图形,符号或特殊字符及特殊打印格式的文本,只保存文本,不保存其格式设置。

  • 格式对比

    纯文本:最常见的是.txt文件。在存储和传输 过程中,只能保存文字,不能保存 格式。

    富文本格式:与纯文本对应,最常见的是.rtf文件,类似.doc文件,内部可以保存文本的样式、图片等。

    纯文本格式文件小,更易于传输。

    image-20220514003213952

  • 纯文本文件特点

    1.文件只能保存文本,不保存其他的格式或非文本内容,有利于网络传输。

    2.所有的纯文本格式文件,可以通过直接更改扩展名的方式更改保存格式。

    3.纯文本格式文件可以使用任意的纯文本编辑器进行查看和编辑。

  • html、css、js文件都是纯文本格式文件。

3.认识HTML

1.HTML

  1. Hypertext Markup Language:超文本标记语言。是用来制作网页的一种标记语言。
  2. HTML是一种纯文本格式的文件,内部只能书写文字内容,不能添加图片、音频、视频等,但是在网页中给用户呈现的效果却包含了文字以外的内容,这种效果就是HTML语言区别于其他文件的不同之处。

2.HTML的重要概念

  • 超文本

    是超级文本的缩写,简单来说超文 本就是用于链接另一个文本或多媒 体内容的文本,比如链接到图片、 链接、音频、视频、程序等。

  • 标记

    又叫做标签(HTML tag),有特殊的书写规范,是写给浏览器的一种语法格式,结合普通的文字信息,实现特殊的语义或显示内容。在编辑器中可以编辑和查看,在浏览器中不显示。

3.效果展示

  • 添加标记后的网页

    image-20220514004007526

4.HTML的功能

  • 利用标记给普通的文本添加语义、描述超文本内容,搭建网页的基本结构。

  • 案例中h1标签的作用是什么?

    h1标签负责给内部文字添加一级标题的语义,不负责样式,样式由css负责。

5.HTML的语义化

  • HTML文件中,如果没有使用特殊语义的标记,也可以实现网页显示效果,但是利用标记给普通的文字添加了不同的语义,能够让网站的结构划分更加清晰。

  • 语义化网页的优势

    1. 方便代码的阅读和后期维护

    2. 便于浏览器或是网络爬虫更好地解析网站内容

    3. 使用语义化标签有利于SEO搜索引擎优化,提高网站的搜索排名

6.HTML规范和HTML标签

  • HTML规范版本

    W3C:world wide web consortium,万维网联盟。专门发布和维护互联网的规范和标准。

    image-20220514004534101

7. HTML标签

  • HTML 标记通常被称为 HTML 标签 (HTML tag)。标签在书写和使用过程中,必须遵循特定的语法。

  • HTML标签语法

    1.标签名必须书写在一对尖括号<>内部。

    <html></html>
    

    2.标签分为单标签和双标签,双标签必须成对出现。

    <!--双标签-->
    <p></p> 
    <!--单标签-->
    <br /> 
    

    3.双标签包含开始标签和结束标签,结束标签必须书写关闭符号/,单标签也需要进行自封闭书写。在HTML5中,单标签可以不写关闭符号。

    <!--错误写法:-->
    <div><div>
    <br>
     <!--正确写法:-->
    <div></div>
    <br />
    

8.HTML元素的理解

  1. >HTML元素指的是从开始标签到结束标签的所有内容,包含开始标签、元素内容、结束标签。

    例如:双标签内部包含的纯文本内容,就是元素内容。

    <p>这是一段文字内容</p>
    
  2. 元素内容

    1.元素内容可以是纯文本,也可以是其他的HTML元素。这种元素内容包含其他HTML元素的情况,我们可以称为嵌套,也就是div标签元素内部嵌套了p标签元素。

    <div><p>div元素内部嵌套p元素</p></div>
    

    2.一个HTML元素div的内容可能是多个其他元素组成,例如p和h1,此时我们习惯称div是p和h1的父级元素,p和h1是div的子级元素,而p和h1属于同级元素,这种嵌套关系可以有多层。

    <div>
        <p>div元素内部嵌套p元素</p>
        <h1>div元素内部嵌套的h1元素</h1>
    </div>
    

    3.单标签是不能添加元素内容的,可以称为空元素。

  3. 标签级别

    根据标签内部可以存放的元素内容不同,可以将双标签划分为两个级别。

    • 容器级:标签内部可以存放任意内容,包含容器级标签。比如h1,div等。
    • 文本级:标签内部只能存放文字或类似文字的内容,比如存放图片、表单元素等。比如p等。
  4. HTML元素的特性

    1.元素间对空格、换行、缩进等形成的空白不敏感,有无空白对在浏览器中加载的效果没有影响。浏览器识别的是元素的开始和结束以及互相之间的嵌套关系。

    <p>段落内容</p><p>段落内容</p><p>段落内容</p><p>段落内容</p><p>段落内容</p><p>段落内容</p>
    <!--等价于:-->
    <p>段落内容</p>
    <p>段落内容</p>
    <p>段落内容</p>
    <p>段落内容</p>
    

    2.空白折叠现象:元素内容如果是文本,所有文字(类似文字内容)之间如果有空格、换行、缩进等空白字符,在浏览器中加载时,连接在一起的空白会折叠成一个空格显示,这就是空白折叠现象。

    <p>HTML中所有文字内容之间的空 格、换
     			行、缩 	进都会被折叠成一个空格显示。</p>
    

    image-20220514010059341

9.HTML属性

  1. HTML标签可以添加属性,属性可以提供关于HTML元素的更多信息。

  2. HTML属性规范

    1.书写位置:必须写在开始标签或者单标签之内,与标签名之间用空格进行分隔。

    2.属性包含:属性名(key)、属性值(value)。属性名与属性值之间的写法通常称做键值对写法,HTML标签属性的键值对写法是k= ” v ” 。XHTML要求属性值必须在双引号内部。

    <p k="v"></p>
    

    3、一个标签内可以设置多个不同的属性,属性与属性之间使用空格进行分隔,每个属性的键值对写法都是k=“v”。

    <p k="v" k="v" k="v"></p>
    

    4、部分标签属性k可以设置多个属性值v,所有属性值v都必须写在同一对双引号内,值与值之间需要使用空格分隔。

    <p k="v1 v2 v3 v4"></p>
    

4.使用VS code编程

1.纯文本编辑器

  • 所有的纯文本编辑器都能编辑HTML文件。例如记事本、Editplus、notepad等。

  • 专门制作网页的软件有:

    image-20220514011041373

2.VS code编辑器

  • 学习期间使用VS code软件,它是微软公司研发的一款非常方便使用的编辑器。
  • VS code 拥有超级丰富的插件扩展,你可以根据自己的需求使用不同的插件,对于开发者来说更加友好。

3.插件扩展

  • 打开VS code后,使用ctrl+shift+X打开扩展,推荐安装几个初期使用的插件。

    image-20220514011322575

4.VS code使用步骤

  1. 新建文件,ctrl+N。
  2. 保存对应的文件格式ctrl+S,例如.html、.css、.js等文件。
  3. 使用对应的快捷键快速编写程序。

5.常用快捷键

image-20220514011528616

5.了解HTML基本骨架

1.基本骨架

  • HTML文件最基本的四个标签,组成了网页的基本骨架,包括:<html>、<head>、<body>、<title>四组标签。

    image-20220514012001414

1.<html>标签
  • 作用:定义HTML文件的根元素,表示整个的HTML文档,所有的标签要书写在标签内部。
2.<head>标签
  • 作用:用于存放<title>,<meta>,<base>,<style>,<script>,<link>。内部用于对网页的设置,除了<title>内部的文字,其他标签都不显示在浏览器上。
  • 注意 在<head>标签中我们必须要设置的标签是title。
3.<title>标签
  • 作用1:让页面拥有一个属于自己的标题。
  • 作用2:title中的关键字可以作为搜索引擎抓取时的关键字,提高SEO搜索引擎优化。
  • 作用3:内部的内容会显示在搜索结果的标题部分。
  • 作用4:作为浏览器收藏夹默认的网页标题。
  • 建议网页必须添加title标签内部内容,内容尽量精简,提取网页的关键字。
4.<body>标签
  • 作用:定义网页的主体部分,用于存放所有的HTML显示内容的标签<p>,<h1>,<a>,<div>等。
  • <body>内部的元素内容会显示在浏览器的窗口中。

2.了解DTD、命名空间、字符集

1.DTD
  • 完整的HTML文件的第一行内容叫做文档定义类型,英文DocTypeDefinition,简称DTD。也称作文档声明类型,DocType Declaration。

    作用:告知浏览器该网页使用的是哪个版本的HTML规范,让浏览器按照对应版本的HTML语法进行解析页面。

  • 不同版本的DTD

    XHTML1.0版本

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    

    HTML5版本

    <!DOCTYPE html>
    
2.命名空间
  • /元素表示整个网页文档,在开始标签上设置了命名空间xmlns属性。

    XHTML1.0版本

    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
    </html>
    

    HTML5版本

    <html lang="en">
    </html>
    
  • 命名空间xmlns

    xml:可扩展标记语言,使用在传输过程中的规范。被设计用来传输和存储数据,是html的补充。

    xmlns:全称叫做XML NameSpace,NameSpace叫做命名空间,浏览器会将此命名空间用于该属性所在元素内的所有内容。

    /元素的命名空间规定了在不同用户的浏览器中标签语义遵循的统一标准,避免出现标签名冲突,这个标准使用的就是一个固定的网址http://www.w3.org/1999/xhtml中的规范。

3.语言
  • xml:lang= "en"和lang= “en” 表示所有的标签元素内容的语言都是英语,对搜索引擎和浏览器是有帮助的。
  • lang= " zh-cn" 表示中文(中国)
4.字符集
  • <head>标签内部的<meta>标签通过http-equiv属性定义了当前的网页所使用的字符编码。

  • char:character,字符。set:集合。

    XHTML1.0版本

    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    

    HTML5版本

    <meta charset="UTF-8">
    
  • 常用字符集编码

    国际通用字库

    UTF-8:以字节为单位对Unicode万国码进行编码,涵盖了所有人类的语言文字,一个汉字为3个字节大小。

    中文国标字库

    gb2312:共收入汉字6763个和包括拉丁字母、希腊字母、日文平假名及片假名字母、俄语西里尔字母在内的682个。

    gbk:是gb2312的扩展,增加了繁体字,共收入 21886 个汉字和图形符号,其中汉字(包括部首和构件)21003 个,图形符号 883 个,一个汉字为2个字节大小。

  • 字符集常见问题

    使用情况建议:

    1、如果没有网页加载速度要求,或者制作的是外文网站,使用utf-8。

    2、如果含有大量中文汉字的网站,而且要求网页加载速度快,使用gbk。

    注意:meta标签声明的字库,必须和编辑器软件默认编译字库相同,否则会出现两个字库不匹配,浏览器加载时出现乱码。

6.HTML常用标签

1.注释语法

  • 在很多代码技术中都可以添加注释内容,我们也可以向HTML 源代码添加注释。

  • HTML注释语法:

    <!-- 书写注释内容 -->
    

    vscode快捷键:ctrl+/

  • 注释的特点

    注释只在源代码中可见,在浏览器窗口是不显示的。

  • 用途

    ①在源代码中添加描述性的提示信息,便于我们阅读代码。

    ②对于 HTML 纠错也大有帮助,可以通过注释某一行 HTML 代码,以便检索错误的位置。

    ③暂时注释掉一部分不用的代码,便于后期恢复代码。

2.标题

  • 标题(Heading),是通过<h1>-<h6> 六个标签分别来对六个级别的标题进行定义的。

    <h1>定义最大的标题,<h6>定义最小的标题。

    <h1>-<h6> 标签都是双标签,且是容器级标签。

    <h1>一级标题</h1>
    <h2>二级标题</h2>
    <h3>三级标题</h3>
    <h4>四级标题</h4>
    <h5>五级标题</h5>
    <h6>六级标题</h6>
    
  • 标题标签的作用

    标题标签的作用是给标签内部的元素内容添加对应级别标题的语义,不负责文字的粗体、字号等样式。

    样式是由css设定的。

    image-20220514144237653

  • 标签级别

    标题标签之间是不能互相嵌套的,下一级标题与上级标题之间通过同级关系书写,下一级标题解释说明的是前面距离最近的上一级标题

    正确写法

    <h1>一级标题</h1>
    <h2>二级标题</h2>
    

    错误写法

    <h1>
    	<h2>二级标题</h2>
    </h1>
    
  • 权重

    标题标签对于呈现文档结构非常重要,使用时要根据标签的重要程度进行选择,其中<h1>标签最重要,<h2>标签次重要,以此类推。

    <h1>在整个HTML中的权重非常高,内部应该放置HTML中最重要的内容,比如logo。

    <h1>由于非常重要,内部的文字对于提高搜索引擎排名也非常重要,为了防止作弊,如果一个页面出现多个<h1>,反而降低权重。约定俗成的,一个页面中只会出现一个<h1>。

3.段落和换行

  • 段落(paragraph)是通过<p>标签进行定义的。

    <p>标签是双标签,且为文本级标签。内部只能放置文本、图片、表单元素,或者废弃的<font>标签等。

    <p>这是一个段落</p>
    
  • 段落标签的作用

    <p>标签的作用是给标签内部的内容添加一个完整段落的语义,不负责内容自动换行的样式。换行的效果是由css决定的。

    image-20220514145019609

4.换行标签

  • <br />(breaking)标签是HTML中一个简单的换行符。

    <br />标签是一个单标签。

    在需要换行的位置可以使用<br />标签书写,但是<br />与<p>不同,<br />没有建立新的段落的语义,只是简单的进行强制换行。

    <p>这是第一<br />个段落</p>
    <p>这是第二个段落</p>
    

    image-20220514145432416

  • 常规用法

    每一对儿<p>标签内部的元素内容为一个完整的段落,如果有多个段落,需要分别使用不同的<p>标签进行定义。

    正确写法

    <p>这是第一个段落</p>
    <p>这是第二个段落</p>
    <p>这是第三个段落</p>
    

    错误写法

    <p>这是第一个段落<br>
    这是第二个段落<br>
    这是第三个段落</p>
    

5.文本格式化

  • HTML中有部分标签是用来对文字进行格式化显示设置的,比如粗体和斜体等。

    但是在HTML4.0版本规范后,结构和样式进行了分离,HTML只负责搭建结构,css负责格式化样式,所以大部分文本格式化标签被废弃,但是在HTML4.01和XHTML1.0transitional版本中依旧可以使用。

  • 标签

    文本格式化的标签均为双标签,且为文本级标签,内部只能书写文字。

    image-20220514145954055

6.图像

  • 图像(image)由<img>标签进行定义。

    <img>标签是单标签,本身相当于一个特殊的文本。

    <img>标签的作用是在指定的位置插入一张图片。

    在HTML文件,常用的插入图片的类型有:jpg、png、gif。

  • 标签属性

    由于<img>为单标签,所以它只能通过属性进行相关的图像设置。

    <img>常用属性展示:

    image-20220514150347009

  • 宽度和高度

    width:图片的宽度

    height:图片的高度

    属性值:以px为单位的数值,或者省略px不写。

    如果不设置两个属性,会以图片的原始尺寸加载。

    如果设置属性:只设置了其中一个,另一个会等比例变换;如果两个都设置,按照设置值加载。

    <img src="smile01.jpg" width="200px">
    <img src="smile01.jpg" height="100px">
    <img src="smile01.jpg" width="200" height="100">
    
  • 边框border

    border:设置图片的边框。

    属性值:数值,数值是几表示边框宽度为几像素。

    <img src="smile01.jpg" border="20">
    

    注意:border属性可以使用css进行设置,css中的边框有更多的设置效果。

  • 提示文本title

    title:设置的是鼠标悬停时的提示文本。

    属性值:自定义的提示文字内容。

    <img src="smile01.jpg" title="点击查看原网站">
    
  • 替换文本alt

    alt:设置的是图片查找错误时,出现的替换文本。 如果能正常找到图片,替换文本是不显示的。

    属性值:自定义的替换内容。

    <img src="smile01.png" alt="这是一张微笑的表情">
    
  • src属性和路径

    如果需要插入一张图片到HTML中,<img>标签必须设置src属性。

    src:全称source资源,属性值是图片查找的路径。

    路径:指的是寻找文件时所历经的线路,在HTML中有特殊的书写语法。

    路径分为相对路径和绝对路径,不同的方式出发点和参考位置不同

    image-20220514150637067

  • 理解路径

    src属性和路径

    路径:指的是寻找文件时所历经的线路,在HTML中有特殊的书写语法。

    部分标签的属性需要设置为路径,例如<img>的src属性。

    路径分为相对路径和绝对路径,不同的方式出发点和参考位置不同。

  • 总结

    <img>标签最为重要的属性为src,尽量使用alt属性对图片进行说明,添加相对关键词可以有利于SEO搜索引擎优化。其他属性可以根据需求进行设置。

    <img src="smile01.png" alt="这是一张微笑的表情">
    

7.路径

1.绝对路径
  • 绝对路径查找文件时,不需要从HTML文件出发,而是直接从电脑的盘符出发进行查找,或者使用网址形式查找。

    盘符出发:例如从c盘或者d盘出发查找图片,书写时以c:/开头,后续类似子级查找写法直至找到目标文件。

    <img src="C:/Users/teacher/Documents/html/case/images/smile02.png" />
    

    网址形式:要查找的文件是来自网络资源,路径写法以http://开头。

    <img src="http://img3.imgtn.bdimg.com/it/u=1084243323,278941980&fm=26&gp=0.jpg"/>
    
  • 从盘符出发的绝对路径的缺点

    a.盘符出发的路径不可移植,不可移动。

    b.盘符出发的路径容易出现中文字符,中文的路径容易出现错误。

2.相对路径
  • 相对路径查找文件时,需要从HTML文件本身出发,根据相对的位置进行查找,包含三种方向。

    同级查找:指目标文件与HTML文件位于同一级,直接书写文件名+后缀格式;

    <img src="smile01.jpg">
    

    子级查找:指目标文件在与HTML文件同一级的文件夹的内部,需要先查找文件夹名称,然后通过关闭符号/进入文件夹查找里面的文件;如果有多层文件夹,需要/进入多层。

    <img src="images/smile02.png">
    <img src="images/tupian/smile03.jpg">
    

    上级查找:指目标文件在HTML文件所在文件夹的更上一级,需要跳出当前文件夹到上一层,路径写法利用…/表示跳出一级,如果跳出多级书写多次…/,直到找到文件。

    <img src="../../smile04.jpg" />
    <img src="../images/smile01.jpg" />
    
3.路径实际应用
  • a.建议多使用相对路径,可以适当使用网址形式的绝对路径。
  • b.使用相对路径必须将图片或文件与HTML同时上传,而且需要保持相对位置不变。

8.音频和视频

  • 网页中的多媒体内容除了图片,还有音频、视频等,HTML也提供的特定的标签用于添加音频和视频。
1.音频标签
  • 音频使用<audio>标签进行定义。

    <audio>是双标签。

同图片一样,需要使用src属性设置音频查找的路径。

音频文件支持的格式包括:.mp3、.ogg、.wav。

<audio src="audio.mp3"> </audio>
  • 音频控制条属性

    音频加载后不会自动显示播放器的控制条,需要使用controls属性进行设置,属性值也是controls。

    <audio src="audio.mp3" controls="controls"> </audio>
    

    image-20220514153232857

2.视频标签
  • 视频的设置方法与音频非常类似。

    视频使用<video>标签进行定义。

    <video>是双标签。

    使用src属性设置视频查找的路径。

    视频文件支持的格式包括:.mp4、.ogg、.webm。

  • 视频控制条属性

    视频也需要使用controls属性设置控制条,属性值也是controls。

    <video src="video.mp4" controls="controls" ></video>
    

    image-20220514153621479

9.超级链接

  • HTML 使用超级链接与网络上的另一个文档相连。超链接可以是一个字,一个词,或者一组词,也可以是一幅图像,可以点击这些内容来跳转到新的文档或者当前文档中的某个部分。

  • 超级链接标签

    在HTML中使用标签可以创建链接。

    a全称anchor,锚的意思。

    <a>为双标签。

    作用:在指定的位置添加超级链接,提供用户进行点击和跳转。

    标签可以实现两种跳转:跨页面跳转、页面内跳转。实现跳转的方式需要用到一些标签属性。

    <a>链接内容</a>
    
  • href属性

    href全称hypertext reference,超文本引用,用于规定链接的目标地址。

    属性值:链接目标的路径地址。可以使用相对路径或网址形式的绝对路径。

    href属性非常重要,标签要想实现点击跳转,必须设置该属性,拥有这个属性标签在鼠标移上时才会显示一个小手指针状态。

    书写方式如下:

    <a href="目标地址">链接内容</a>
    
  • target属性

    使用target 属性,可以定义被链接的文档在何处跳转显示。

    属性值有两种:

    1._self:默认值,表示跳转的页面在当前窗口打开,不会打开新的窗口。

    2._blank:空白的,表示跳转的页面在新窗口打开。

    <a href="http://www.lagou.com" target="_blank">拉勾</a>
    
  • title属性

    title设置的是鼠标悬停时的提示文本,与<img>标签类似。

    属性值:自定义的文字内容。

    该属性用于给用户进行提示,该链接的功能是什么,提高用户的体验。

    <a href="smile.html" title="点击查看源网页"><img src="images/smile02.png" /></a>
    

    image-20220514154543435

两种特殊的锚点跳转方法

超级链接的跳转效果不止包含跨页面的跳转,还包含锚点跳转的方式。

页面内锚点跳转

  • 这种跳转方式实现的是从某个位置跳转到同页面的另一个位置。

  • 制作方法分为两个步骤,分别是设置锚点、添加链接。

  • 设置锚点

    设置锚点,也就是设置跳转目标位置,有两种设置方式。

    ①在目标位置找到任意一个标签,给它添加id属性,id的属性值必须是唯一的。 id的属性值自定义规则:必须以字母开头,后面可以有字母、数字、下划线和横 线,区分大小写。

    <h2 id="mubiao">目标位置</h2>
    

    ②在目标位置添加一个空的标签,只设置一个name属性,name属性值设置 方式与id相同,也必须是唯一的。

    <a name="mubiao"></a>
    
  • 添加链接

    链接到锚点,在需要点击的位置设置标签,给a的href属性设置属性值为#id属性值或者 #加a的name属性值。

    <a href="#mubiao">点击文本</a>
    

跨页面锚点跳转

  • 这种跳转方法综合了跨页面跳转和锚点跳转。

  • 制作方法也分为两个步骤,分别是设置锚点、添加链接。

    第一步:设置锚点,方式与页面内锚点跳转一致,在目标网页的指定位置设置使用id或name 属性。

    第二步:链接到锚点,添加超级链接时href属性需要更改,属性值写为页面的路径#id 。

    <a href="new.html#mubiao">点击文本</a>
    

10.列表

  • 列表

    列表用于制作HTML中的一系列项目。

    通常我们会将内容相关、结构相似、样式相近的内容使用列表结构进行搭建

    根据项目的内容不同,可以有三种语义的列表结构:无序列表、有序列表、定义列表。

    image-20220514165835676

1.无序列表
  • 无序列表需要两个标签参与,分别是<ul>和<li>。

    ul:unordered list,表示定义一个无序列表的大结构。

    li:list item,列表项,定义的是无序列表内的某一项。

  • <ul>和<li>是嵌套关系,快捷键:ul>li。

  • 一个列表中可以有任意个列表项。

    <ul>
        <li>列表项1</li>
        <li>列表项2</li>
        <li>列表项3</li>
        <li>列表项4</li>
    </ul>
    
  • 注意事项

    1.<ul>内部只能嵌套<li>,<li>标签不能脱离<ul>单独书写。

    2.<li>标签是一个经典的容器级标签,内部可以放置任意内容,甚至可以放一组ul>li无序列表
    结构.

    3.无序列表的列表li之间,没有顺序的先后之分,它们的重要程度是相同的。

    4.无序列表的作用只是搭建列表结构,没有添加样式前缀的功能,样式是由css负责。

2.有序列表
  • 有序列表的语法与无序列表非常类似,只是在语义上有差异

  • 有序列表由两个标签组成,分别是<ol>和<li>。

    ol:ordered list,表示定义一个有序的列表的大结构。

    li:list item,定义的是有序列表的每一项。<ol>和<li>是嵌套关系,

  • 快捷键:ol>li。

    <ol>标签内部可以嵌套任意多个<li>标签。

    <ol>
        <li>列表项1</li>
        <li>列表项2</li>
        <li>列表项3</li>
        <li>列表项4</li>
    </ol>
    
  • 注意事项

    1.<ol>内部只能嵌套<li>标签,而<li>不能脱离<ol>单独书写。

    2.<li>标签是一个经典的容器级标签,内部可以放置任意内容,甚至可以放ol>li。

    3.有序列表的列表项<li>之间,存在顺序先后之分,根据内容的顺序需要合理调整书写位置。

    4.有序列表的作用只是搭建有顺序的列表结构,前面的数字排序样式不是<ol>标签的作用,
    而是css负责的。

    image-20220514171225040

3.定义列表
  • 自定义列表不仅仅是一列项目,而是项目及其注释的组合。

  • 由三个标签组成完整的结构,包含<dl>、<dt>和<dd>。

    dl:definition list,表示定义一个自定义列表的大结构。

    dt:definition term,表示定义自定义列表中的一个主题或者术语。

    dd:definition description,定义解释项,表示描述或解释前面的定义主题。

  • <dl>内部只能嵌套<dt>和<dd>,<dt>与<dd>是同级关系。

    <dl>
        <dt>主题</dt>
        <dd>解释项</dd>
    </dl>
    
  • 注意事项

    1.<dl>内部只能嵌套<dt>和<dd>,<dt>与<dd>不能脱离<dl>单独书写。

    2.dl内部可以放多组dt和dd,每个dd解释说明的是前面的距离最近的一个dt。

    3.每个dt后面可以有0到多个解释项的dd,每个dd解释的都是前面距离最近的一个dt。

    4.dt和dd标签也是容器级标签,内部可以放置任意内容。

    5.定义列表中的缩进样式由css负责,标签只负责搭建语义结构。

    6.配合着css布局效果,最好每个dl中只添加一组dt和dd,便于后期管理。

4.列表总结
  • 根据项目的内容不同,分别选择对应语义的列表结构:无序列表、有序列表、定义列表。

    image-20220514165835676

11.常用布局标签div和span

  • <div>和<span>标签常用作布局工具,我们俗称盒子,后期h5也增加了更多的布局标签。
  • <div>和<span>都是没有具体明确的语义的。
1.<div>标签
  • div:全称division,分割、区域、跨度的意思。俗称大盒子。

  • <div>是双标签,是最经典的容器级标签,内部可以放置任意内容。

  • 作用:

    多用于划分网页区域,进行结构布局。一般将相关的内容使用包裹起来,整体设 置大的布局效果。

    div>
        <dl>
          <dt>张三</dt>
          <dd>
            <p>城市:<span style="color:red;">北京</span></p>
            <p>年龄:18</p>
          </dd>
        </dl>
        <dl>
          <dt>李四</dt>
          <dd>
            <p>城市:上海</p>
            <p>年龄:20</p>
            <p>学校:外国语学校</p>
          </dd>
        </dl>
        <dl>
          <dt>王五</dt>
        </dl>
      </div>
    
2.<span>标签
  • span:小区域、小跨度的意思。俗称小盒子。

  • <span>也是双标签,容器级标签。

  • 作用:

    在不改变整体效果的情况下,可以辅助进行局部调整。

7.表格制作

1.表格基础

  • 创建一个简单的表格至少有三个标签组成,分别是<table>、<tr>、<td>标签。

    table:表格,定义的是整个的表格大结构。

    tr:table rows,表格的行,定义的是表格由多少行组成。

    td:table data,表格数据,也叫表格单元格,定义的是每一行内部的单元格。

  • 三者的关系:table>tr>td.一个表格中有多个行,每个行中有多个单元格。

  • <table>的属性

    <table>标签可以添加border边框属性。
    属性值:数字,表示像素值。

    表格的单元格之间有默认的空隙,会导致双线边框。

    解决方法:设置标签样式属性style。

    属性值:border-collapse : collapse; 表示边框塌陷。

  • 表头单元格

    如果要绘制表头,使用标签<th>,table head data,表头单元格。

    在表格中绘制的时候,替换的是<td>的位置。

    <th>标签中自带默认的css样式效果,文字显示粗体居中。

    <table border="1" style="border-collapse: collapse;">
        <tr>
          <th>1</th>
          <th>2</th>
          <th>3</th>
          <th>4</th>
        </tr>
        <tr>
          <td>第1行,第1列</td>
          <td>第1行,第2列</td>
          <td>第1行,第3列</td>
          <td>第1行,第4列</td>
        </tr>
        <tr>
          <td>第2行,第1列</td>
          <td>第2行,第2列</td>
          <td>第2行,第3列</td>
          <td>第2行,第4列</td>
        </tr>
        <tr>
          <td>第3行,第1列</td>
          <td>第3行,第2列</td>
          <td>第3行,第3列</td>
          <td>第3行,第4列</td>
        </tr>
      </table>
    

    image-20220514173912777

2.合并单元格

  • 常见的表格操作中,有一种叫做合并单 元格,可以通过单元格属性进行设置。

  • 单元格属性

    表格的单元格可以进行合并,通过和的两个属性可以进行合并设置。

    rowspan:跨行和并。上下的合并。

    colspan:跨列合并。左右的合并。

  • 属性值:数字(整数>=0),数字是几表示跨几行或跨几列合并。

      <table border="1" style="border-collapse: collapse;">
        <tr>
          <td colspan="2">1</td>
          <td rowspan="2">2</td>
          <td colspan="2">3</td>
        </tr>
        <tr>
          <td>4</td>
          <td rowspan="2">5</td>
          <td>6</td>
          <td rowspan="2">7</td>
        </tr>
        <tr>
          <td rowspan="2">8</td>
          <td>9</td>
          <td>10</td>
        </tr>
        <tr>
          <td>11</td>
          <td colspan="2">12</td>
          <td>13</td>
        </tr>
      </table>
    

    image-20220514173517375

  • 制作技巧

    1.先列出所有行,以最小单元格为标准。

    2.再添加每一行的或单元格。

    3.划分单元格所在行时,顶边对齐的属于同一行。

    4.将所有行和列写完后,再查看哪个单元格有跨行或跨列,属性值的个数要参考最小 的单元格。

3.表格分区

  • 一个完整的表格分为四个大的区域:表格标 题、表格头部、表格主体、表格页脚。

  • 分区标签

  • <table>内部最直接的子级包含四个分区标签,他们都是双标签。

    caption:表格的标题,内部书写标题文字。

    thead:table head,表格的头部。内部嵌套tr>th。

    tbody:table body,表格的主体。内部嵌套tr>td。

    tfoot:table foot,表格的页脚。内部嵌套tr>td。

  • 四个分区可以选择性的进行组合。

  • 注意:不论书写顺序如何颠倒,浏览器中的加载顺序都是自动按照caption、thead、 tbody、tfoot执行的。

    <table border="1" style="border-collapse: collapse;">
        <!-- 先进行分区 -->
        <caption>各地区固定资产投资情况</caption>
        <thead>
          <tr>
            <th rowspan="2">地区</th>
            <th colspan="2">按总量分</th>
            <th colspan="2">按比重分</th>
          </tr>
          <tr>
            <th>自年初累计(亿元)</th>
            <th>比去年同期增长(%)</th>
            <th>自年初累计(%)</th>
            <th>去年同期(%)</th>
          </tr>
        </thead>
        
        <tbody>
          <tr>
            <td>全国</td>
            <td>123456.78</td>
            <td>9.5</td>
            <td>100.0</td>
            <td>100.0</td>
          </tr>
     	....       
        </tbody>
      </table>
    

    image-20220514190956990

  • 制作技巧

    1.先书写大分区标签结构。

    2.填充每个分区的内部内容

    3.如果有合并单元格内容,进行单元格合并。

8.表单的了解和制作

  • 表单是用来收集用户输入信息的。

1.表单的组成

  • HTML 表单用于搜集不同类型的用户输入,表单元素就是网页中提供用户进行输入或点击 的小控件。

  • 在HTML中,一个完整的表单通常由表单域、提示信息和表单控件(也称为表单元素)3个 部分构成。

    image-20220514191539004

  • 功能

    1. 表单域:相当于一个容器,用来容纳所有的表单控件和提示信息,可以通过他定义处 理表单数据所用程序的url地址,以及数据提交到服务器的方法。如果不定义表单域, 表单中的数据就无法传送到后台服务器。
    2. 提示信息:一个表单中通常还需要包含一些说明性的文字,提示用户进行填写和操作。 表单控件:包含了具体的表单功能项,如单行文本输入框、密码输入框、复选框、提 交按钮、重置按钮等。

2.表单域

  • 表单域标签

    HTML表单域使用<form>标签进行定义。

    <form>标签是一个功能性标签,填写的表单信息要想正确的提交到后台服务器,必须放在
    一个<form>标签之内。

    <form>标签为双标签,容器级标签。

  • 表单域标签属性

    <form>标签通过对应属性规定提交数据的方法和提交位置。

    image-20220514192121363

  • 示例

    <form action="xxx.php" method="post/get" name="message">
    	提示信息及表单控件书写位置
    </form>
    

3.表单元素

1.<input>标签
  • <input>标签是最重要的一个表单元素。

    <input>标签为单标签,本身相当于一个特殊的文本。

    <input>标签需要通过标签属性实现各种功能。

  • <input>标签常用属性

    image-20220514194514117

  • 其中,type属性的值不同,决定了<input>标签的形态不同。

  • 单行文本输入框:text

    <input>标签的type属性值为text。

    定义提供用户输入的单行文本的输入框,不能输入多行文字。

    常用value属性定义默认的输入文字。

    <input type="text" value="默认输入文本" >
    
  • 密码输入框:password

    <input>标签的type属性值为password。

    定义提供用户输入的密码框。

    password 字段中的字符会被做掩码处理(显示为星号或实心圆)。

    <input type="password">
    
  • 单选框:radio

    <input>标签的type属性值为radio。

    定义提供用户点击选择的单选框。

    单选框一般都是成组出现,多个单选框组成一组选择的情况。

    同一组单选框之间必须是互斥的关系,通过给同一组单选框都设置相同的name属性 值实现。

    <input type="radio" name="sex" /><input type="radio" name="sex" />
  • 复选框:checkbox

    <input>标签的type属性值为checkbox。

    定义提供用户点击选择的多选框。

    复选框允许用户在有限数量的选项中选择零个或多个选项。

    同一组复选框最好也设置相同的name属性。

    <input type="checkbox" name="hobby" /> 唱歌
    <input type="checkbox" name="hobby" /> 代码
    <input type="checkbox" name="hobby" /> 运动
    
  • 默认选中设置

    单选框和复选框都可以提前设置默认选中项。

    <input>标签有一个checked属性,如果不设置表示默认没有选中。

    属性值如果设置为"checked" ,表示该项默认被选中。

    <input type="radio" name="sex" checked="checked" /><input type="checkbox" name="hobby" checked="checked" /> 唱歌
    
  • 按钮

    标签有四种形式的按钮:

    image-20220514195419535

  • 文件上传:file

    <input>标签的type属性值为file。

    定义文件上传按钮,可以提供用户选择本地文件进行上传服务器。

    <input type="file">
    

    使用input的multiple属性,可以决定是否可以选择多个文件。

    <input type="file" multiple="multiple" />
    
2.文本域<textarea>
  • 文本域使用<textarea>标签定义,制作可以输入多行文本的区域。

    <textarea>标签为双标签,本身相当于一个特殊的文字。

    文本域可以设置默认输入的文字,在双标签之间书写默认文字。

  • <textarea>属性

    <textarea>有两个标签属性,可以设置显示区域大小。

    rows:行,属性值是数字,数字是几表示文本框显示的最大行数,如果超过了行数,会被隐藏并且出现滚动条。

    cols:列,属性值是数字,数字是几,表示在出现滚动条之后,每一行显示的最大字 节数(一个汉字按2字节计算)。

    <textarea cols="30" rows="10">默认输入文字</textarea>
    
3.下拉菜单
  • HTML中的下拉菜单提前设置一些选项,然后可以通过点击选择其中一项。

    image-20220514195852451

  • 标签

    下拉菜单需要至少两个标签完成结构:

    1. <select>:选择,表示定义下拉菜单整体结构。
    2. <option>:选项,表示定义下拉菜单的每一项。

    两个标签都是双标签,文本级标签。

    关系:select>option,option可以有任意多项。

    <select>
        <option>广州</option>
        <option>北京</option>
        <option>重庆</option>
        <option>上海</option>
    </select>
    
  • 默认选中项

    默认情况下,选中的是第一项。

    下拉菜单可以通过给标签设置selected属性,属性值为selected,更改默认 选中项。

    <option selected="selected">北京</option>
    
  • 分组管理

    下拉菜单中如果选项变得复杂,可以将<option>进行分组管理。

    可以使用<optgroup>标签对选项进行分组,<optgroup>是一个双标签。

    关系:select>optgroup>option

    <optgroup>可以设置一个label属性,表示给这一组选项添加一个分组标签名,分组标签<optgroup>是不能被点击选择的。

    <select>
        <optgroup label="国内">
            <option>广州</option>
            <!--默认选中-->
            <option selected="selected">北京</option>
        </optgroup>
        <optgroup label="国外">
            <option>伦敦</option>
            <option>巴黎</option>
        </optgroup>
    </select
    
4.label标签
  • 所有的表单元素都可以通过绑定其他内容去扩大触发点击范围,这时需要使用一个<label>标签

  • <label>标签

    <label>标签的作用是帮表单元素定义标注(标记)。

    如果将表单控件与提示内容使用<label>进行绑定后,当用户鼠标点击<label>内的提示内容时,浏览器就会自动将焦点转到和标签相关的表单控件上。

  • 绑定方法一

    1.给表单元素设置id属性。

    2.然后将需要绑定的其他内容用标签包裹。

    3.给标签设置for属性,属性值为绑定的表单元素的id属性值。

    <input type="checkbox" name="hobby" id="sport" />
    <label for="sport">运动</label>
    
  • 绑定方法二

    如果绑定内容和表单元素写在一起,可以化简绑定写法。

    直接使用<label>标签将绑定内容与表单元素一起进行嵌套。

    <label><input type="radio" name="sex" /></label>
    

9.了解字符实体

  • 在普通文字书写时,有一些特殊符号不能直接书写(例如 连续的空格),或者符号具有特殊功能也不能直接书写 (例如<>符号)。

  • 可以使用一些HTML提前预留好的替换字符进行书写,这 些替换字符叫做字符实体。

  • 字符实体

    通过查询w3cshool手册,查看所有的字符实体。

    image-20220514200944386

  • 使用方法

    可以查询特殊字符的替换写法,包含实体名称以及实体编号。

    image-20220514201026441

  • 规则和建议

    规则:所有的字符实体和实体编号都是以&开头,以;结尾的。

    注意:实体名称对大小写敏感!

    建议1:使用实体名称,好处是名称易于记忆。不过坏处是,浏览器也许并不支持所有实 体名称(对实体数字的支持却很好)。

    建议2:不需要强制记忆所有的字符实体,只需要记忆常用的几个字符实体名称即可,其 他可以通过手册进行查询。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
对于学生作业管理系统的HTML,我可以提供一些基本的页面结构和元素,但具体的设计和功能需要根据需求和实际情况进行定制。 1. 登录页面 ```html <!DOCTYPE html> <html> <head> <title>学生作业管理系统-登录</title> </head> <body> <form> <label for="username">用户名:</label> <input type="text" id="username" name="username"><br><br> <label for="password">密码:</label> <input type="password" id="password" name="password"><br><br> <input type="submit" value="登录"> </form> </body> </html> ``` 2. 注册页面 ```html <!DOCTYPE html> <html> <head> <title>学生作业管理系统-注册</title> </head> <body> <form> <label for="username">用户名:</label> <input type="text" id="username" name="username"><br><br> <label for="password">密码:</label> <input type="password" id="password" name="password"><br><br> <label for="confirm-password">确认密码:</label> <input type="password" id="confirm-password" name="confirm-password"><br><br> <label for="email">邮箱:</label> <input type="email" id="email" name="email"><br><br> <input type="submit" value="注册"> </form> </body> </html> ``` 3. 学生作业列表页面 ```html <!DOCTYPE html> <html> <head> <title>学生作业管理系统-作业列表</title> </head> <body> <h1>作业列表</h1> <table> <thead> <tr> <th>作业名称</th> <th>截止日期</th> <th>操作</th> </tr> </thead> <tbody> <tr> <td>作业1</td> <td>2022-01-01</td> <td><a href="#">查看详情</a></td> </tr> <tr> <td>作业2</td> <td>2022-01-08</td> <td><a href="#">查看详情</a></td> </tr> <!-- 更多作业行 --> </tbody> </table> </body> </html> ``` 4. 学生作业详情页面 ```html <!DOCTYPE html> <html> <head> <title>学生作业管理系统-作业详情</title> </head> <body> <h1>作业1-详情</h1> <p>作业内容</p> <form> <label for="file-upload">上传作业:</label> <input type="file" id="file-upload" name="file-upload"><br><br> <input type="submit" value="提交作业"> </form> </body> </html> ``` 这些页面只是基础的页面骨架,具体的设计和功能需要根据实际需求进行定制。另外,还需要注意网站的响应式设计,以适应不同设备的屏幕大小。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小白迷上java

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值