迁移到 v5
跟踪和查看对 Bootstrap 源文件、文档和组件的更改,以帮助您从 v4 迁移到 v5。
v5.2.0
焕然一新的设计
Bootstrap v5.2.0 对项目中的少数组件和属性进行了细微的设计更新,最明显的是通过border-radius
按钮和表单控件上的优化值。我们的文档也更新了新的主页、更简单的文档布局(不再折叠侧边栏的部分)以及更突出的Bootstrap 图标示例。
更多 CSS 变量
我们更新了所有组件以使用 CSS 变量。虽然 Sass 仍然是一切的基础,但每个组件都已更新为在组件基类(例如.btn
)中包含 CSS 变量,从而允许对 Bootstrap 进行更实时的定制。在后续版本中,我们将继续将 CSS 变量的使用扩展到我们的布局、表单、助手和实用程序中。在各自的文档页面上阅读有关每个组件中的 CSS 变量的更多信息。
在 Bootstrap 6 之前,我们的 CSS 变量使用会有些不完整。虽然我们希望全面实现这些,但它们确实存在导致重大更改的风险。例如,如果出于某种原因,$alert-border-width: var(--bs-border-width)
在我们的源代码中设置会破坏您自己代码中潜在的 Sass 。$alert-border-width * 2
因此,只要有可能,我们将继续推动更多的 CSS 变量,但请注意我们的实现在 v5 中可能会略有限制。
新的_maps.scss
Bootstrap v5.2.0 引入了一个新的 Sass 文件,带有_maps.scss
. 它从中提取了几个 Sass 地图,_variables.scss
以解决对原始地图的更新未应用于扩展它们的二级地图的问题。例如,$theme-colors
没有将更新应用到其他依赖于 的主题地图,从而$theme-colors
破坏了关键的自定义工作流程。简而言之,Sass 有一个限制,即一旦使用了默认变量或映射,就无法更新。当 CSS 变量用于组合其他 CSS 变量时,它们也有类似的缺点。
这就是为什么 Bootstrap 中的变量自定义必须在 之后@import "functions"
,但在@import "variables"
我们的导入堆栈的其余部分之前。这同样适用于 Sass 映射——您必须在使用它们之前覆盖默认值。以下地图已移至新地图_maps.scss
:
$theme-colors-rgb
$utilities-colors
$utilities-text
$utilities-text-colors
$utilities-bg
$utilities-bg-colors
$negative-spacers
$gutters
您的自定义 Bootstrap CSS 构建现在应该看起来像这样,带有单独的地图导入。
// Functions come first
@import "functions";
// Optional variable overrides here
+ $custom-color: #df711b;
+ $custom-theme-colors: (
+ "custom": $custom-color
+ );
// Variables come next
@import "variables";
+ // Optional Sass map overrides here
+ $theme-colors: map-merge($theme-colors, $custom-theme-colors);
+
+ // Followed by our default maps
+ @import "maps";
+
// Rest of our imports
@import "mixins";
@import "utilities";
@import "root";
@import "reboot";
// etc
新实用程序
- 扩展的
font-weight
实用程序包括.fw-semibold
半粗体字体。 - 扩展
border-radius
实用程序以包括两个新尺寸,.rounded-4
以及.rounded-5
,以获得更多选项。
其他更改
-
引入了新
$enable-container-classes
选项。— Now when opting into the experimental CSS Grid layout,.container-*
classes will still be compiled, unless this option is set tofalse
. 容器现在也保留其排水沟值。 -
Offcanvas 组件现在具有响应变化。原始
.offcanvas
类保持不变——它隐藏了所有视口中的内容。为了使其响应,将该.offcanvas
类更改为任何.offcanvas-{sm|md|lg|xl|xxl}
类。 -
现在可以选择加入更厚的桌子分隔线。—我们删除了表格组之间更厚且更难覆盖的边框,并将其移至您可以应用的可选类中,
.table-group-divider
. 有关示例,请参阅表格文档。 -
Scrollspy 已被重写以使用 Intersection Observer API,这意味着您不再需要相对父级包装器、弃用
offset
配置等。寻找您的 Scrollspy 实现,使其在导航突出显示中更加准确和一致。 -
弹出框和工具提示现在使用 CSS 变量。一些 CSS 变量已经从它们的 Sass 对应物更新,以减少变量的数量。因此,此版本中已弃用三个变量:
$popover-arrow-color
、$popover-arrow-outer-color
和$tooltip-arrow-color
。 -
添加了新的
.text-bg-{color}
助手。您现在可以使用帮助程序来设置具有对比前景的a,而不是设置个人.text-*
和实用程序。.bg-*
.text-bg-*
background-color
color
-
添加
.form-check-reverse
修饰符以翻转标签和相关复选框/收音机的顺序。 -
通过新类向表添加了条带列支持。
.table-striped-columns
有关更改的完整列表,请参阅 GitHub 上的 v5.2.0 项目。
v5.1.0
-
添加了对CSS 网格布局的实验性支持。—这是一项正在进行的工作,尚未准备好用于生产,但您可以通过 Sass 选择加入新功能。要启用它,请通过设置禁用默认网格,
$enable-grid-classes: false
并通过设置启用 CSS 网格$enable-cssgrid: true
。 -
更新了导航栏以支持 offcanvas。—使用响应式类和一些 offcanvas 标记在任何导航栏中添加offcanvas 抽屉。
.navbar-expand-*
-
添加了新的占位符组件。—我们最新的组件,一种提供临时块来代替真实内容的方法,以帮助指示某些内容仍在您的网站或应用程序中加载。
-
Collapse 插件现在支持水平折叠。—添加
.collapse-horizontal
到您.collapse
的折叠width
而不是height
.min-height
通过设置 a或避免浏览器重绘height
。 -
添加了新的堆栈和垂直规则助手。—快速应用多个 flexbox 属性以快速创建带有堆栈的自定义布局。从水平 (
.hstack
) 和垂直 (.vstack
) 堆栈中进行选择。使用新的helpers<hr>
添加与元素类似的垂直分隔线。.vr
-
添加了新的全局
:root
CSS 变量。—在关卡中添加了几个新的 CSS 变量以:root
控制<body>
样式。更多的工作正在进行中,包括我们的实用程序和组件,但现在阅读自定义部分中的 CSS 变量。 -
彻底检查了颜色和背景实用程序以使用 CSS 变量,并添加了新的文本不透明度和背景不透明度实用程序。— 实用程序现在使用 CSS 变量和
.text-*
颜色值构建,允许您使用新的不透明度实用程序轻松自定义任何实用程序。.bg-*
rgba()
-
添加了新的片段示例,以展示如何自定义我们的组件。—使用我们新的Snippets 示例,准备好使用自定义组件和其他常见设计模式。包括页脚、下拉列表、列表组和模式。
-
从弹出框和工具提示中删除了未使用的定位样式,因为这些样式仅由 Popper 处理。
$tooltip-margin
已被弃用并null
在此过程中设置为。
想要更多信息?阅读 v5.1.0 博客文章。
依赖项
- 放弃了 jQuery。
- 从 Popper v1.x 升级到 Popper v2.x。
- 鉴于 Libsass 已弃用,我们的 Sass 编译器将 Libsass 替换为 Dart Sass。
- 从 Jekyll 迁移到 Hugo 以构建我们的文档
浏览器支持
- 删除 Internet Explorer 10 和 11
- 删除 Microsoft Edge < 16(旧版 Edge)
- 删除 Firefox < 60
- 掉落的 Safari < 12
- 删除 iOS Safari < 12
- 掉落的铬 < 60
文档更改
- 重新设计的主页、文档布局和页脚。
- 添加了新的包裹指南。
- 添加了新的自定义部分,替换了v4 的主题页面,新增了关于 Sass、全局配置选项、配色方案、CSS 变量等的详细信息。
- 将所有表单文档重新组织到新的表单部分,将内容分解为更集中的页面。
- 同样,更新了 Layout 部分,以更清晰地充实网格内容。
- 将“Navs”组件页面重命名为“Navs & Tabs”。
- 将“Checks”页面重命名为“Checks & radios”。
- 重新设计了导航栏并添加了新的子导航,以便更轻松地浏览我们的网站和文档版本。
- 为搜索字段添加了新的键盘快捷键:Ctrl + /.
萨斯
-
我们放弃了默认的 Sass 地图合并,以便更轻松地删除冗余值。请记住,您现在必须在 Sass 映射中定义所有值,例如
$theme-colors
. 查看如何处理Sass 映射。 -
打破
color-yiq()
将函数和相关变量重命名为,color-contrast()
因为它不再与 YIQ 颜色空间相关。请参阅#30168。$yiq-contrasted-threshold
被重命名为$min-contrast-ratio
.$yiq-text-dark
和$yiq-text-light
分别重命名为$color-contrast-dark
和$color-contrast-light
。
-
打破媒体查询混合参数已更改为更合乎逻辑的方法。
media-breakpoint-down()
使用断点本身而不是下一个断点(例如,media-breakpoint-down(lg)
而不是media-breakpoint-down(md)
目标视口小于lg
)。- 类似地,in 中的第二个参数
media-breakpoint-between()
也使用断点本身而不是下一个断点(例如,media-between(sm, lg)
而不是media-breakpoint-between(sm, md)
目标视口在sm
和之间lg
)。
-
打破删除了打印样式和
$enable-print-styles
变量。打印显示类仍然存在。请参阅#28339。 -
打破删除
color()
、theme-color()
和gray()
函数,支持变量。请参阅#29083。 -
打破
theme-color-level()
将函数重命名为color-level()
,现在接受您想要的任何颜色,而不仅仅是$theme-color
颜色。请参阅 #29083 注意:color-level()
后来被丢弃在v5.0.0-alpha3
. -
打破为简洁起见,重命名为
$enable-prefers-reduced-motion-media-query
and 。$enable-pointer-cursor-for-buttons
$enable-reduced-motion
$enable-button-pointers
-
打破删除了
bg-gradient-variant()
混合。使用.bg-gradient
类向元素添加渐变,而不是生成的.bg-gradient-*
类。 -
打破 删除了以前不推荐使用的 mixin:
hover
,hover-focus
,plain-hover-focus
和hover-focus-active
float()
form-control-mixin()
nav-divider()
retina-img()
text-hide()
(也删除了相关的实用程序类,.text-hide
)visibility()
form-control-focus()
-
打破重命名
scale-color()
函数以shift-color()
避免与 Sass 自己的颜色缩放函数发生冲突。 -
box-shadow
mixins 现在允许值和从多个参数中null
删除。请参阅#30394。none
-
border-radius()
mixin 现在有一个默认值。
颜色系统
-
与新的颜色系统一起使用
color-level()
并被$theme-color-interval
删除的颜色系统。我们代码库中的所有lighten()
和darken()
函数都被替换为tint-color()
和shade-color()
。这些函数会将颜色与白色或黑色混合,而不是按固定量改变其亮度。将shift-color()
根据其权重参数是正值还是负值来着色或着色颜色。有关详细信息,请参阅#30622。 -
为每种颜色添加了新的色调和阴影,为每种基色提供了九种不同的颜色,作为新的 Sass 变量。
-
改善颜色对比度。将颜色对比度从 3:1 提高到 4.5:1,并更新了蓝色、绿色、青色和粉红色,以确保 WCAG 2.1 AA 对比度。还将我们的颜色对比色从 更改
$gray-900
为$black
。 -
为了支持我们的颜色系统,我们添加了新的自定义
tint-color()
和shade-color()
功能来适当地混合我们的颜色。
网格更新
-
新断点!为和向上添加了新
xxl
的断点。1400px
对所有其他断点没有更改。 -
改进的排水沟。排水沟现在以 rems 为单位设置,并且比 v4 更窄(
1.5rem
或大约24px
,从 向下30px
)。这使我们的网格系统的排水沟与我们的间距实用程序对齐。- 添加了新的排水沟类(
.g-*
、.gx-*
和.gy-*
)来控制水平/垂直排水沟、水平排水沟和垂直排水沟。 - 打破重命名
.no-gutters
为.g-0
以匹配新的装订线实用程序。
- 添加了新的排水沟类(
-
列不再
position: relative
适用,因此您可能必须添加.position-relative
一些元素才能恢复该行为。 -
打破删除了几个
.order-*
经常不用的课程。我们现在只提供.order-1
开箱.order-5
即用。 -
打破删除了
.media
组件,因为它可以很容易地用实用程序复制。有关示例,请参见 #28265和flex 实用程序页面。 -
打破
bootstrap-grid.css
现在仅适用box-sizing: border-box
于列而不是重置全局框大小。这样,我们的网格样式可以在更多的地方使用而不会受到干扰。 -
$enable-grid-classes
不再禁用容器类的生成。请参阅#29146。 -
将 mixin 更新
make-col
为默认为没有指定大小的相等列。
内容、重启等
-
RFS现在默认启用。使用 mixin 的标题
font-size()
将自动调整它们font-size
以随视口缩放。此功能以前选择加入 v4。 -
打破彻底检查了我们的显示排版以替换我们的
$display-*
变量并使用$display-font-sizes
Sass 映射。还删除了单个和调整的 s的单个$display-*-weight
变量。$display-font-weight
font-size
-
添加了两个新的
.display-*
标题大小.display-5
和.display-6
. -
链接默认带有下划线(不仅仅是悬停),除非它们是特定组件的一部分。
-
重新设计的表格以刷新其样式并使用 CSS 变量重建它们以更好地控制样式。
-
打破嵌套表不再继承样式。
-
打破
.thead-light
并被.thead-dark
删除,取而代之的是.table-*
可用于所有表格元素(thead
、tbody
、tfoot
、tr
和)th
的变体类td
。 -
打破
table-row-variant()
mixin 被重命名为并且table-variant()
只接受 2 个参数:($color
颜色名称)和$value
(颜色代码)。边框颜色和强调色是根据表格因子变量自动计算的。 -
将表格单元格填充变量拆分为
-y
和-x
。 -
打破下课了
.pre-scrollable
。见#29135 -
打破
.text-*
实用程序不再向链接添加悬停和焦点状态。.link-*
可以使用辅助类代替。见#29267 -
打破下课了
.text-justify
。见#29793 -
打破
<hr>
元素现在使用height
而不是border
更好地支持该size
属性。这也允许使用填充实用程序来创建更厚的分隔线(例如,<hr class="py-1">
)。 -
padding-left
将浏览器默认的默认水平<ul>
和<ol>
元素重置40px
为2rem
. -
已添加
$enable-smooth-scroll
,适用于全球——除了通过媒体查询scroll-behavior: smooth
请求减少运动的用户。见#31877prefers-reduced-motion
RTL
- 水平方向特定的变量、实用程序和 mixin 都已重命名为使用类似于弹性盒布局中的逻辑属性——例如
start
,end
代替left
andright
。
形式
-
添加了新的浮动表格!我们已将浮动标签示例提升为完全支持的表单组件。请参阅新的浮动标签页面。
-
打破 合并本机和自定义表单元素。已合并在 v4 中具有本机和自定义类的复选框、单选、选择和其他输入。现在几乎我们所有的表单元素都是完全自定义的,大多数不需要自定义 HTML。
.custom-control.custom-checkbox
现在是.form-check
。.custom-control.custom-custom-radio
现在是.form-check
。.custom-control.custom-switch
现在是.form-check.form-switch
。.custom-select
现在是.form-select
。.custom-file
并.form-file
已被.form-control
..custom-range
现在是.form-range
。- 放弃原生
.form-control-file
和.form-control-range
.
-
打破掉落
.input-group-append
和.input-group-prepend
。您现在可以添加按钮并.input-group-text
作为输入组的直接子项。 -
通过向具有验证的输入组添加一个额外的类,最终修复了具有验证反馈错误的输入组上长期缺少边界半径。
.has-validation
-
打破 为我们的网格系统删除了特定于表单的布局类。使用我们的网格和实用程序而不是
.form-group
、.form-row
或.form-inline
。 -
打破表单标签现在需要
.form-label
. -
打破
.form-text
不再设置display
,允许您只通过更改 HTML 元素就可以根据需要创建内联或阻止帮助文本。 -
表单控件不再
height
尽可能固定使用,而是推迟min-height
到改进自定义和与其他组件的兼容性。 -
验证图标不再应用于
<select>
带有 的 smultiple
。 -
重新排列了 下的源 Sass 文件
scss/forms/
,包括输入组样式。
成分
- 警报、面包屑、卡片、下拉列表、列表组、模式、弹出框和工具提示的统一
padding
值基于我们的$spacer
变量。请参阅#30564。
手风琴
- 添加了新的手风琴组件。
警报
-
警报现在有带有图标的示例。
-
删除
<hr>
了每个警报中 s 的自定义样式,因为它们已经使用currentColor
.
徽章
-
打破删除了后台实用程序的所有
.badge-*
颜色类(例如,使用.bg-primary
而不是.badge-primary
)。 -
打破Dropped — 改用
.badge-pill
该.rounded-pill
实用程序。 -
打破删除了
<a>
和<button>
元素的悬停和焦点样式。 -
.25em
从/.5em
到.35em
/增加了徽章的默认填充.65em
。
面包屑
-
padding
通过删除、background-color
和简化了面包屑的默认外观border-radius
。 -
添加了新的 CSS 自定义属性
--bs-breadcrumb-divider
,无需重新编译 CSS,即可轻松自定义。
纽扣
-
打破 带有复选框或单选按钮的切换按钮不再需要 JavaScript 并具有新的标记。我们不再需要包装元素,添加
.btn-check
到<input>
,并将其.btn
与<label>
. 请参阅#30650。相关文档已从我们的 Buttons 页面移至新的 Forms 部分。 -
打破 为公用事业
.btn-block
而放弃。不要在 上使用.btn-block
,而是使用和实用程序来.btn
包装您的按钮,以便根据需要将它们隔开。切换到响应式类以更好地控制它们。阅读文档以获取一些示例。.d-grid
.gap-*
-
更新了我们的
button-variant()
和button-outline-variant()
mixins 以支持其他参数。 -
更新了按钮以确保增加悬停和活动状态的对比度。
-
禁用按钮现在具有
pointer-events: none;
.
卡片
-
打破放弃
.card-deck
支持我们的网格。将您的卡片包装在列类中并添加一个父.row-cols-*
容器以重新创建卡片组(但对响应对齐有更多控制)。 -
打破放弃
.card-columns
了砌体。见#28922。 -
打破用新的 Accordion 组件替换了
.card
基础手风琴。
旋转木马
-
为深色文本、控件和指示器添加了新
.carousel-dark
变体(非常适合浅色背景)。 -
用来自Bootstrap Icons的新 SVG 替换了轮播控件的 V 形图标。
关闭按钮
-
打破重命名
.close
为.btn-close
一个不太通用的名称。 -
关闭按钮现在使用
background-image
(嵌入的 SVG)而不是×
HTML 中的 a,允许更轻松地自定义,而无需触摸您的标记。 -
添加了新
.btn-close-white
变体,用于filter: invert(1)
在较暗的背景下启用更高对比度的消除图标。
坍塌
- 删除了手风琴的滚动锚定。
下拉菜单
-
.dropdown-menu-dark
为按需深色下拉菜单添加了新变体和相关变量。 -
为 .添加了新变量
$dropdown-padding-x
。 -
使下拉分隔线变暗以提高对比度。
-
打破下拉列表的所有事件现在都在下拉切换按钮上触发,然后冒泡到父元素。
-
data-bs-popper="static"
当下拉菜单的位置是静态的或下拉菜单位于导航栏中时,下拉菜单现在有一个属性集。这是由我们的 JavaScript 添加的,可以帮助我们使用自定义位置样式,而不会干扰 Popper 的定位。 -
打破删除
flip
了下拉插件的选项,支持原生 Popper 配置。您现在可以通过在翻转修饰符中为fallbackPlacements
选项传递一个空数组来禁用翻转行为。 -
下拉菜单现在可以点击处理自动关闭行为
autoClose
的新选项。您可以使用此选项接受在下拉菜单内部或外部的单击以使其具有交互性。 -
下拉列表现在支持
.dropdown-item
s 包裹在<li>
s 中。
超大屏幕
- 打破删除了 jumbotron 组件,因为它可以使用实用程序进行复制。有关演示,请参阅我们的新 Jumbotron 示例。
列表组
- 为列表组添加了新的
.list-group-numbered
修饰符。
导航和选项卡
- 为类添加了、、和的新
null
变量。font-size
font-weight
color
:hover
color
.nav-link
导航栏
- 打破导航栏现在需要一个容器(以大大简化间距要求和所需的 CSS)。
- 打破该类
.active
不能再应用于.nav-item
s,它必须直接应用于.nav-link
s。
画布外
- 添加了新的offcanvas 组件。
分页
-
分页链接现在具有可自定义
margin-left
的功能,当它们彼此分开时,这些链接在所有角落都动态变圆。 -
transition
在分页链接中添加了 s。
约夏克布丁
-
打破在我们的默认弹出框模板中重命名
.arrow
为。.popover-arrow
-
whiteList
将选项重命名为allowList
.
纺纱厂
-
旋转器现在
prefers-reduced-motion: reduce
通过减慢动画来获得荣誉。请参阅#31882。 -
改进的微调器垂直对齐。
敬酒
-
将默认吐司持续时间更改为 5 秒。
-
从 toasts 中删除
overflow: hidden
并替换为border-radius
具有功能的适当 scalc()
。
工具提示
-
打破在我们的默认工具提示模板中重命名
.arrow
为。.tooltip-arrow
-
打破的默认值
fallbackPlacements
更改['top', 'right', 'bottom', 'left']
为更好地放置 popper 元素。 -
打破
whiteList
将选项重命名为allowList
.
实用程序
-
打破重命名了几个实用程序以使用逻辑属性名称而不是方向名称,并添加了 RTL 支持:
- 将and重命名为
.left-*
and 。.right-*
.start-*
.end-*
- 将and重命名为
.float-left
and 。.float-right
.float-start
.float-end
- 将and重命名为
.border-left
and 。.border-right
.border-start
.border-end
- 将and重命名为
.rounded-left
and 。.rounded-right
.rounded-start
.rounded-end
- 将and重命名为
.ml-*
and 。.mr-*
.ms-*
.me-*
- 将and重命名为
.pl-*
and 。.pr-*
.ps-*
.pe-*
- 将and重命名为
.text-left
and 。.text-right
.text-start
.text-end
- 将and重命名为
-
打破默认禁用负边距。
-
添加
.bg-body
了用于快速将<body>
's 背景设置为其他元素的新类。 -
为、、和增加了新的定位实用程序。每个属性的值包括、和。
top
right
bottom
left
0
50%
100%
-
.translate-middle-x
为.translate-middle-y
水平或垂直居中绝对/固定定位元素添加了新的实用程序。 -
添加了新的
border-width
实用程序。 -
打破重命名
.text-monospace
为.font-monospace
. -
打破已删除
.text-hide
,因为它是一种过时的隐藏不应再使用的文本的方法。 -
添加
.fs-*
了实用程序的font-size
实用程序(启用了 RFS)。这些使用与 HTML 的默认标题相同的比例(1-6,从大到小),并且可以通过 Sass 映射进行修改。 -
打破为了简洁和一致,重命名了
.font-weight-*
实用程序。.fw-*
-
打破为了简洁和一致,重命名了
.font-style-*
实用程序。.fst-*
-
为 CSS Grid 和 flexbox 布局添加
.d-grid
了显示实用程序和新gap
实用程序 ( )。.gap
-
打破删除
.rounded-sm
和rounded-lg
,并引入了新的班级规模 ,.rounded-0
to.rounded-3
。请参阅#31687。 -
添加了新实用
line-height
程序:.lh-1
、.lh-sm
和。见这里。.lh-base
.lh-lg
-
在我们的 CSS 中移动了该
.d-none
实用程序,使其比其他显示实用程序具有更大的权重。 -
使用 .扩展
.visually-hidden-focusable
帮助器以在容器上工作:focus-within
。
帮手
-
打破 响应式嵌入助手已重命名为具有新类名和改进行为的比率助手,以及有用的 CSS 变量。
- 类已重命名以更改
by
为x
纵横比。例如,.ratio-16by9
现在.ratio-16x9
. - 我们放弃了
.embed-responsive-item
and 元素组选择器,取而代之的是更简单的.ratio > *
选择器。不再需要类,并且比率助手现在可以与任何 HTML 元素一起使用。 $embed-responsive-aspect-ratios
Sass 映射已重命名为,其$aspect-ratios
值已简化为包含类名和百分比作为key: value
对。- 现在为 Sass 映射中的每个值生成并包含 CSS 变量。修改 上的
--bs-aspect-ratio
变量.ratio
以创建任何自定义纵横比。
- 类已重命名以更改
-
打破 “屏幕阅读器”类现在是“视觉隐藏”类。
- 将 Sass 文件从更改
scss/helpers/_screenreaders.scss
为scss/helpers/_visually-hidden.scss
- 将and重命名为
.sr-only
and.sr-only-focusable
.visually-hidden
.visually-hidden-focusable
- 重命名
sr-only()
和sr-only-focusable()
混合为visually-hidden()
andvisually-hidden-focusable()
。
- 将 Sass 文件从更改
-
bootstrap-utilities.css
现在还包括我们的助手。不再需要在自定义构建中导入助手。
JavaScript
-
删除 jQuery 依赖项并将插件重写为常规 JavaScript。
-
打破所有 JavaScript 插件的数据属性现在都已命名,以帮助将 Bootstrap 功能与第三方和您自己的代码区分开来。例如,我们使用
data-bs-toggle
代替data-toggle
. -
所有插件现在都可以接受 CSS 选择器作为第一个参数。您可以传递 DOM 元素或任何有效的 CSS 选择器来创建插件的新实例:
const modal = new bootstrap.Modal('#myModal') const dropdown = new bootstrap.Dropdown('[data-bs-toggle="dropdown"]')
-
popperConfig
可以作为接受 Bootstrap 的默认 Popper 配置作为参数的函数传递,以便您可以按照自己的方式合并此默认配置。适用于下拉菜单、弹出框和工具提示。 -
的默认值
fallbackPlacements
更改['top', 'right', 'bottom', 'left']
为更好地放置 Popper 元素。适用于下拉菜单、弹出框和工具提示。 -
_getInstance()
从公共静态方法(如→ )中删除了下划线getInstance()
。