百度浏览器打开本地HTML文件显示空白,是因为其内核自2021年12月31日起已停止服务与安全更新,且系统级限制导致file://协议资源加载异常、CSS/JS解析中断或DOM树无法挂载,页面连基础结构都无法渲染。

确认是否为本地文件加载限制
移动端和部分桌面端百度浏览器根本禁用file://协议——这不是你的代码问题,而是浏览器主动拦截。双击HTML文件后地址栏显示file:///D:/xxx.html但页面纯白,说明请求甚至没进入渲染管线。
在地址栏手动输入 data:text/html,<b>test</b> 并回车:若显示空白或报错“不支持的格式”,证明HTML5基础解析链路已断裂。
这一步必须先做,否则后续所有清理操作都是无效劳动。
强制绕过file://协议限制
方法一:用HTTP本地服务替代file://
立即学习“前端免费学习笔记(深入)”;
下载并运行 html-deploy 工具,将HTML文件拖入窗口,它会自动启动本地HTTP服务器(如 http://localhost:8080),浏览器访问该地址即可正常加载——所有相对路径、AJAX、ES6模块均能正确解析。
方法二:修改浏览器启动参数(仅限Windows桌面版)
右键百度浏览器快捷方式 → 属性 → 目标栏末尾添加空格后追加 --unsafely-treat-insecure-origin-as-secure="file:///" --user-data-dir="C:/temp-baidu",然后用此快捷方式启动浏览器再打开HTML文件。
【注意:此操作会降低安全等级,仅临时调试使用,关闭浏览器后务必删掉参数】
清除损坏的渲染上下文
第一步:彻底退出进程
按 Ctrl+Shift+Esc 打开任务管理器 → 结束所有名为 baidubrowser.exe 的进程,包括后台隐藏进程。
第二步:替换用户配置目录
进入 %LOCALAPPDATA%\Baidu\BaiduBrowser\User Data\,将整个 User Data 文件夹重命名为 User Data.bak;重启百度浏览器,它会自动生成全新配置目录,强制重建GPU上下文、字体映射表与CSSOM缓存。
第三步:验证效果
直接拖拽HTML文件到新启动的百度浏览器窗口中,观察是否出现内容。若仍为空白,说明该浏览器已不具备本地HTML运行能力,应切换至Chrome/Firefox/Edge。
禁用干扰型扩展与脚本拦截
在地址栏输入 bd://extensions 回车 → 进入扩展管理页 → 将所有扩展开关关闭,尤其移除名称含“ad”“block”“helper”的插件。
广告拦截器常误删 <script type="module"> 标签或屏蔽 cdn.jsdelivr.net 域名,导致ES6模块加载失败、页面白屏。
重启浏览器后重新拖入HTML文件测试。
检查HTML文件本身是否被错误保存
右键HTML文件 → 属性 → 确认扩展名是 .html 而非 .html.txt(Windows默认隐藏已知扩展名,易踩坑)。
用VS Code打开该文件 → 右下角查看编码是否为UTF-8无BOM;如果不是,点击编码 → 选择“通过编码重新打开” → UTF-8。
在文件开头插入标准结构:<!DOCTYPE html><html><head><meta charset="UTF-8"></head><body><p>OK</p></body></html>,保存后再次拖入浏览器。



















