如何用 HTML 展示计算机代码
原文:如何用 HTML 展示计算机代码 | w3cschool笔记
(请勿将文章标记为付费!!!!)
在编程学习和文档编写过程中,清晰地展示代码是一项关键技能。HTML 作为网页开发的基础语言,提供了多种展示计算机代码的方法。本文将为你详细介绍如何使用 HTML 展示计算机代码,并结合最新技术标准规范,帮助你在编程狮(w3cschool.cn)的学习之旅中更高效地记录和分享代码。
什么是 HTML
HTML(HyperText Markup Language)是用于创建网页的标准标记语言。它通过一系列的标签(tags)来定义网页的结构和内容,浏览器会根据这些标签来解析和显示网页。HTML 是所有网页开发的基础,无论你是想成为前端开发工程师还是全栈开发工程师,掌握 HTML 都是必不可少的。
HTML 展示代码的基本方法
1. 使用 <code>
标签
<code>
标签用于定义代码片段,它可以告诉浏览器这是代码内容,通常浏览器会以等宽字体(monospace font)来显示 <code>
标签中的内容,这使得代码更易于阅读。例如:
<p>这是一个简单的 Python 代码示例:</p>
<code>
print("Hello, 编程狮!")
</code>
在浏览器中显示为:
这是一个简单的 Python 代码示例: print("Hello, 编程狮!")
<code>
标签适合用于在文本中插入一小段代码,比如函数名、变量名或者简短的代码行。
2. 使用 <pre>
标签
<pre>
标签(preformatted text)用于定义预格式化的文本。在 <pre>
标签中的文本会保留空格和换行,这使得它非常适合展示代码块,因为代码的缩进和格式对于代码的可读性至关重要。例如:
<pre>
<html>
<head><title>编程狮示例</title>
</head>
<body><p>这是一个编程狮的示例页面。</p>
</body>
</html>
</pre>
在浏览器中显示为:
<html>
<head><title>编程狮示例</title>
</head>
<body><p>这是一个编程狮的示例页面。</p>
</body>
</html>
注意:在上面的示例中,我们使用了 HTML 实体(如 <
表示 <
,>
表示 >
),因为直接在 HTML 中写 <
和 >
可能会被浏览器误解为 HTML 标签。在展示 HTML 代码时,需要对这些特殊字符进行转义。
3. 结合 <code>
和 <pre>
标签
为了更好地展示代码块,你可以将 <code>
标签和 <pre>
标签结合使用,这样既能保留代码的格式,又能以等宽字体显示代码。例如:
<pre><code>
function sayHello() {console.log("Hello, W3Cschool!");
}
sayHello();
</code></pre>
在浏览器中显示为:
function sayHello() {console.log("Hello, W3Cschool!");
}
sayHello();
这种方法是展示代码块的最佳实践,能够确保代码在网页中正确显示并易于阅读。
HTML 展示代码的高级技巧
1. 添加语法高亮
虽然 HTML 本身不支持语法高亮,但你可以通过 CSS 来实现简单的语法高亮效果。例如,为关键字、字符串、注释等添加不同的颜色。以下是一个简单的示例:
<style>.keyword { color: purple; }.string { color: red; }.comment { color: green; }
</style><pre><code>
<html>
<head><title>编程狮示例</title>
</head>
<body><p>这是一个编程狮的示例页面。</p>
</body>
</html>
</code></pre>
通过 CSS 类来为不同的代码元素添加颜色,可以让你的代码展示更加专业和美观。在实际项目中,通常会使用专门的代码高亮库,如 Prism.js 或 Highlight.js,这些库提供了丰富的主题和语言支持,能够轻松实现漂亮的代码高亮效果。
2. 使用第三方代码高亮库
为了更方便地实现代码高亮,你可以使用第三方代码高亮库。以下是一个使用 Prism.js 的示例:
<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>HTML 代码展示 - 编程狮</title><!-- 引入 Prism.js 的 CSS --><link href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.28.0/themes/prism.min.css" rel="stylesheet" />
</head>
<body><h1>Python 代码示例</h1><pre><code class="language-python">
def say_hello():print("Hello, W3Cschool!")
say_hello()</code></pre><h1>HTML 代码示例</h1><pre><code class="language-html">
<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><title>编程狮示例</title>
</head>
<body><p>欢迎来到编程狮!</p>
</body>
</html></code></pre><!-- 引入 Prism.js 的 JS 文件 --><script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.28.0/prism.min.js"></script><!-- 引入 Prism.js 的 Python 语言支持 --><script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.28.0/components/prism-python.min.js"></script>
</body>
</html>
在浏览器中打开这个页面,你会看到代码被自动高亮显示,不同的语法元素(如关键字、字符串、标签等)会显示为不同的颜色,这样可以大大提升代码的可读性。
3. 创建代码缩放和折叠功能
为了在页面上更高效地展示代码,尤其是当代码很长时,你可以添加代码缩放和折叠功能。这通常需要结合 JavaScript 来实现。以下是一个简单的示例:
<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>代码缩放和折叠示例 - 编程狮</title><style>.code-container {margin: 20px 0;padding: 10px;background-color: #f5f5f5;border: 1px solid #ddd;border-radius: 5px;overflow: hidden;}.code-header {display: flex;justify-content: space-between;padding: 5px 0;border-bottom: 1px solid #ddd;cursor: pointer;}.code-content {padding: 10px 0;max-height: 200px;overflow-y: auto;}.collapsed {max-height: 0;overflow: hidden;transition: max-height 0.3s ease-out;}</style>
</head>
<body><h1>代码缩放和折叠示例</h1><div class="code-container"><div class="code-header" onclick="toggleCode(this)"><span>点击展开/折叠代码</span><span>Python 示例代码</span></div><div class="code-content collapsed"><pre><code>
def factorial(n):if n == 0:return 1else:return n * factorial(n-1)print(factorial(5)) # 输出 120</code></pre></div></div><div class="code-container"><div class="code-header" onclick="toggleCode(this)"><span>点击展开/折叠代码</span><span>HTML 示例代码</span></div><div class="code-content collapsed"><pre><code>
<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><title>编程狮示例</title>
</head>
<body><h1>欢迎来到编程狮!</h1><p>这是我的第一个 HTML 页面。</p>
</body>
</html></code></pre></div></div><script>function toggleCode(element) {const content = element.nextElementSibling;content.classList.toggle('collapsed');}</script>
</body>
</html>
在这个示例中,我们通过 CSS 和 JavaScript 实现了代码块的折叠和展开功能。用户可以点击代码块的头部来展开或折叠代码内容,这样可以节省页面空间,提升用户体验。
在编程狮中实践 HTML 代码展示
在编程狮(w3cschool.cn)的学习过程中,你可以在以下场景中实践 HTML 代码展示:
- 课程笔记:在学习编程狮的 HTML、CSS、JavaScript 课程时,用 HTML 记录代码示例,制作自己的学习笔记网页。
- 项目分享:在编程狮的项目展示区,用 HTML 创建一个漂亮的网页来展示你的代码和项目成果。
- 问题求助:在编程狮的讨论区提问时,使用
<pre>
和<code>
标签清晰地展示你的代码,方便其他学习者和专家帮助你解决问题。
推荐学习资源
如果你想更系统地学习 HTML 和编程技术,编程狮(w3cschool.cn)提供了以下优质课程:
- HTML5 基础教程:全面讲解 HTML 的基本语法和常用标签,适合零基础学习者。
- CSS3 入门与实战:学习如何使用 CSS 美化网页,结合 HTML 创建精美的页面。
- JavaScript 基础入门课程:掌握前端开发的核心技术,实现网页的交互效果。
- Python 编程基础:学习 Python 语言,结合 HTML 展示代码,提升编程能力。
- Web前端入门扫盲课程:写给编程纯小白的无门槛微课。
相关文章:

如何用 HTML 展示计算机代码
原文:如何用 HTML 展示计算机代码 | w3cschool笔记 (请勿将文章标记为付费!!!!) 在编程学习和文档编写过程中,清晰地展示代码是一项关键技能。HTML 作为网页开发的基础语言&#x…...

2025年ESWA SCI1区TOP,自适应学习粒子群算法AEPSO+动态周期调节灰色模型,深度解析+性能实测
目录 1.摘要2.粒子群算法PSO原理3.改进策略4.结果展示5.参考文献6.代码获取7.算法辅导应用定制读者交流 1.摘要 能源数据的科学预测对于能源行业决策和国家经济发展具有重要意义,尤其是短期能源预测,其精度直接影响经济运行效率。为了更好地提高预测模型…...

LeetCode - 53. 最大子数组和
目录 题目 Kadane 算法核心思想 Kadane 算法的步骤分析 读者可能的错误写法 正确的写法 题目 53. 最大子数组和 - 力扣(LeetCode) Kadane 算法核心思想 定义状态变量: currentSum: 表示以当前元素为结束的子数组的最大和。 maxSum: 记录全局最大…...
稻米分类和病害检测数据集(猫脸码客第237期)
稻米分类图像数据集:驱动农业智能化发展的核心资源 引言 在全球农业体系中,稻米作为最关键的粮食作物之一,其品种多样性为人类饮食提供了丰富选择。然而,传统稻米分类方法高度依赖人工经验,存在效率低、主观性强等缺…...
DOM(文档对象模型)深度解析
DOM(文档对象模型)深度解析 DOM 是 HTML/XML 文档的树形结构表示,提供了一套让 JavaScript 动态操作网页内容、结构和样式的接口。 一、DOM 核心概念 1. 节点(Node)类型 类型值说明示例ELEMENT_NODE1元素节点<div>, <p>TEXT_NODE3文本节点元素内的文字COMMEN…...
四、Sqoop 导入表数据子集
作者:IvanCodes 日期:2025年6月4日 专栏:Sqoop教程 当不需要将关系型数据库中的整个表一次性导入,而是只需要表中的一部分数据时,Sqoop 提供了多种方式来实现数据子集的导入。这通常通过过滤条件或选择特定列来完成。 …...

【读代码】从预训练到后训练:解锁语言模型推理潜能——Xiaomi MiMo项目深度解析
项目开源地址:https://github.com/XiaomiMiMo/MiMo 一、基本介绍 Xiaomi MiMo是小米公司开源的7B参数规模语言模型系列,专为复杂推理任务设计。项目包含基础模型(MiMo-7B-Base)、监督微调模型(MiMo-7B-SFT)和强化学习模型(MiMo-7B-RL)等多个版本。其核心创新在于通过…...

DROPP算法详解:专为时间序列和空间数据优化的PCA降维方案
DROPP (Dimensionality Reduction for Ordered Points via PCA) 是一种专门针对有序数据的降维方法。本文将详细介绍该算法的理论基础、实现步骤以及在降维任务中的具体应用。 在现代数据分析中,高维数据集普遍存在特征数量庞大的问题。这种高维特性不仅增加了计算…...
DeepSeek11-Ollama + Open WebUI 搭建本地 RAG 知识库全流程指南
🛠️ Ollama Open WebUI 搭建本地 RAG 知识库全流程指南 💻 一、环境准备 # 1. 安装 Docker 和 Docker Compose sudo apt update && sudo apt install docker.io docker-compose -y# 2. 添加用户到 docker 组(避免 sudo 权限&…...
【AI大模型】Transformer架构到底是什么?
引言 —— 想象一台能瞬间读懂整本《战争与和平》、精准翻译俳句中的禅意、甚至为你的设计草图生成前端代码的机器——这一切并非科幻,而是过去七年AI领域最震撼的技术革命:Transformer架构创造的奇迹。 当谷歌在2017年揭开Transformer的神秘面纱时&…...
code-server安装使用,并配置frp反射域名访问
为什么使用 code-server是VSCode网页版开发软件,可以在浏览器访问编程,可以使用vscode中的插件。如果有自己的服务器,使用frp透传后,域名访问在线编程,使用方便,打开的服务端口不需要单独配置,可…...

MTK-Android12-13 Camera2 设置默认视频画质功能实现
MTK-Android12-13 Camera2 设置默认视频画质功能实现 场景:部分客户使用自己的mipi相机安装到我们主板上,最大分辨率为1280720,但是视频画质默认的是640480。实际场景中,在默认视频分辨率情况下拍出来的视频比较模糊、预览也不清晰…...
Kafka 消息模式实战:从简单队列到流处理(一)
一、Kafka 简介 ** Kafka 是一种分布式的、基于发布 / 订阅的消息系统,由 LinkedIn 公司开发,并于 2011 年开源,后来成为 Apache 基金会的顶级项目。它最初的设计目标是处理 LinkedIn 公司的海量数据,如用户活动跟踪、消息传递和…...

Linux知识回顾总结----进程状态
本章将会介绍进程的一些概念:冯诺伊曼体系结构、进程是什么,怎么用、怎么表现得、进程空间地址、物理地址、虚拟地址、为什么存在进程空间地址、如何感性得去理解进程空间地址、环境变量是如何使用的。 目录 1. 冯诺伊曼体系结构 1.1 是什么 1.2 结论 …...

Linux 进程管理学习指南:架构、计划与关键问题全解
Linux 进程管理学习指南:架构、计划与关键问题全解 本文面向初学者,旨在帮助你从架构视角理解 Linux 进程管理子系统,构建系统化学习路径,并通过结构化笔记方法与典型问题总结,夯实基础、明确方向,逐步掌握…...
【异常】极端事件的概率衰减方式(指数幂律衰减)
在日常事件中,极端事件的概率衰减方式并非单一模式,而是取决于具体情境和数据生成机制。以下是科学依据和不同衰减形式的分析: 1. 指数衰减(Exponential Decay) 典型场景:当事件服从高斯分布(正态分布)或指数分布时,极端事件的概率呈指数衰减。 数学形式:概率密度函数…...

Git 使用大全:从入门到精通
Git 是目前最流行的分布式版本控制系统,被广泛应用于软件开发中。本文将全面介绍 Git 的各种功能和使用方法,包含大量代码示例和实践建议。 文章目录 Git 基础概念版本控制系统Git 的特点Git 的三个区域Git 文件状态 Git 安装与配置安装 GitLinuxmacOSWi…...

奈飞工厂官网,国内Netflix影视在线看|中文网页电脑版入口
奈飞工厂是一个专注于提供免费Netflix影视资源的在线播放平台,致力于为国内用户提供的Netflix热门影视内容。该平台的资源与Netflix官网基本同步,涵盖电影、电视剧、动漫和综艺等多个领域。奈飞工厂的界面简洁流畅,资源分类清晰,方…...

Python基于蒙特卡罗方法实现投资组合风险管理的VaR与ES模型项目实战
说明:这是一个机器学习实战项目(附带数据代码文档),如需数据代码文档可以直接到文章最后关注获取。 1.项目背景 在金融投资中,风险管理是确保资产安全和实现稳健收益的关键环节。随着市场波动性的增加,传统…...
【bat win系统自动运行脚本-双击启动docker及其它】
win系统自动化运行脚本 创建一个 startup.bat右键编辑,输入以下示例 echo off start "" "C:\Program Files\Docker\Docker\Docker Desktop.exe"timeout /t 5docker start your_container_namestart cmd /k "conda activate your_conda_e…...
SpringBoot离线应用的5种实现方式
在当今高度依赖网络的环境中,离线应用的价值日益凸显。无论是在网络不稳定的区域运行的现场系统,还是需要在断网环境下使用的企业内部应用,具备离线工作能力已成为许多应用的必备特性。 本文将介绍基于SpringBoot实现离线应用的5种不同方式。…...
js 比较两个对象的值,不相等就push对象的key
在JavaScript中,比较两个对象(object)的值并找出不相等的key,可以通过多种方法实现。下面是一些常用的方法: 方法1:使用JSON.stringify 这种方法适用于简单的对象,其中对象的值是基本类型或可…...
SQL 注入开放与修复
开发: SQL 注入是一种数据库攻击手段。攻击者通过向应用程序提交恶意代码来改变原 SQL 语句的含义, 进而执行任意 SQL 命令,达到入侵数据库乃至操作系统的目的。 例如:下面代码片段中,动态构造并执行了一个 SQ…...

【学习记录】Office 和 WPS 文档密码破解实战
文章目录 📌 引言📁 Office 与 WPS 支持的常见文件格式Microsoft Office 格式WPS Office 格式 🛠 所需工具下载地址(Windows 官方编译版)🔐 破解流程详解步骤 1:提取文档的加密哈希值步骤 2&…...

AGV|无人叉车工业语音播报器|预警提示器LBE-LEX系列性能与接线说明
LBE-LEX系列AGV|无人叉车工业语音播报器|预警提示器,涵盖LBE-LEI-M-00、LBE-LESM-00、LBE-LES-M-01、LBE-LEC-M-00、LBE-KEI-M-00、LBE-KES-M-00、LBE-KES-M-01、LBE-KEC-M-00等型号,适用于各种需要语音提示的场景,主要有AGV、AMR机器人、无人…...

【电路笔记】-变压器电压调节
变压器电压调节 文章目录 变压器电压调节1、概述2、变压器电压调节3、变压器电压调节示例14、变压器电压调节示例25、变压器电压调节示例36、总结变压器电压调节是变压器输出端电压因连接负载电流的变化而从其空载值向上或向下变化的比率或百分比值。 1、概述 电压调节是衡量变…...

多层PCB技术解析:从材料选型到制造工艺的深度实践
在电子设备集成度与信号传输要求不断提升的背景下,多层PCB凭借分层布局优势,成为高速通信、汽车电子、工业控制等领域的核心载体。其通过导电层、绝缘层的交替堆叠,实现复杂电路的立体化设计,显著提升空间利用率与信号完整性。 一…...

(33)课54:3 张表的 join-on 连接举例,多表查询总结。数据库编程补述及游标综合例题。静态 sqL与动态sqL(可带参数)
(112)3 张表的 join-on 连接举例 : (113) 多表查询总结 : (114)数据库编程补述 : 综合例题 : 以上没有动手练习,不知道这样的语法是否…...
Vue3 hooks
export default function(){ let name; function getName(){ return name; } return {name,getName} } use it ----------------------------------------------- import useName from hooks/useName const {name,getName} useName(); 这段代码展示了一个自定义 Vue3钩…...

centos挂载目录满但实际未满引发系统宕机
测试服务器应用系统突然挂了,经过排查发现是因为磁盘“满了”导致的,使用df -h查看磁盘使用情况/home目录使用率已经到了100%,但使用du -sh /home查看发现实际磁盘使用还不到1G,推测有进程正在写入或占用已删除的大文件(Linux 系统…...