v149 · HTML · Attribute Reference
Attribute Reference
Everything about the autocorrect HTML attribute: values, element support, interaction with related attributes, and what the Windows Text Services Framework is.
what is TSF?
Text Services Framework
TSF is a Windows API layer that mediates between applications and text input services — including on-screen keyboards, IMEs (Input Method Editors for CJK languages), speech recognition, and autocorrect services.
When Chrome receives focus on a text input, it communicates with TSF to describe the input's properties — including whether autocorrect should be active. Before Chrome 149, the autocorrect="off" attribute was not correctly propagated through this TSF bridge, so the Windows touch keyboard would still apply corrections even when the HTML opted out.
Chrome 149 fixes the bridge to correctly set the TSF IS_SPELLCHECKING_DISABLED and related flags when autocorrect="off" is set, so the keyboard honours the opt-out.
attribute values
| Value | Effect |
|---|---|
autocorrect="on" |
Explicitly enables autocorrect (same as default). Useful to re-enable on a child element when a parent has autocorrect="off". |
autocorrect="off" |
Disables autocorrect for this element. The browser and OS keyboard should not alter input. Chrome 149 extends this to the Windows TSF keyboard. |
| (omitted) | Browser default — autocorrect enabled for most element types. |
element support
| Element | autocorrect supported | Notes |
|---|---|---|
<input type="text"> |
Yes | Primary use case |
<textarea> |
Yes | Multi-line text |
<input type="email"> |
Yes | Email fields already imply no correction in many browsers |
<input type="password"> |
Partial | Password masking already suppresses correction; autocorrect="off" is redundant but harmless |
<input type="search"> |
Yes | Useful to disable for technical search queries |
[contenteditable] |
Yes (Chrome 150+) | Chrome 150 exposed autocorrect as a global attribute |
<input type="number"> |
No | Numeric inputs are not text — autocorrect doesn't apply |
related attributes
| Attribute | Relationship to autocorrect |
|---|---|
spellcheck="false" |
Disables the browser's spell-check underline. Combines with autocorrect="off" for full correction suppression — they target different mechanisms. |
autocomplete="off" |
Disables browser form history suggestions. Separate from autocorrect — the two can be set independently. |
inputmode="none" |
Prevents the virtual keyboard from appearing. Does not affect autocorrect on physical or hardware keyboards. |
combined snippet
<!-- Username: full correction suppression -->
<input
type="text"
name="username"
autocorrect="off"
spellcheck="false"
autocomplete="username"
>
<!-- Code editor: no corrections, no underlines -->
<textarea
autocorrect="off"
spellcheck="false"
autocapitalize="none"
></textarea>
see also
implementation reference
Need the exact API surface, compatibility boundaries, errors, lifecycle, and source links? Read the matching gendn reference ↗