跳到主要内容

浏览器与设备

了解 Bootstrap 支持的浏览器和设备,从现代到旧的,包括每个的已知怪癖和错误。

支持的浏览器

Bootstrap 支持所有主流浏览器和平台的 最新、稳定版本。

使用最新版本的 WebKit、Blink 或 Gecko 的替代浏览器,无论是直接使用还是通过平台的 WebView API,并未得到明确支持。不过,在大多数情况下,Bootstrap 在这些浏览器中也应该能够正确显示和运行。更具体的支持信息如下所示。

你可以在我们的 .browserslistrc file 中找到我们支持的浏览器及其版本:

# https://github.com/browserslist/browserslist#readme

>= 0.5% last 2 major versions not dead Chrome >= 60 Firefox >= 60 Firefox ESR iOS >= 12 Safari >= 12 not Explorer <= 11 not kaios <= 2.5 # fix floating label issues in Firefox (see https://github.com/postcss/autoprefixer/issues/1533)

我们使用 Autoprefixer 通过 CSS 前缀处理预期的浏览器支持,它使用 Browserslist 来管理这些浏览器版本。请查阅它们的文档以了解如何将这些工具集成到你的项目中。

移动设备

一般来说,Bootstrap 支持每个主要平台默认浏览器的最新版本。注意,不支持代理浏览器(例如 Opera Mini、Opera Mobile 的 Turbo 模式、UC Browser Mini、Amazon Silk)。

ChromeFirefoxSafariAndroid 浏览器 & WebView
Android支持支持—v6.0
iOS支持支持支持—

桌面浏览器

同样,大多数桌面浏览器的最新版本均受支持。

ChromeFirefoxMicrosoft EdgeOperaSafari
Mac支持支持支持支持支持
Windows支持支持支持支持—

对于 Firefox,除了最新的普通稳定版,我们还支持最新的 延长支持版本(ESR) 的 Firefox。

非官方地,Bootstrap 在 Linux 版的 Chromium 和 Chrome 以及 Linux 版的 Firefox 上应该表现良好并且运行正常,尽管它们没有官方支持。

Internet Explorer

不支持 Internet Explorer。 如果你需要 Internet Explorer 支持,请使用 Bootstrap v4。

移动设备上的模态框和下拉菜单

溢出与滚动

在 iOS 和 Android 上,对 overflow: hidden; 在 <body> 元素上的支持非常有限。为此,当你在这两种设备的浏览器中滚动超过模态的顶部或底部时,<body> 内容将开始滚动。请参阅 Chrome bug #175502(已在 Chrome v40 中修复)和 WebKit bug #153852。

iOS 文本字段和滚动

从 iOS 9.2 开始,当一个模态框打开时,如果滚动手势的初始触摸位于文本<input>或<textarea>的边界内,模态框下的<body>内容将被滚动,而不是模态框本身。参见 WebKit bug #153856。

由于 z-index 的复杂性,.dropdown-backdrop 元素不会在 iOS 的导航中使用。因此,要关闭导航栏中的下拉菜单,必须直接点击下拉元素(或 任何其他会在 iOS 中触发点击事件的元素)。

浏览器缩放

页面缩放不可避免地会在某些组件中呈现渲染错误,无论是在 Bootstrap 还是其他网页中。根据具体问题,我们可能能够修复它(先搜索,然后如有必要再提交问题)。然而,我们通常会忽略这些问题,因为它们往往没有直接的解决方案,除了临时的应急方法。

验证者

为了向旧版和有漏洞的浏览器提供最佳体验,Bootstrap 在多个地方使用了 CSS 浏览器黑科技,以针对某些浏览器版本应用特殊 CSS,从而绕过浏览器本身的漏洞。这些黑科技会导致 CSS 校验器报错说它们无效,这是可以理解的。在少数情况下,我们还使用了尚未完全标准化的前沿 CSS 特性,但这些仅用于渐进增强。

这些验证警告在实际中无关紧要,因为我们 CSS 的非投机部分完全能够通过验证,而投机部分不会干扰非投机部分的正常功能,这就是为什么我们特意忽略这些特定警告的原因。

我们的 HTML 文档同样由于我们包含了针对 某个 Firefox 错误 的解决方法而存在一些微不足道且无关紧要的 HTML 验证警告。