HTMLElement:autocapitalize 屬性

可用性有限

此特性不是基線特性,因為它在一些最廣泛使用的瀏覽器中不起作用。

HTMLElement 介面的 autocapitalize 屬性表示元素的自動大寫行為,用於使用者輸入。該屬性可用於所有 HTML 元素,但並非對所有元素都生效,包括

  • <input><textarea> 元素。
  • 任何設定了 contenteditable 屬性的元素。

autocapitalize 不影響使用物理鍵盤輸入時的行為。它會影響其他輸入機制的行為,例如移動裝置上的虛擬鍵盤和語音輸入。這可以透過自動將每個句子的首字母大寫等方式,使使用者的輸入更快、更輕鬆。

它反映了 autocapitalize HTML 全域性屬性的值。

一個字串,表示元素的自動大寫行為,用於使用者輸入。有效值如下:

noneoff

不應應用自動大寫,即所有字母應預設為小寫。

sentenceson

每個句子的第一個字母應預設為大寫字母;所有其他字母應預設為小寫。

words

每個單詞的第一個字母應預設為大寫字母;所有其他字母應預設為小寫。

characters

所有字母應預設為大寫。

示例

以下示例演示瞭如何透過指令碼控制使用者輸入的自動大寫行為

html
<div>Current capitalization behavior is: <span id="ac-label"></span></div>
<div id="ac-element" contenteditable="true" autocapitalize="default">
  input here
</div>
<select id="ac-controller" type="checkbox" checked>
  <option value="default">default</option>
  <option value="none">none</option>
  <option value="sentences">sentences</option>
  <option value="words">words</option>
  <option value="characters">characters</option></select
>Select the capitalization behavior
js
const label = document.getElementById("ac-label");
const element = document.getElementById("ac-element");
const controller = document.getElementById("ac-controller");

controller.addEventListener("input", (e) => {
  const behavior = e.target.value;
  label.textContent = behavior;
  element.autocapitalize = behavior;
});

規範

規範
HTML
# dom-autocapitalize-dev

瀏覽器相容性

另見

  • autocapitalize HTML 全域性屬性