VSCode Markdown预览缩放需同时启用markdown.preview.scrollEditorWithPreview和scrollPreviewWithEditor,否则预览WebView无滚轮/缩放权限;缩放仅支持Ctrl+=/-/0(macOS用Cmd),依赖markdown.preview.zoomLevel配置,不响应editor.mouseWheelZoom或window.zoomLevel。

Markdown预览窗口缩放必须配对启用两个同步选项
Ctrl+滚轮在预览里没反应,不是快捷键失效,而是预览 WebView 根本没获得滚动/缩放权限。VSCode 的 Markdown 预览是独立渲染进程,markdown.preview.scrollEditorWithPreview 和 markdown.preview.scrollPreviewWithEditor 必须同时设为 true,否则预览区不响应任何焦点或滚轮事件。
- 只开其中一个 → 滚动不同步,缩放无效
- 预览标签页未主动点击聚焦 → Ctrl+滚轮传给编辑器,不是预览
- 用
Markdown: Open Preview to the Side命令(而非右键菜单)才能确保双栏模式激活 WebView 缩放上下文 -
editor.mouseWheelZoom对预览完全无影响,它是控制代码字体的,别混淆
预览缩放只能用 Ctrl+= / Ctrl+-,不能靠 window.zoomLevel
window.zoomLevel 控制整个 VSCode 窗口 UI(菜单、侧边栏、状态栏),但对 Markdown 预览内容无效。预览缩放由 WebView 内部 CSS transform: scale() 实现,独立于主窗口缩放逻辑。
- 生效操作只有:
Ctrl+=(放大)、Ctrl+-(缩小)、Ctrl+0(重置到markdown.preview.zoomLevel配置值) -
markdown.preview.zoomLevel是预设值,默认 1.0,可设为1.2或0.8,单位是倍数,支持小数 - 该配置写在用户
settings.json或工作区.vscode/settings.json中均可,无需重启 - macOS 用户注意:Cmd 替代 Ctrl,且系统触控板缩放手势可能劫持 Cmd+双指捏合,需关闭系统偏好设置中的对应选项
分屏视图大小不是缩放问题,是布局参数抢空间
编辑器区域“太窄”、标签页挤成一条线、右侧留白消失——这些不是窗口缩放没调好,而是布局参数在挤压内容区。VSCode 分屏本身不提供“拖拽固定比例”功能,所有宽度控制都靠配置项硬编码。
-
workbench.sideBar.width默认 220px,在高分屏上过大,建议从180开始试,低于160易导致图标文字重叠 -
workbench.editor.tabSizing设为"shrink"会让所有标签页强制等宽压缩,开 5 个以上就侵占横向空间;改"fit"更合理 -
workbench.editor.wrapTabs设为true看似省宽度,实则触发额外布局计算,反而让编辑器区域变窄 - 分屏后想拉宽某一边?直接拖动中间分隔线即可,但该操作不保存——要持久化需靠
workbench.editor.splitSizing(值为"distribute"或"split"),不过它只控制新拆分行为,不影响已有布局
多显示器下预览缩放和分屏布局会错位
VSCode 当前(v1.118)不支持 per-display 缩放,markdown.preview.zoomLevel 和分屏宽度参数都是全局生效。外接 4K 屏时,预览文字可能过小,而笔记本主屏又显得过大。
- 没有自动切换机制,必须手动区分工作区配置:在 4K 项目根目录建
.vscode/settings.json,写入"markdown.preview.zoomLevel": 1.3 - 分屏布局无法按显示器适配,
workbench.sideBar.width等参数一旦设死,所有屏幕共用 - 已打开的预览窗口不会响应新配置,需关闭再重新打开预览标签页才生效
- 最易被忽略的一点:预览缩放重置(
Ctrl+0)只恢复到当前markdown.preview.zoomLevel值,不是 1.0 —— 如果你设了 1.2,重置就是回到 1.2,不是“原始尺寸”


















