跳到主要内容 跳到文档导航
Check
in English

互动

改变用户与网站内容交互方式的实用程序类。

文本选择

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

当用户单击时,该段落将被完全选中。

本段具有默认选择行为。

当用户单击时,该段落将不可选择。

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类来防止或添加元素交互。

无法点击此链接。

可以单击此链接(这是默认行为)。

无法单击此链接pointer-events,因为该属性是从其父级继承的。但是,这个链接有一个pe-auto类,可以点击。

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-events它设置的 CSS 属性)仅阻止与指针(鼠标、触控笔、触摸)的交互。默认情况下,链接和控件.pe-none对于键盘用户来说仍然是可聚焦和可操作的。为了确保它们即使对于键盘用户也完全无效,您可能需要添加更多属性,例如tabindex="-1"(以防止它们接收键盘焦点)和aria-disabled="true"(以传达它们被有效禁用辅助技术的事实),并可能使用 JavaScript 来完全阻止他们采取行动。

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

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

萨斯

实用程序 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,
    ),