跳至主要内容 跳至文档导航

更改用户与网站内容交互方式的实用工具类。

文本选择

更改用户与内容交互时选择内容的方式。

This paragraph will be entirely selected when clicked by the user.

This paragraph has default select behavior.

This paragraph will not be selectable when clicked by the user.

html
<p class="user-select-all">This paragraph will be entirely selected when clicked by the user.</p>
<p class="user-select-auto">This paragraph has default select behavior.</p>
<p class="user-select-none">This paragraph will not be selectable when clicked by the user.</p>

指针事件

Bootstrap 提供 .pe-none.pe-auto 类来防止或添加元素交互。

This link can not be clicked.

This link can be clicked (this is default behavior).

This link can not be clicked because the pointer-events property is inherited from its parent. However, this link has a pe-auto class and can be clicked.

html
<p><a href="#" class="pe-none" tabindex="-1" aria-disabled="true">This link</a> can not be clicked.</p>
<p><a href="#" class="pe-auto">This link</a> can be clicked (this is default behavior).</p>
<p class="pe-none"><a href="#" tabindex="-1" aria-disabled="true">This link</a> can not be clicked because the <code>pointer-events</code> property is inherited from its parent. However, <a href="#" class="pe-auto">this link</a> has a <code>pe-auto</code> class and can be clicked.</p>

.pe-none类(以及它设置的pointer-eventsCSS属性)仅阻止与指针(鼠标,触笔,触摸)的交互。默认情况下,带有.pe-none的链接和控件对于键盘用户仍然是可聚焦和可操作的。为了确保即使对于键盘用户也能完全中和它们,您可能需要添加更多属性,例如tabindex="-1"(以防止它们接收键盘焦点)和aria-disabled="true"(以将它们实际上被禁用的事实传达给辅助技术),并可能使用 JavaScript 完全阻止它们可操作。

如果可能,更简单的解决方案是:

  • 对于表单控件,添加disabledHTML 属性。
  • 对于链接,请删除href属性,使其成为非交互式锚点或占位符链接。

Sass

实用程序 API

交互实用程序在我们的实用程序 API 中的scss/_utilities.scss中声明。了解如何使用实用程序 API

"user-select": (
  property: user-select,
  values: all auto none
),
"pointer-events": (
  property: pointer-events,
  class: pe,
  values: none auto,
),