头图

在中国传统历法中,五月初一象征着初夏的启程,也寓意着新的成长与蜕变。今天,我们很高兴地宣布 —— Docsify v5.0.0-rc.1 版本发布!

在延续零构建、即写即部署理念的同时,Docsify 迎来了全新的样式设计、更友好的可访问性以及更稳健的插件机制。

可以通过访问 http://preview.docsifyjs.org/ 进行体验。

那么,这个版本有哪些值得关注的亮点?我们为你准备了一份简洁明了的更新说明:

全新样式系统:现代化 UI 与 CSS 重构

本次更新带来了 Docsify 自 2017 年以来首次 全面的 UI 更新CSS 样式系统重写,包括:

  • 使用现代 CSS 语法与构建工具(如 CSS 自定义属性、PostCSS)重构所有核心样式
  • 提供一个全新的 “核心主题”,简化样式维护,提升一致性
  • 引入主题插件(Theme Add-ons)机制,支持灵活组合颜色、字体、排版等样式
  • 加强无障碍访问(Accessibility)、响应式表现与交互体验
  • 保持大多数 v4 插件兼容性,迁移成本低

亮点功能包括:

  • 🧩 一个核心样式文件,多个可组合的主题插件(如 Vue 风格、深色模式、渐变背景等)
  • 🎨 更丰富的 UI 元素样式:按钮、表单、提示框、任务列表、键盘快捷键等
  • 🔍 重构搜索插件样式,新增键盘快捷键提示
  • 🧠 更合理的结构与 class 命名,方便扩展与定制
  • 🧪 全浏览器测试支持(Chrome、Firefox、Safari、Edge)

这一重构参考了社区项目 docsify-themeable,将 Docsify 核心样式与主题样式解耦,并内置了丰富的 CSS 自定义属性,使主题定制更加灵活高效。

感谢 @jhildenbiddle#2469 中的实现。

加强无障碍访问与导航优化

为了让更多用户无障碍地使用 Docsify,本次更新在可访问性方面也做出了显著优化。

我们新增了“跳至主内容”的快捷链接,方便使用键盘或屏幕阅读器的用户快速定位正文区域;

同时,对导航栏和侧边栏的交互元素补充了 ARIA 属性,使页面结构对辅助技术更友好。

无论是视觉用户还是依赖辅助工具的用户,都能获得更清晰、流畅的导航体验。

灵活自定义的键盘快捷键配置

为了进一步提升文档站点的可用性与交互体验,Docsify v5 引入了键盘快捷键支持。通过新增的 keyBindings 配置项,用户现在可以通过键盘快速完成常见操作:

  • 按下 /Cmd/Ctrl + k 可快速聚焦搜索框,这一快捷键已成为 Docusaurus、GitBook、Starlight 等主流文档工具的通用操作;
  • 按下 \ 可快速展开或收起侧边栏,方便在内容与导航之间切换。

重要 Bug 修复,提升稳定性与用户体验

本次版本修复了一系列关键问题,确保 Docsify 在各类使用场景下表现更加稳定流畅:

  • 修复了纯数字 ID 导致的问题(#2021
  • 修复了嵌入内容处理循环的结束条件(#1824
  • 改进了 isExternal 功能的增强(#2093
  • 修复了无障碍角色和 ARIA 标签问题(#2304
  • 修复了搜索索引生成错误(#1933
  • 修复了 Husky 升级后无法自动安装问题(#2325
  • 修复了 Carbon 代码块渲染异常(#2387
  • 防止了不必要的 themeColor 弃用通知弹出(#2403
  • 修复了开发模式下热重载及 Source Maps 问题(#2402
  • 修复了“跳转至主内容”功能的滚动行为(#2401
  • 修复了搜索索引生成错误(#1933
  • 修复了别名含参数时扩展名追加错误(#1855
  • 防止了不必要的 IntersectionObserver 初始回调执行(#2523
  • 清理了搜索内容中的 Markdown 元素(#2457
  • 修复了自动标题配置的生成函数错误(#2474
  • 修复了 loadSider 设为 false 时的渲染结构问题(#2470
  • 同步了页面标题以匹配标题配置(#2478
  • 修复了标题解析错误(#2526
  • 修复了历史路由模式下跨域链接问题(#1967

移除 SSR(服务端渲染)支持

SSR 是实验性的且不完整的,所以为了简化代码库和提升维护效率,Docsify v5 移除了对服务端渲染(SSR)的支持。

希望有人有意愿并且有时间时,可以提出一个全新且完整的 SSR/SSG 实现方案。

资源地址变更

v4 版本中的资源放在lib下并且同级有一个额外的 themes 目录,而 v5 版本将其重命名为 dist,并移除了同级的 themes 目录。

# v4
├── lib
│   ├── docsify.js
│   ├── docsify.min.js
│   ├── plugins
│   └── themes # 压缩主题文件
└── themes # 原始主题文件

# v5
├── dist
│   ├── docsify.js
│   ├── docsify.min.js
│   ├── plugins
│   └── themes
  • v4:
<link rel="stylesheet" href="//cdn.jsdelivr.net/npm/docsify@4/themes/vue.css" />


<script src="//cdn.jsdelivr.net/npm/docsify@4"></script>
  • v5:

需要注意的是:v5 的正式版本还未发布,目前只能@rc标签进行访问,将下面的@5替换为@rc即可。

<!-- Core Theme -->
<link rel="stylesheet" href="//cdn.jsdelivr.net/npm/docsify@5/dist/themes/core.min.css" />
<!-- Vue Theme (add-on) -->
<link rel="stylesheet" href="//cdn.jsdelivr.net/npm/docsify@5/dist/themes/addons/vue.min.css" />

<script src="//cdn.jsdelivr.net/npm/docsify@5"></script>

强烈建议在引用 CDN URL 时使用 @ 指定版本,避免因为发布新版本导致你的网站出现问题。

感谢所有贡献者!

此次更新离不开社区每一位贡献者的支持与努力,无论是功能开发、Bug 修复、文档完善还是依赖升级,感谢你们推动 Docsify 向前发展!

特别感谢以下 首次贡献者,欢迎加入 Docsify 社区!

同时也感谢持续为项目做出贡献的开发者:

这一版本是 v5 正式版前的重要候选阶段,我们期待社区开发者、用户和文档爱好者的积极试用与反馈,共建更好的 Docsify!🎉


沈唁
1.9k 声望1.2k 粉丝