HTML笔记(自用)

这篇博客详细介绍了HTML的基础知识,包括HTTP概述、常见状态码、网页基本结构、HTML注释、常用标签如标题、段落、图片、音频、视频、超链接、列表、表格、表单以及代码规范等,旨在帮助读者理解和掌握HTML5的使用。
摘要由CSDN通过智能技术生成

目录

HTTP 概述

常见状态码

一个网页的基本结构:

 HTML注释

HTML常用标签

基本标签

双标签(双标记)

单标签(单标记)

标签的关系

HTML 元素

常用标签

标题标签(h系列)

段落标签(p 标签)

文本格式标签

图片标签

图片

图片属性

​编辑

音频标签

视频标签

​编辑

​编辑

相对/绝对路径

超链接(a 标签)

div 标签

换行标签和空格字符

综合应用

容器标签(div和span)

字符实体

列表表格表单

列表

无序列表

​编辑

有序列表

​编辑

定义列表

表格

标签

单元格合并

table与div比较

表单

input标签

下拉菜单

文本域

label标签

button按钮 

代码规范

使用正确的文档类型

可以省略 html 和 body 标签但不推荐

使用小写元素名

关闭所有 HTML 元素

关闭空的 HTML 元素

使用小写属性名

属性值

图片属性

空格前后的等号

避免一行代码过长

空格和缩进

注释


 

 

HTTP 概述

超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的 WWW 文件都必须遵守这个标准。HTML(超文本标记语言)是一种用于创建网页的标准标记语言。 HTML 不需要编译,可以直接由浏览器执行,它的解析依赖于浏览器的内核。 它不是一种编程语言,而是一种标记语言。

f1e884f97f01e341c4a60b89f8144882.png

上图描述了客户端和服务器的交互过程。当用户在浏览器输入网址后,浏览器与服务器建立了一个连接,浏览器给 Web 服务器发送了一个 HTTP 请求,服务器接收并解析请求后,返回响应。HTTP 响应中包含状态代码和返回资源的内容(响应正文)。

常见状态码

  • 200 :成功。
  • 302:跳转。
  • 400 :客户端请求有语法错误,服务器端不能理解。
  • 401 :该请求可能未经过授权。
  • 403 :服务器端收到该请求,但是拒绝为它提供服务,可能是没有权限等等。不被允许。
  • 404 :该资源没找到。不存在的页面。
  • 500 :服务器端发生了一个不可预知的错误。
  • 503 :服务器端当前还不能处理客户端的这个请求,可能过段时间之后才能恢复正常。

一个网页的基本结构:

508856dae0022e06507ad08e26e7043b.png

<!doctype html>
<html>
  <head>
    <title>HTML 简介</title>
  </head>
  <body></body>
</html>

<!DOCTYPE html> 是我们的文档声明头。他告诉了浏览器,本文档处理的是 HTML 文档。

html 标签即根元素,此处表示文档的开始。

head 标签是网页的头部,设置网页的相关信息。

title 标签设置网页标题。

body 标签定义文档的主体,也就是我们的主要内容。 

96b263b364058a59baa7e6c878540902.png

5d28f3839a3d2d9828be792265606621.png

 

实验环境:VScode

340d99d5029dd76178e92a03744417f3.png

 249d69b3fb2ee37c383ef06897811b96.png

95ef699012f6f264be3d03d9f8ceeb7a.png

942cbcd0585438cb2c028ba2d0540bbb.png

 HTML注释

f376fe7d4dbbce49aca6aa85040f3fb2.png

058c4e4b70055f4aa90e7449db729ff3.png

8597b9c9fc7ac77029b4f860e8346a23.png

 

HTML常用标签

HTML 标签与大小写无关的,例如 <body> 和 <BODY> 表示的意思是一样的,都代表“主体”,推荐使用小写。

基本标签

双标签(双标记)

双标记也称体标记,是指由开始和结束两个标记符组成的标记。其基本语法格式如下:

<标记名></标记名>

常见的双标签有:

<html></html>
<head></head>
<title></title>
<body></body>
<h1></h1>
<p></p>
<div></div>
<span></span>
<a></a>
<ul></ul>

例子 <a></a>

<a href="https://www.lanqiao.cn">实验楼</a>

单标签(单标记)

单标记也称空标记,是指用一个标记符号即可完整地描述某个功能的标记。其基本语法格式如下:

<标记名/>

常见的单标签有:

<br />
<!--换行-->
<hr />
<!--水平分隔线-->
<meta />
<img />

标签的关系

fa8cdaf704cad6b4eefc5dc2983209b9.png

  • 嵌套关系
<head>
  <title> </title>
</head>
  • 并列关系
<head></head>
<body></body>

HTML 元素

HTML 元素指的是从开始标签(start tag)到结束标签(end tag)的所有代码。

例子:

<p>I Love You</p>

注:这个元素定义了 HTML 文档中的一个段落。这个元素拥有一个开始标签 <p>,以及一个结束标签 </p>。元素内容是:I Love You

常用标签

标题标签(h系列)

h 标签有六种 h1h2h3h4h5h6,它代表着我们的标题。

<!doctype html>
<html>
  <head>
    <title>HTML 简介</title>
    <meta charset="utf-8" />
  </head>
  <body>
    <h1>我是一级标题</h1>
    <h2>我是二级标题</h2>
    <h3>我是三级标题</h3>
    <h4>我是四级标题</h4>
    <h5>我是五级标题</h5>
    <h6>我是六级标题</h6>
  </body>
</html>

2ac27d9d1a5a9dd670f7dad883941ed1.png

4026a7d2ed34b8920f279c40081e572c.png

c02d3a9bbd1b4598a165a53bcdb4878b.png

段落标签(p 标签)

d6d77c2e3cca5f939052476fb3b06f71.png

e9de39be74803a65ae05b4ad0f3007f9.png

aca1aded5bc3c8727f9f6754aec5975d.png

p 标签是我们的文本标签。删掉上段代码 <body> 标签里的内容,把下面的内容放到 <body> 标签里面去。

<p>我是第一段文字,实验楼,做实验,学编程</p>
<p>我是第二段文字,实验楼,做实验,学编程</p>

c2be899c95bc6407c942f56f8771e55d.png

文本格式标签

e5dca48695d364049b3d2ffa8ff38f14.png

64ca16046d27d84720dca4ee5a878b22.png

3608a9593e08fd05224a483bc26b2993.png

图片标签

图片

d3e0c73542e5d2650390a0434f559d9c.png

658f46b47faa61fc678790cc9584064c.png

<p>实验楼图片:</p>
<img src="https://static.shiyanlou.com/frontend/dist/img/9f43b00.svg" />

HTML 的图像是通过标签 <img> 来定义的。 语法: <img src="图片地址"/> 。放在<body/>里面

a8900c0c0b02b156f3311d70c5ff6943.png

图片属性

1d458b0010f75e23b3fd9682bba71735.png

d54448c8fc03ceb4c88c6310e6f64cd1.png

    <img src="./范例图片.jpg" alt="图片加载失败" title="这是一张图片,当你鼠标悬停在图片上方会显示这行字">
    <br>
    <img src="./111.jpg" alt="图片加载失败">
    <br>
    <img src="./范例图片.jpg" alt="" width="200" title="不同大小的图片">
    <br>
    <img src="./范例图片.jpg" alt="" height="600" width="100" title="不同比例的图片">

音频标签

c4cd8fbe946f44d6619b235491aa3d27.png

    <audio src="./如愿.MP3" controls></audio>
    <audio src="./如愿.MP3" loop controls autoplay>如愿</audio>

视频标签

12c598db9ac7dae248cb042f834690d3.png

autoplay想使用必须加用muted

<video src="./视频.mp4" width="400"></video>

b5cb3af517214d860c36163bb84f127b.png

<video src="./视频.mp4" width="400" controls loop muted></video>

bc2340bc35432847fc95238d4d2eb5e8.png

相对/绝对路径

e079ac6ba1ea116ae98566c1e5fc72d1.png

d587d25da73995e0ff4e458062d392b0.png

 

053b866934483b14f516a9c0f82f2ece.png

d5ebe65a1005cac6675c6b13e670abe7.png

 <img src="https://img-home.csdnimg.cn/images/20201124032511.png" alt="csdn图片加载失败" title="这是一张图片,当你鼠标悬停在图片上方会显示这行字">

c7ce46fea530fd690af26816f2afe94b.png

455e9478c19b05a0c8a75d2e842325b2.png

超链接(a 标签)

<a> 标签是超链接标签,点击它可以跳转到一个网页。

<a href="https://www.lanqiao.cn/">实验楼</a>

8e0b451a07ae7a81e7ade2ad6401447b.png

 <a href="https://www.lanqiao.cn/courses/43/learning/?id=152&compatibility=false">跳转到蓝桥杯</a>

7174c61f6e9d89625bc2e8e3f100ae80.png

0c002a27579792a6168264bfb302f48b.png

2ccf9023abb01f485d9ada891af3c16a.png

<a href="https://www.bilibili.com/video/BV1kM4y127Li/?p=13&spm_id_from=pageDriver&vd_source=3abc663d9ac98eba628318cd01ab85e4">跳转到B站</a 

<a href="https://www.bilibili.com/video/BV1kM4y127Li/?p=13&spm_id_from=pageDriver&vd_source=3abc663d9ac98eba628318cd01ab85e4"
        target="_blank">跳转到B站</a>

<a href="#">空链接</a>

1358a417da0319a8d35a2a266d93d74e.png

1913382739fab738c143a809db66a4d9.png

div 标签

<div> 标签是一个块级元素,块级元素占据其父元素(容器)的整个空间,你可以把它想成一个盒子。 <div> 能够设置其宽高

<div style="width:200px;height:200px;background:pink">块级元素</div>

这里设置的 style,后面我们会进行学习,现在只是为了便于产生效果,使大家更好理解。在这里的效果是生成一个宽高 200 像素的粉色 div。

b93494680ee4d5abaddc23bf8382031d.png

换行标签和空格字符

在浏览器显示页面时,浏览器会移除源代码中多余的空格和空行,所有连续的空格或空行都会被认为是一个空格。如果希望在不产生一个新段落的情况下换行,可以使用 <br/> 标签。如果想使用空格的话可以使用 &nbsp; 字符。

<body>
  <p>这是一段文字 前面有很多空格但是只显示一个空格</p>
  <p>这是一段文字&nbsp;&nbsp;&nbsp;&nbsp;用了空格字符nbsp</p>
  <br />
  <p>上面是换行符br</p>
  <hr>
  <p>上面是水平分割线hr</p>
</body>

dd8686e4cd52db663c06afb1f4efea21.png

综合应用

3ee451c007aa908807fd3bfc9931cb40.png

容器标签(div和span)

d8d128ada3c8e50c61adb0e496987db5.png

a9b881297f36520b78f468180f9612b7.png

    <!-- div大盒子,独占一行 -->
    <div>div</div>
    <div>div</div>
    <!-- span小盒子,不独占一行 -->
    <span>span</span>
    <span>span</span>

字符实体

802cafc0c3a164512012db03cd939931.png

8f3beb1d60806751db9932d1eeb30540.png

5cd7bf1e70c4b534c44cc2b44cbf63b5.png

列表表格表单

59c1d39b53baa468f45cd3c8b7659080.png

列表

ff6c6f76726bcb1fa52125eb17700344.png

无序列表

098aadff366a65e1703da279265040fc.png

     <ul>
        <li>项目1</li>
        <li>项目2</li>
    </ul>

09771b1ac33da8d1d7196cca77fd4248.png

有序列表

a22517f0359585e233ca1dfae2a605d8.png

    <ol>
        <li>起床</li>
        <li>刷牙</li>
    </ol>

572de13cf893106b7fbb25a0813da435.png

定义列表

2e8e62ea34136d412961c804d85b8b4e.png

    <dl>
        <dt>姓名</dt>
        <dd>张三</dd>
        <dd>李四</dd>
    </dl>

46b3d1f0a1d234e4138c94d923a36b6e.png

表格

标签

0838a0a7df5b4f9ffe6dde7b6dc2214b.png

tr:(tablerow)

td:(tablehead)

td:(tabledata)

    <table border="1">
        <tr>
            <th>姓名</th>
            <th>语文</th>
            <th>数学</th>
            <th>总分</th>
        </tr>
        <tr>
            <td>张三</td>
            <td>99</td>
            <td>100</td>
            <td>199</td>
        </tr>
        <tr>
            <td>李四</td>
            <td>98</td>
            <td>100</td>
            <td>198</td>
        </tr>
        <tr>
            <td>总结</td>
            <td>全市第一</td>
            <td>全市第一</td>
            <td>全市第一</td>
        </tr>
    </table>

 

4d946a3fc8ba72d720ab14b9ec2c3c6b.png

表格一般都有标题,在 HTML 中表格标题通过 <caption> 定义。

<table border="1" width="300px" height="150px">
  <caption>
    表格标题
  </caption>
  <tr>
    <td>第一行第一列</td>
    <td>第一行第二列</td>
  </tr>
  <tr>
    <td>第二行第一列</td>
    <td>第二行第二列</td>
  </tr>
</table>

 

2b2423a8e75da835e52e324cf5bf8e73.png

    <table border="1">
        <thead>
            <tr>
                <th>姓名</th>
                <th>语文</th>
                <th>数学</th>
                <th>总分</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>张三</td>
                <td>99</td>
                <td>100</td>
                <td>199</td>
            </tr>
            <tr>
                <td>李四</td>
                <td>98</td>
                <td>100</td>
                <td>198</td>
            </tr>
        </tbody>
        <tfoot>
            <tr>
                <td>总结</td>
                <td>全市第一</td>
                <td>全市第一</td>
                <td>全市第一</td>
            </tr>
        </tfoot>
    </table>

4d946a3fc8ba72d720ab14b9ec2c3c6b.png

81787ca25fb0bd566c794988c8f946db.png

单元格合并

e2465c209897f2dfc72cf24b8e752764.png

    <table border="1">
        <thead>
            <tr>
                <th>姓名</th>
                <th>语文</th>
                <th>数学</th>
                <th>总分</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>张三</td>
                <td>99</td>
                <td rowspan="2">100</td>
                <td>199</td>
            </tr>
            <tr>
                <td>李四</td>
                <td>98</td>
                <!-- <td>100</td> -->
                <td>198</td>
            </tr>
        </tbody>
        <tfoot>
            <tr>
                <td>总结</td>
                <td colspan="3">全市第一</td>
                <!-- <td>全市第一</td>
                <td>全市第一</td> -->
            </tr>
        </tfoot>
    </table>

8c6c4b60d07c6c410dc21ec324a4095a.png

table与div比较

在网页中可以使用很多个 div,在网页制作中,使用 div 可以将网页中的任何元素布局到网页中的任何位置。

同样的效果,使用 div 布局能比表格更加灵活,但是我们需要根据不同的场景使用不同的布局方式,现在我们来看看两种布局的优缺点。

table 元素布局:

  • 优点:
  1. 理解比较简单。
  2. 不同的浏览器看到的效果一般相同。
  • 缺点:
  1. 显示样式和数据绑定在一起。
  2. 布局的时候灵活度不高。
  3. 一个页面可能会有大量的 table 元素,代码冗余度高。
  4. 增加带宽。
  5. 搜索引擎不喜欢这样的布局。

div 元素布局:

  • 优点:
  1. 符合 W3C 标准。
  2. 搜索引擎更加友好。
  3. 样式的调整更加方便,内容和样式的分离,使页面和样式的调整变得更加方便。
  4. 节省代宽,代码冗余度低。
  5. 表现和结构分离,在团队开发中更容易分工合作而减少相互关联性。

表单

534375c6a6115eea298af18f64189abe.png

<form> 标签用于创建 HTML 表单,常见的表单格式为:

<form name="" method="" action=""></form>

 

  • name:定义表单的名字。
  • method:定义表单结果从浏览器传送到服务器的方式,默认参数为:get 。post 安全性更高,因此常用作传输密码等,而 get 安全性较低,一般用于查询数据。
  • action:发送数据要去的地址。它的值必须是一个有效的 URL,可以是相对 URL 也可以是绝对 URL。如果没有提供此属性或者 action="#",则数据将被发送到包含表单的页面的 URL。

input标签

ebfaa0cd7190002b44ddafabd199b896.png

<body>
    账号:<input type="text" >
    <br><br>
    密码:<input type="password" >
    <br><br>
    性别: <input type="radio">
    <br><br>
    求职意向:<input type="checkbox">前端 <input type="checkbox">后端
    <br><br>
    上传文件:<input type="file">

</body>

1ef87fe2838e7e81dd0b89a64be3c5f8.png

input标签占位文本

账号:<input type="text" placeholder="请输入账号">
    <br><br>
密码:<input type="password" placeholder="请输入密码">
    

0be1061685155c687a6bacd6102951db.png

单选框radio

dfcf3c9efcecd92841deb136602ddfb0.png

男 <input type="radio" name="gender">
女 <input type="radio" name="gender" checked>
    <!-- name附上的属性必须相同,否则不能实现单选功能 -->
    <!-- 加上checked的话就是默认一开始就是勾选这个 -->
    

f6232a2ed293f65e2b415bdceabff2e9.png

上传多个文件

6ef3d8e843ac7612e2e539c9e992efe7.png

上传文件:<input type="file" multiple>

 

49d96a31d3ad11f76d59f453c56e4364.png

多选框默认勾选

dde3a1129db496b568c2fe9bb9e85db0.png

<input type="checkbox" checked>我已阅读并同意注册条款

10aff53c1b3238f57adf5b14e477dc26.png

下拉菜单

a9ea8439404edd8d8687c8de5765dcb1.png

    <select>
        <option>北京</option>
        <option>上海</option>
        <option>深圳</option>
        <option>广州</option>
        <option>厦门</option>
        <option>福州</option>
        <option>杭州</option>
    </select>
    <!-- 默认勾选第一个,如果不想默认第一个,可以在你想的那个option后面加selected -->

0293ecc5b11825b518f45a3ae26e02e1.png

文本域

d8b1f89e04276cfbbe3ea45a813d1d7a.png

0207658708eaa3e4c9a68ed81b6d64ca.png

个人描述<textarea>请输入你的个人描述</textarea>

 

104d65f224ee841c217b64d8e3d89956.png

label标签

1151160644cc1b7cc58f6f90ffe9a1c7.png

7e575a77b0d4b8e36c5dbedde92cd8c3.png

性别:
    
    <input type="radio" name="gender" id="men"><label for="men">男</label>
    <label><input type="radio" name="gender">女</label>

button按钮 

86b9acebca7a60ab19b6085a8ce9d791.png

10526e2376e28af3d3f7a840311f0b30.png

    <form>
        账号:<input type="text" placeholder="请输入账号">
        <br><br>
        密码:<input type="password" placeholder="请输入密码">
        <br><br>
        <button type="button">提交</button>
        <button type="submit">上传</button>
        <button type="reset">重置</button>
    </form>

 

代码规范

使用正确的文档类型

文档类型声明位于 HTML 文档的第一行:

<!doctype html>

 

可以省略 html 和 body 标签但不推荐

在标准 HTML5 中, <html> 和 <body> 标签是可以省略的,比如下面的写法也是正确的:

<!doctype html>
<head>
  <title>页面标题</title>
</head>

<h1>我是标题</h1>
<p>我是段落。</p>

 

但是不推荐省略掉,建议还是写成下面这样:

<!doctype html>
<html>
  <head>
    <meta charset="UTF-8" />
    <title></title>
  </head>
  <body>
    <h1>我是标题</h1>
    <p>我是段落。</p>
  </body>
</html>

 

使用小写元素名

HTML5 元素名可以使用大写和小写字母,建议使用小写字母,会显得更加好看一点,千万不要使用大小写混写,那样会显得很不专业。建议的写法如下:

<section>
  <p>我是段落。</p>
</section>

 

关闭所有 HTML 元素

在 HTML5 中, 你不一定要关闭所有元素 (例如 <p> 元素),但是建议每个元素都要添加关闭标签。比如下面这样写也不会报错:

<section>
  <p>我是段落甲。
  <p>我是段落乙。
</section>

 

建议写成下面这样:

<section>
  <p>我是段落甲。</p>
  <p>我是段落乙。</p>
</section>

 

关闭空的 HTML 元素

在 HTML5 中, 空的 HTML 元素也不一定要关闭,我们可以这样写:

<meta charset="utf-8">

 

建议的写法是还是关闭:

<meta charset="utf-8" />

 

使用小写属性名

同样的 HTML5 属性名允许使用大写和小写字母。但是我们依然建议使用小写字母:

<div class="test"></div>

 

属性值

HTML5 属性值可以不用引号。但是属性值我们推荐使用引号,尤其是属性值有空格的话,一定要使用引号,不然不会起作用,属性的命名如果很长我们建议使用驼峰命名法:

<div class="test changeColor"></div>

 

图片属性

图片通常使用 alt 属性。 在图片不能显示时,它能替代图片显示。建议定义好图片的尺寸,在加载时可以预留指定空间,减少闪烁。比如:

<img src="syl.png" alt="HTML5" style="width:520px;height:1314px" />

 

空格前后的等号

等号的前后可以使用空格,也可以不使用,推荐少用空格。

<link rel="stylesheet" href="styles.css" />

 

避免一行代码过长

使用 HTML 编辑器,一行代码过长时左右滚动代码来查看是不方便的。如果实在太长,建议分为几行来写。

空格和缩进

不要无缘无故的添加空行,一般一个模块或一个功能添加一个空行便于区分,缩进使用两个空格,不建议使用 Tab。

注释

<!-- 这是注释 -->

 

快捷键为 Ctrl + /。当然我们首先要选中要注释的代码再使用快捷键。

注:编码风格建议统一,不要乱而杂,另外建议大家养成多写注释的习惯,因为时间久了,如果没有注释,可能你自己都不知道自己当初写的是啥。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值