如何使用 HighlightJS 为 HTML 代码添加行号?
时间:2024-11-12 18:43:04 206浏览 收藏
“纵有疾风来,人生不言弃”,这句话送给正在学习文章的朋友们,也希望在阅读本文《如何使用 HighlightJS 为 HTML 代码添加行号? 》后,能够真的帮助到大家。我也会在后续的文章中,陆续更新文章相关的技术文章,有好的建议欢迎大家在评论留言,非常感谢!
如何使用 HighlightJS 添加 HTML 源代码行号
在使用 HighlightJS 突出显示 HTML 源代码时,你提到无法为代码添加行号。这是因为 HighlightJS 默认不会添加行号,你需要手动添加。
官方文档说明
官方文档中关于行号的描述:https://highlightjs.readthedocs.io/en/latest/line-numbers.html
修改后的代码
为了解决你的问题,修改后的代码如下:
<!DOCTYPE html> <head> <style> pre { position: relative; margin-bottom: 24px; border-radius: 3px; border: 1px solid #C3CCD0; background: #FFF; overflow: hidden; } code { display: block; padding: 12px 24px; overflow-y: auto; font-weight: 300; font-family: Menlo, monospace; font-size: 0.8em; } code.has-numbering { margin-left: 21px; } .pre-numbering { position: absolute; top: 0; left: 0; width: 20px; padding: 12px 2px 12px 0; border-right: 1px solid #C3CCD0; border-radius: 3px 0 0 3px; background-color: #EEE; text-align: right; font-family: Menlo, monospace; font-size: 0.8em; color: #AAA; } </style> <link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.7.0/styles/default.min.css"> <script src="http://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.7.0/highlight.min.js"></script> <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script> </head> <body> <pre> <code class="language-html"> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>行号</title> </head> <body> <p>测试页面</p> </body> </html> </code> </pre> <script> hljs.highlightAll(); $(function() { $('pre code').each(function() { var lines = $(this).text().split('\n').length - 1; var $numbering = $('<ul/>').addClass('pre-numbering'); $(this) .addClass('has-numbering') .parent() .append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('<li/>').text(i)); } }); }); </script> </body> </html>
说明
- 确保引入了 HighlightJS 库和相关 CSS 文件。
- 在 <code> 元素上添加 language-html 类,以正确突出显示 HTML 代码。
- 添加了 JavaScript 代码,它将根据代码行数动态生成行号。
- pre-numbering CSS 类样式用于设置行号的样式。
今天关于《如何使用 HighlightJS 为 HTML 代码添加行号? 》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!
相关阅读
更多>
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
最新阅读
更多>
-
424 收藏
-
243 收藏
-
106 收藏
-
327 收藏
-
445 收藏
-
151 收藏
课程推荐
更多>
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 507次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习