VSCode默认通过系统命令打开HTML文件,需用Open in Browser插件配置open-in-browser.default为chrome或完整路径,或用Live Server配置liveServer.settings.CustomBrowser指定Chrome。

VSCode 默认打开 HTML 用的是系统默认浏览器,不是你装的 Chrome
VSCode 本身没有全局“默认浏览器”概念,它只是调用系统级的 open(macOS)、start(Windows)或 xdg-open(Linux)命令来打开文件。所以当你右键 HTML 文件 → “Open With Default Browser”,它打开的其实是操作系统当前设为“默认网页浏览器”的那个——哪怕你天天用 Chrome 调试,只要没在 Windows 设置里把它设为系统默认,就可能弹出 Edge、360、甚至 IE(如果还残留着)。
- 验证方式:在任意文本文件里写
<a href="https://example.com">test</a>,双击打开,看跳转到哪个浏览器 - 真正想控制打开行为,必须借助插件,比如
Open in Browser或Live Server - 别在 VSCode 设置里搜 “default browser” 乱点——原生设置项
workbench.action.terminal.openNativeConsole这类根本无关
用 Open in Browser 插件指定 Chrome,但配置项名容易填错
装好 Open in Browser 后,关键配置是 open-in-browser.default,但它不接受“Chrome”“Google Chrome”“chrome.exe”这种模糊写法,只认进程名或完整路径,且大小写敏感、空格不能多。
- 正确值示例(Windows):
chrome(前提是 PATH 里有 chrome)、C:\Program Files\Google\Chrome\Application\chrome.exe - 错误写法:
Google Chrome(会报错找不到进程)、chrome.exe(末尾空格导致失败)、Chrome(首字母大写,部分版本不识别) - 配置位置:Ctrl + , → 搜索
open-in-browser.default→ 在设置框里粘贴上面任一合法值 → Ctrl+S 保存 - 生效后右键菜单会出现
Open in Default Browser(快捷键Alt+B),这才走你配的 Chrome
Live Server 更适合开发调试,但浏览器参数要单独配
如果你用 Live Server 启服务(比如点击右下角 “Go Live”),它默认仍走系统默认浏览器;想强制用 Chrome,得改它的专属配置项 liveServer.settings.CustomBrowser,而不是通用的 open-in-browser 配置。
- 配置路径:Ctrl + , → 搜索
Live Server: Browser→ 找到Live Server › Settings: Browser - 可填值:
chrome、msedge、firefox,也支持完整路径,例如C:\Program Files\BraveSoftware\Brave-Browser\Application\brave.exe - 注意:这个配置只影响“Open with Live Server”动作,不影响右键“Open in Default Browser”
- 额外好处:Live Server 自动刷新、支持热重载、带本地服务器地址(
http://127.0.0.1:5500/xxx.html),比直接双击打开更接近真实部署环境
插件冲突和缓存导致“明明配了还是开错浏览器”
常见现象:改完 open-in-browser.default,重启 VSCode,右键还是弹出 Edge。大概率是插件冲突或旧缓存没清掉。
- 检查是否同时装了
View In Browser和Open in Browser—— 两者功能重复,优先级可能打架,建议只留一个 - VSCode 的工作区设置(
.vscode/settings.json)会覆盖用户设置,打开该文件看看有没有残留的旧配置,比如"open-in-browser.default": "edge" - 插件更新后有时配置项名会变(如旧版叫
openInBrowser.default,新版是open-in-browser.default),删掉重输一遍最稳 - 极端情况:杀掉所有
chrome.exe进程再试,某些后台 Chrome 实例会劫持新启动请求
最常被忽略的一点:VSCode 不会主动告诉你配置是否生效,也不会校验你填的浏览器路径是否存在。它只是静默执行命令——路径错、权限不够、防病毒软件拦截,都会表现为“没反应”或“开了别的浏览器”。动手前先手动在终端跑一遍你填的命令,比如 chrome --new-tab about:blank,确认它真能起来。










