【前端】【HTML】【总复习】一万六千字详解HTML 知识体系

🌐 HTML 知识体系

一、HTML 基础入门

1. HTML 简介与作用

HTML(HyperText Markup Language,超文本标记语言)是构建网页的基础语言。它的核心作用是:

  • 定义网页内容的结构(标题、段落、图片、表格等)
  • 提供语义化标签,帮助搜索引擎与辅助设备理解页面内容
  • 配合 CSS 实现页面样式、配合 JS 实现交互功能

简而言之:HTML 是网页的骨架。


2. HTML 文件结构

一个完整的 HTML 页面通常包含以下基本结构:

<!DOCTYPE html>
<html lang="zh-CN"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>我的网页</title></head><body><h1>Hello HTML!</h1></body>
</html>
核心组成:
元素作用
<!DOCTYPE>声明 HTML5 文档类型,浏览器按标准模式解析
<html>根元素,包含整个页面内容
<head>页面头部信息(元数据、引入资源)
<body>页面可见内容

3. 常见开发工具与编辑器推荐

开发 HTML 网页时,推荐使用以下编辑器(支持语法高亮、自动补全):

  • VS Code(推荐,轻量强大)
  • Sublime Text
  • WebStorm(功能强大,适合大型项目)
  • Notepad++(轻量基础)

💡 大多数现代浏览器也提供了强大的开发者工具(DevTools)用于调试页面结构和样式。


4. 标签命名规范与大小写约定

HTML 标签命名建议遵循以下规范:

  • 小写书写标签名(HTML5 标准推荐)
    ✅ 正确:<div><h1>;❌ 错误:<DIV><H1>
  • 使用语义化标签(如 <header><article>)提升代码可读性与 SEO
  • 合理嵌套标签,避免结构混乱
  • 属性值建议使用 双引号包裹,例如:class="title"

二、常用基础标签

HTML 提供了多种语义清晰的标签,用于表达不同类型的内容结构。以下是最常用的一类基础标签。


1. 文本内容标签

标签作用描述
<h1>~<h6>标题标签,<h1> 为最高级标题
<p>段落
<span>行内文本容器(无语义)
<strong>强调内容(加粗 + 语义)
<em>强调语气(斜体 + 语义)
<br>换行(单标签)
<hr>分隔线(单标签)
<h2>HTML 是什么?</h2>
<p><strong>HTML</strong> 是网页的结构语言。</p>
<span>这是一段内联文字。</span>

2. 超链接标签 <a>

标签用于创建超链接,允许用户从一个页面跳转到另一个页面,或者执行其他操作,如跳转到锚点、拨打电话、发送邮件等。

基本用法
<a href="https://www.example.com" target="_blank">访问官网</a>
  • href: 必须属性,指定链接目标地址,可以是一个网页的 URL,或者是一个相对路径。
  • target="_blank": 可选属性,指定在新窗口或新标签页打开链接。常用于外部链接。
  • download: 可选属性,表示点击链接时下载指定资源,而不是直接打开该资源。
常见属性
  • href: 设置链接的目标地址。
    • 例如,跳转到一个网页:<a href="https://www.example.com">官网</a>
    • 跳转到页面中的锚点:<a href="#section1">跳到第一个部分</a>
  • target: 控制链接打开的方式。
    • _blank: 在新窗口或标签页中打开链接。
    • _self(默认):在同一窗口或标签页中打开链接。
    • _parent: 在父窗口中打开链接。
    • _top: 在整个浏览器窗口中打开链接。
  • rel: 用来指定与目标文档之间的关系。通常与 target="_blank" 一起使用,用来增强安全性。
    • 例如:<a href="https://www.example.com" target="_blank" rel="noopener noreferrer">官网</a>
    • noopener: 防止新页面通过 window.opener 访问原始页面。
    • noreferrer: 防止传递 HTTP Referer 头。
  • download: 表示点击链接时触发文件下载,而不是跳转到该文件。
    • 例如:<a href="file.pdf" download="filename.pdf">下载 PDF</a>
  • tel: 用于拨打电话。
    • 例如:<a href="tel:+123456789">拨打电话</a>
  • mailto: 用于打开用户的邮件客户端并创建一个新邮件。
    • 例如:<a href="mailto:someone@example.com">发送邮件</a>
锚点链接
  • 用于在当前页面中定位到特定部分。
<!-- 锚点目标 -->
<h2 id="section1">第一个部分</h2><!-- 锚点链接 -->
<a href="#section1">跳转到第一个部分</a>
多重用途
  • 链接到电子邮件:
<a href="mailto:someone@example.com">发送邮件</a>
  • 链接到电话号码:
<a href="tel:+1234567890">拨打电话</a>
无链接的 <a> 标签

如果不为 href 属性指定值,<a> 标签仍然可以用作其他目的,如 JavaScript 事件监听:

<a href="#" onclick="alert('按钮点击')">点击我</a>

注意href="#" 常用于 JavaScript 操作中,但不建议过度使用,因为这会导致页面滚动到顶部或产生不必要的行为。


3. 图片与媒体标签

图片 <img>
<img src="logo.png" alt="网站Logo" width="100" loading="lazy" />
  • src: 图片路径
  • alt: 替代文本(无图时代替显示)
  • width/height: 控制图片尺寸
  • loading="lazy": 启用图片懒加载,图片只有在进入可视区域时才会加载
图片懒加载(Lazy Loading)

使用 loading="lazy" 属性可以实现图片懒加载,优化页面的加载性能,减少不必要的请求。只有当图片滚动到视口时才会加载,从而加速页面初始加载。

注意loading="lazy" 是 HTML5 中新增的属性,现代浏览器(如 Chrome、Firefox、Edge)支持它。但老版本的浏览器可能不支持该功能,可以通过 JavaScript 或第三方库(如 lazysizes)来实现懒加载。

音频 <audio>
<audio controls src="music.mp3"></audio>
视频 <video>
<video controls width="300"><source src="movie.mp4" type="video/mp4" />浏览器不支持该视频。
</video>

4. 列表标签

  • 无序列表 <ul> + <li>
  • 有序列表 <ol> + <li>
  • 定义列表 <dl> + <dt>(术语)+ <dd>(定义)
<ul><li>苹果</li><li>香蕉</li>
</ul><ol><li>第一步</li><li>第二步</li>
</ol><dl><dt>HTML</dt><dd>网页的结构</dd>
</dl>

5. 表格标签

标签作用
<table>表格容器
<tr>表格行
<td>单元格
<th>表头单元格
<table border="1"><tr><th>姓名</th><th>年龄</th></tr><tr><td>小明</td><td

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/80612.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VC++ 获取CPU信息的两种方法

文章目录 方法一&#xff1a;使用 Windows API GetSystemInfo 和 GetNativeSystemInfo (基本信息)编译和运行代码解释 方法二&#xff1a;使用 __cpuid&#xff08;CPU序列号、特性等&#xff09;代码解释&#xff1a; 开发过程中需要使用 VC获取电脑CPU信息&#xff0c;先总结…

Docker Compose 的历史和发展

这张图表展示了Docker Compose从V1到V2的演变过程&#xff0c;并解释了不同版本的Compose文件格式及其支持情况。以下是对图表的详细讲解&#xff1a; Compose V1 No longer supported: Compose V1已经不再支持。Compose file format 3.x: 使用了版本3.x的Compose文件格式。 …

24、TypeScript:预言家之书——React 19 类型系统

一、预言家的本质 "TypeScript是魔法世界的预言家之书&#xff0c;用静态类型编织代码的命运轨迹&#xff01;" 霍格沃茨符文研究院的巫师挥动魔杖&#xff0c;类型注解与泛型的星轨在空中交织成防护矩阵。 ——基于《国际魔法联合会》第12号类型协议&#xff0c;Ty…

(2025,AR,NAR,GAN,Diffusion,模型对比,数据集,评估指标,性能对比)文本到图像生成和编辑:综述

【本文为我在去年完成的综述&#xff0c;因某些原因未能及时投稿&#xff0c;但本文仍能为想要全面了解文本到图像的生成和编辑的学习者提供可靠的参考。目前本文已投稿 ACM Computing Surveys。 完整内容可在如下链接获取&#xff0c;或在 Q 群群文件获取。 中文版为论文初稿&…

MATLAB的cvpartition函数用法

1. 函数作用 cvpartition 将数据集划分为训练集和测试集&#xff0c;支持多种交叉验证方法&#xff0c;包括&#xff1a; Hold-Out验证&#xff1a;单次划分&#xff08;如70%训练&#xff0c;30%测试&#xff09;K折交叉验证&#xff1a;数据分为K个子集&#xff0c;依次用其…

Java【网络原理】(5)深入浅出HTTPS:状态码与SSL/TLS加密全解析

目录 1.前言 2.正文 2.1状态码 2.2HTTP与HTTPS的关系 2.3SSL协议 2.3.1对称加密 2.3.2非对称加密 2.3.3中间人攻击 2.3.4校验机制 2.3.4.1证书 2.3.4.2数字签名 1. 数字签名的生成过程 2. 数字签名的验证过程 2.4TLS协议&#xff08;握手过程&#xff09; 3.小结…

代码随想录算法训练营第三十七天

LeetCode题目: 300. 最长递增子序列674. 最长连续递增序列718. 最长重复子数组2918. 数组的最小相等和(每日一题) 其他: 今日总结 往期打卡 300. 最长递增子序列 跳转: 300. 最长递增子序列 学习: 代码随想录公开讲解 问题: 给你一个整数数组 nums &#xff0c;找到其中最长…

【Java ee初阶】网络原理

TCP协议 1.确认应答 实现可靠传输的核心机制 2.超时重传 实现可靠传输的核心机制 3.连接管理 网络部分最高频的面试题 4.滑动窗口 提高传输效率的机制 5.流量控制 依据接收方的处理能力&#xff0c;限制发送方的发送速度。 6.拥塞控制 依据传输链路的处理能力&#xff0c…

B站取关脚本

个人的账号可能被盗了&#xff0c;发现关注数量蹦到3000多&#xff0c;然后b站没有一键取关的按钮&#xff0c;并且对api的访问有速度限制&#xff0c;然后网上的脚本很多都已经失效了&#xff0c;所以自己稍微写个简陋的 测试时间: 2025.05.11 使用步骤: 进入b站的关注页面…

PyGame游戏开发(含源码+演示视频+开结题报告+设计文档)

前言&#xff1a; 大二小学期python课上基于pygame做的一个游戏小demo&#xff0c;当时老师花了一天讲解了下python基础语法后&#xff08;也是整个大学四年唯一学习python的时间&#xff09;&#xff0c;便让我们自学网课一周然后交项目&#xff0c;所以做的非常仓促&#xff…

使用 React 实现语音识别并转换功能

在现代 Web 开发中&#xff0c;语音识别技术的应用越来越广泛。它为用户提供了更加便捷、自然的交互方式&#xff0c;例如语音输入、语音指令等。本文将介绍如何使用 React 实现一个简单的语音识别并转换的功能。 功能概述 我们要实现的功能是一个语音识别测试页面&#xff0…

C++ 双峰高斯函数拟合

C 双峰高斯函数拟合 一维高斯函数二维高斯函数多维高斯函数一维双峰高斯函数代码实现 二维双峰高斯函数代码实现 多维多峰高斯函数 在数据分析与清洗中经常遇到这样的数据&#xff1a;数据不仅仅向单个中心靠拢&#xff0c;而是类似分段的向两个甚至多个中心靠拢。数据向单个中…

【RP2350】香瓜树莓派RP2350之LED

本文最后修改时间&#xff1a;2025年05月10日 01:57 一、本节简介 本节以树莓派pico2开发板为例&#xff0c;举例如何写一个LED驱动加进工程里。 二、实验平台 1、硬件平台 1&#xff09;树莓派pico2开发板 ①树莓派pico2开发板&#xff08;作为仿真器&#xff09; ②micr…

机器人运动控制原理浅析-UC Berkeley超视觉模态模型

加州伯克利发布的超视觉多感知模态融合(FuSe, Fuse Heterogeneous Sensory Data)模型&#xff0c;基于视觉、触觉、听觉、本体及语言等模态&#xff0c;利用自然语言跨模态对齐(Cross-Modal Grounding)优调视觉语言动作等通用模型&#xff0c;提高模型任务成功率。 总体框架 …

【Bootstrap V4系列】学习入门教程之 组件-媒体对象(Media object)

Bootstrap V4系列 学习入门教程之 组件-媒体对象&#xff08;Media object&#xff09; 媒体对象&#xff08;Media object&#xff09;一、Example二、Nesting 嵌套三、Alignment 对齐四、Order 顺序五、Media list 媒体列表 媒体对象&#xff08;Media object&#xff09; B…

解决VirtualBox中虚拟机(ubuntu)与主机(windows)之间互相复制粘贴(文本)

一.开始的设置 1.在VirtualBox中打开设置&#xff0c;常规中修改主机与虚拟机交互设置 2.虚拟机关闭状态下&#xff0c;存储中选中控制器SATA&#xff0c;勾选‘使用主机输入输出’ 3.选中操作系统对应的虚拟文件&#xff0c;.vdi文件&#xff0c;勾选右边的固态驱动器。 4.启…

java 多核,多线程,分布式 并发编程的现状 :从本身的jdk ,到 spring ,到其它第三方。

Java 在多核、多线程和高性能编程领域提供了丰富的现成框架和工具&#xff0c;既有标准库中的并发组件&#xff0c;也有第三方框架。以下是一些关键框架及其应用场景的总结&#xff1a;便于后面我们站在巨人的肩膀上&#xff0c;继续前行 一、Java 标准库中的多线程框架 Execut…

Nodejs核心机制

文章目录 前言 前言 结合 Node.js 的核心机制进行说明&#xff1a; 解释事件循环的各个阶段。 答案 Node.js 事件循环分为 6 个阶段&#xff0c;按顺序执行&#xff1a; Timers&#xff1a;执行 setTimeout 和 setInterval 的回调。 Pending I/O Callbacks&#xff1a;处理系…

C++笔记6:数字字面量后缀和前缀总结

在C中&#xff0c;可以在数字字面量后面添加字母后缀&#xff08;或前缀&#xff09;来表示特定的数据类型。这些后缀能够明确指定字面量的类型&#xff0c;避免类型转换带来的潜在问题。以下是常见的几种类型后缀及其含义&#xff1a; 1. 整数后缀 u 或 U&#xff1a;表示 u…

50.辐射抗扰RS和传导抗扰CS测试环境和干扰特征分析

辐射抗扰RS和传到抗扰CS测试环境和干扰特征分析 1. 辐射抗扰RS2. 传导抗扰CS 1. 辐射抗扰RS 辐射抗扰RS考察对外界电磁场干扰得抗扰能力&#xff0c;测试频段为80MHz~2000MHz&#xff0c;用1KHz得正弦波进行调幅&#xff0c;在电波暗室内进行。测试标准&#xff1a;IEC 61000-…