推荐修改~/.jupyter/custom/custom.css,因其稳定、跨浏览器、不依赖插件;需手动创建目录和文件,粘贴css后重启jupyter服务生效,避免缩放、jupyter-themes或修改codemirror.css等方案带来的兼容性与维护问题。

直接改 custom.css 是最稳定、跨浏览器、不依赖插件的方案,其他方法(比如缩放网页、改 CodeMirror 源码、用 Dark Reader)要么只影响显示比例、要么下次升级就失效、要么只改局部。
怎么快速生效:往 ~/.jupyter/custom/custom.css 里加几行 CSS
这个路径在 Windows 是 C:\Users\<font color="#FF0000">你的用户名</font>\.jupyter\custom\custom.css,macOS/Linux 是 ~/.jupyter/custom/custom.css。文件不存在就新建一个。
- 确保目录存在:
mkdir -p ~/.jupyter/custom/(Linux/macOS)或手动建好对应文件夹(Windows) - 编辑
custom.css,粘贴以下内容(可按需调整数值):
.CodeMirror pre {
font-size: 14px !important;
}
.rendered_html {
font-size: 16px !important;
}
span.cm-comment {
font-size: 13px !important;
}
div.input_prompt, div.output_prompt {
font-size: 12px !important;
}
保存后重启 Jupyter Notebook —— 不是刷新页面,是彻底关掉服务再 jupyter notebook 重开。
为什么不能只改浏览器缩放(Ctrl + / Cmd +)
缩放改变的是整个页面渲染比例,会导致 UI 元素(如按钮、侧边栏、菜单)一起变大,代码行距、行号对齐、输出框高度都可能错位;而且换台电脑或换个浏览器就得重新调,不具可移植性。
- 缩放 125% 后,
.CodeMirror实际像素没变,只是被浏览器“拉伸”,文字边缘可能发虚 - 导出为 PDF 或 HTML 时,缩放设置不生效,字体又变回默认小号
- 多人协作时,别人看不到你本地的缩放效果,注释和 markdown 渲染一致性差
用 jupyter-themes 调字体的坑在哪
jt -t onedork -fs 14 看似方便,但实际有三个隐藏问题:
- 它会覆盖
custom.css,如果你之前手动写过样式,执行jt后全没了 - 主题内置的
-fs只控制代码区字体,对span.cm-comment(注释)、.rendered_html(markdown 输出)无效 - 升级
jupyter-themes后,某些主题的 Less 变量名可能变更(比如@cm-comment-size在新版里被移除),导致自定义字体大小失效
改 codemirror.css 源码为什么不推荐
路径通常是 anaconda3/Lib/site-packages/notebook/static/components/codemirror/lib/codemirror.css,改这里确实能生效,但风险明确:
- conda 或 pip 升级
notebook包时,该文件会被覆盖,你的修改直接丢失 - 不同 notebook 版本(如 6.x vs 7.x)中类名可能变化,比如
.CodeMirror-line-like在新版里已弃用 - 多人共享环境时,其他人不会同步你的源码修改,协作时显示不一致
真正需要长期维护的项目,custom.css 是唯一既安全又可版本管理的方式 —— 它不碰任何包内文件,只叠加样式,且可随项目一起 git commit。











