Bootstrap 5.0.2

@mdo 2021 年 6 月 22 日

我们最新的补丁版本已经发布,以改进我们的 JavaScript 插件,解决 Dart Sass 中的 / 弃用问题,修复一些 CSS 错误,并进行一些文档改进。

Sass 除法

Bootstrap v5.0.2 中最大的修复之一是修复了在 Sass 中执行除法时 / 的弃用问题。Dart Sass 团队弃用了它,因为 / 字符在实际 CSS 中被使用(例如,分隔 background)。坏消息是,它附带了弃用通知,在我们这里,它严重污染了每个人的构建过程。我们可能的解决方案包括

  1. 完全忽略它并静默弃用警告
  2. 放弃对 LibSass 的隐式支持,并使用 Dart Sass 数学模块
  3. 找到一种自定义修复方法,以保持尽可能广泛的 Sass 支持

我们选择了第三种方案——保持对 LibSass 和 Dart Sass 的支持,即使前者已弃用。许多项目尚未或无法更新到 Dart Sass(包括我们用来构建文档的 Hugo)。

我们的解决方案意味着要编写一个自定义的 divide() 函数,并在可能的情况下用乘法替换除法。我们希望限制自定义函数的使用,因此将 $value / 2 的情况替换为 $value * .5。此自定义函数也已在 RFS 项目 的新版本中添加。虽然我们编译的 CSS 中的精度减少了小数点后两位,但输出在其他方面保持不变。

如果您对进一步改进有任何想法或建议,请随时 提交问题

亮点

以下是变更日志中的一些亮点。

CSS

  • 修复了 Sass 中 / 除法的弃用警告。将大多数 / 除法替换为乘法,并添加了一个自定义的 divide() 函数,以避免添加 Dart Sass 模块(因为这会抵消 LibSass 的使用)。
  • 单个 .col-* 网格类现在可以覆盖 .row-cols
  • 更新了浮动表单的 line-height,以修复选择菜单文本被截断的问题。
  • .form-select 添加了缺少的过渡。
  • 修复了 RTL 中 .dropdowns-menu-* 的位置。
  • --bs-table-bg--bs-table-accent-bg 解耦,以区分表格的强调色。
  • 改进了对 add()subtract() 函数中复杂表达式的支持。
  • 修复了 Firefox 中选择元素的水平填充。
  • 更新了弹出窗口标题的边框颜色,使其与外部边框匹配。
  • 修复了 RTL 中的画布标题对齐方式。

JavaScript

  • 弹出窗口现在会在标题或内容为空时将其删除,而不是返回空 HTML 元素。
  • 使用箭头键时,下拉菜单项现在会自动选中。
  • 我们现在在 onDOMContentLoaded 实用程序函数中只注册一个 DOMContentLoaded 事件监听器。
  • 修复了轮播滑动时箭头键中断动画的问题。
  • 修复了嵌套元素触发的过渡事件的处理(例如,单击按钮时模态框不会过渡)。
  • 修复了由于不必要的默认值和removeChild导致的过时主体引起的背景错误。
  • 修复了带有.fade类的show.bs.modal事件阻止模态再次显示的问题。
  • 修复了isVisible误报。
  • 在我们的基础组件中添加了getOrCreateInstance方法,该方法应用于所有组件。

文档

  • 记录了如何使用 API 使实用程序响应式。还将!important添加到示例输出 CSS 中,并提到了$enable-important-utilities全局设置。
  • 在迁移指南中添加了关于 v4 中断点混合更改的说明。
  • 在文档中添加了定位徽章的新示例。
  • 澄清了自定义 > Sass 页面中的变量覆盖。
  • 将 Freenode 替换为 Libera IRC 服务器。

前往 GitHub 查看完整的v5.0.2 中的问题和拉取请求列表。您也可以查看v5.0.2 项目看板

获取发布版

前往https://bootstrap.ac.cn获取最新版本。 它也已推送到 npm

npm i bootstrap

查看 v5.0.2 版本变更日志以获取完整的更改列表。

支持团队

访问我们的Open Collective 页面或我们的团队成员的 GitHub 个人资料,以帮助支持为 Bootstrap 做出贡献的维护者。