Bootstrap 5 支持主流浏览器最新稳定版及最近两个大版本,排除24个月内无更新且使用率低的“已死亡”版本,具体由.browserslistrc中“>=0.5%、last 2 major versions、not dead”规则定义。

Bootstrap 5 不支持 IE,Bootstrap 6 已彻底放弃对所有旧版浏览器的兼容性妥协。如果你还在查“Bootstrap 支持哪些浏览器”,首先要确认你用的是哪个版本——不同版本的底线差异极大,混用会导致样式错乱、JS 报错或功能直接失效。
Bootstrap 5 的实际支持范围
官方明确支持的是各主流浏览器的「最新稳定版 + 最近两个大版本」,同时排除已死亡(not dead)的版本。具体体现在 .browserslistrc 中:
-
>= 0.5%:全球使用率超 0.5% 的浏览器版本 -
last 2 major versions:Chrome/Firefox/Safari/Edge 各自最近两个主版本 -
not dead:自动剔除 24 个月内无更新、且使用率 not Explorer :IE 完全不支持,v5 里连 polyfill 都没留入口
实测中,Chrome 120+、Firefox 128+、Safari 17.4+、Edge 120+ 均可正常运行栅格、modal、dropdown 等核心组件;Android WebView 需要 ≥ v12(对应 Android 12+ 系统)。
Bootstrap 6 的浏览器门槛直接拉到当前最新版
2026 年 10 月发布的 Bootstrap 6 不再做任何向后兼容让步。它要求:
-
Chrome / Edge ≥ 130(2026 年 9 月刚发布的稳定版) -
Firefox ≥ 132(2026 年 10 月中旬推送) -
Safari ≥ 18(随 macOS Sequoia 15.0 正式发布)
这意味着:Autoprefixer 不再注入任何厂商前缀;CSS 变量、aspect-ratio、:has() 等现代特性被默认启用;document.querySelector 和 Promise 等 API 不再做存在性检测。如果你的用户仍有大量 Chrome 128 或 Safari 17.5,Bootstrap 6 会直接跳过 JS 初始化,部分组件(如 offcanvas)可能完全不可用。
bootstrap-fileinput 这类插件的兼容性陷阱
第三方插件往往比 Bootstrap 主体更保守,容易成为兼容性短板。以 bootstrap-fileinput 为例:
- 它通过
themes/fa5/theme.js支持 Bootstrap 5,但内部仍依赖jQuery 3.6+—— 而 Bootstrap 5 官方已弃用 jQuery - 若你在 Bootstrap 6 项目中强行引入该插件,
$().fileinput()会因$未定义而报ReferenceError - 其主题文件里的图标类名(如
fa-upload)若未匹配你实际加载的 Font Awesome 版本(FA5 vs FA6),上传按钮就会显示为空白方块
解决办法不是降级 Bootstrap,而是换用原生方案: + CSS :is([type=file])::file-selector-button 自定义样式,或改用 dropzone 这类纯现代 API 实现的库。
真正决定兼容性的从来不是“Bootstrap 官方说支持谁”,而是你项目中第一个调用 Element.prototype.classList 或 fetch() 的地方——这些 API 在 Safari 16.4 就已稳定,但在 Safari 16.0 里仍存在 DOMTokenList 方法缺失的问题。别只盯着框架文档,去翻你用的每个 npm 包的 engines 字段和 browserslist 配置。











