关闭按钮
一个通用关闭按钮,用于关闭模态框和警报等内容。
本页内容
示例
使用 .btn-close
提供关闭或关闭组件的选项。默认样式有限,但可高度自定义。修改 Sass 变量以替换默认的 background-image
。务必包含屏幕阅读器的文本,就像我们使用 aria-label
所做的那样。
<button type="button" class="btn-close" aria-label="Close"></button>
禁用状态
禁用的关闭按钮会更改其 opacity
。我们还应用了 pointer-events: none
和 user-select: none
以防止悬停和活动状态触发。
<button type="button" class="btn-close" disabled aria-label="Close"></button>
深色变体
在 v5.3.0 中弃用
注意!从 v5.3.0 开始,
.btn-close-white
类已弃用。相反,使用 data-bs-theme="dark"
更改关闭按钮的颜色模式。
将 data-bs-theme="dark"
添加到 .btn-close
或其父元素,以反转关闭按钮。这使用 filter
属性反转 background-image
,而不覆盖其值。
<div data-bs-theme="dark">
<button type="button" class="btn-close" aria-label="Close"></button>
<button type="button" class="btn-close" disabled aria-label="Close"></button>
</div>
CSS
变量
在 v5.3.0 中添加作为 Bootstrap 不断发展的 CSS 变量方法的一部分,关闭按钮现在在 .btn-close
上使用本地 CSS 变量,以增强实时自定义。CSS 变量的值通过 Sass 设置,因此 Sass 自定义仍然受支持。
--#{$prefix}btn-close-color: #{$btn-close-color};
--#{$prefix}btn-close-bg: #{ escape-svg($btn-close-bg) };
--#{$prefix}btn-close-opacity: #{$btn-close-opacity};
--#{$prefix}btn-close-hover-opacity: #{$btn-close-hover-opacity};
--#{$prefix}btn-close-focus-shadow: #{$btn-close-focus-shadow};
--#{$prefix}btn-close-focus-opacity: #{$btn-close-focus-opacity};
--#{$prefix}btn-close-disabled-opacity: #{$btn-close-disabled-opacity};
--#{$prefix}btn-close-white-filter: #{$btn-close-white-filter};
Sass 变量
$btn-close-width: 1em;
$btn-close-height: $btn-close-width;
$btn-close-padding-x: .25em;
$btn-close-padding-y: $btn-close-padding-x;
$btn-close-color: $black;
$btn-close-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$btn-close-color}'><path d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/></svg>");
$btn-close-focus-shadow: $focus-ring-box-shadow;
$btn-close-opacity: .5;
$btn-close-hover-opacity: .75;
$btn-close-focus-opacity: 1;
$btn-close-disabled-opacity: .25;
$btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);