inert

基線 2023

新可用

2023 年 4 月起,此功能可在最新的裝置和瀏覽器版本中使用。此功能可能無法在較舊的裝置或瀏覽器中使用。

inert 全域性屬性 是一個布林屬性,指示瀏覽器將忽略該元素。使用 inert 屬性,所有元素的扁平樹後代(例如模態 <dialog>)在不逃避惰性狀態的情況下將被忽略。inert 屬性還會使瀏覽器忽略使用者傳送的輸入事件,包括與焦點相關的事件和輔助技術發出的事件。

具體來說,inert 執行以下操作

  • 當用戶單擊元素時,阻止 click 事件觸發。
  • 透過阻止元素獲得焦點,阻止 focus 事件觸發。
  • 阻止在瀏覽器任何使用頁面內查詢功能時找到/匹配元素的任何內容。

  • 阻止使用者選擇元素內的文字——類似於使用 CSS 屬性 user-select 停用文字選擇。
  • 阻止使用者編輯元素中原本可編輯的任何內容。
  • 透過將元素及其內容從可訪問性樹中排除,將其隱藏在輔助技術之外。
html
<div inert>
  <!-- content -->
</div>

inert 屬性可以新增到不應具有互動性的內容部分。當元素處於 inert 狀態時,它以及所有元素的後代(包括通常具有互動性的元素,如連結、按鈕和表單控制元件)都將被停用,因為它們無法接收焦點或被點選。

inert 屬性還可以新增到應移出螢幕或隱藏的元素。inert 元素及其後代將從 Tab 順序和可訪問性樹中移除。

注意:雖然 inert 是一個全域性屬性,可以應用於任何元素,但它通常用於內容部分。要使單個控制元件“inert”,請考慮使用 disabled 屬性以及 CSS :disabled 樣式。

無障礙訪問問題

在應用 inert 屬性時,請仔細考慮可訪問性。預設情況下,沒有視覺方式來判斷元素或其子樹是否為 inert。作為 Web 開發人員,您有責任明確指示活動內容部分和 inert 內容部分。

在提供有關內容 inert 性的視覺和非視覺提示時,還要記住,視覺視口可能僅包含部分內容。使用者可能已放大到內容的一小部分,或者使用者可能根本無法檢視內容。inert 部分沒有明顯地顯示為 inert 會導致使用者感到沮喪並帶來不良的使用者體驗。

規範

規範
HTML 標準
# the-inert-attribute

瀏覽器相容性

BCD 表格僅在啟用 JavaScript 的瀏覽器中載入。

另請參閱