vscode不内置浏览器,而是调用系统默认浏览器或插件配置的浏览器;live server通过http服务支持自动刷新和跨域,open in browser用file://协议但受限于cors。

VSCode 打开 HTML 用的是哪个浏览器?
VSCode 本身不内置浏览器,它只是调用系统默认浏览器(file:// 协议)或你配置的特定浏览器可执行文件。如果你没改过任何设置,点“Open in Default Browser”大概率会打开 Windows 的 Edge、macOS 的 Safari,甚至某些旧系统里的 IE——这取决于你操作系统层面的默认设置,和 VSCode 无关。
Live Server 和 Open in Browser 插件怎么选?
这是两个最常用但逻辑完全不同的方案,选错会导致“改了设置却没生效”:
-
Live Server:起一个本地 HTTP 服务(比如
http://127.0.0.1:5500/index.html),再用你指定的浏览器打开这个地址。它支持自动刷新、跨域请求、fetch读本地 JSON,适合开发阶段。 -
Open in Browser:直接用
file://协议打开本地 HTML 文件(比如file:///Users/xxx/index.html)。轻量、快,但部分 JS 功能受限(如XMLHttpRequest读同目录 JSON 会因 CORS 被拒)。
别混着用——比如你只配了 Live Server 的 liveServer.settings.CustomBrowser,却右键点了 “Open in Default Browser”,那改的设置根本不会触发。
改浏览器必须配对插件+配置项
单改系统默认浏览器没用;只改 VSCode 设置也不一定生效。得看你在用哪个插件,并精准修改对应配置项:
- 用 Live Server:打开设置(
Ctrl + ,或Cmd + ,),搜Live Server: Browser,在liveServer.settings.CustomBrowser里填chrome(Windows/macOS 都认这个简写)或完整路径(如/Applications/Google Chrome.app)。 - 用 Open in Browser:搜
openInBrowser.default,填浏览器的可执行路径(macOS 填/Applications/Google Chrome.app,Windows 填C:\Program Files\Google\Chrome\Application\chrome.exe)。 - 别漏掉重启:改完设置后,**关掉所有 VSCode 窗口再重开**,否则插件可能仍缓存旧配置。
为什么改了还是弹出 Edge / Safari?
常见原因不是配置错,而是被“覆盖”了:
- 多个插件同时监听 HTML 右键菜单(比如 Live Server + Open in Browser + View In Browser),VSCode 会按安装顺序或激活优先级响应,你点的“Open in Default Browser”可能实际触发的是另一个插件的逻辑。
- 快捷键冲突:比如你绑了
Alt+B给 Open in Browser,但 Live Server 的Go Live按钮也在右下角常驻,一不小心就点错了。 - 配置写在了错误层级:VSCode 设置分“用户级”和“工作区级”,如果在项目根目录下了
.vscode/settings.json,但你改的是全局设置,那项目里就无效。
最稳的办法:卸载其他浏览器预览类插件,只留一个;确认右键菜单里出现的是你要的那个选项名;改完立刻重启 VSCode,再测试。










