The spellcheck global attribute is an enumerated attribute defines whether the element may be checked for spelling errors.

It may have the following values:

  • true, which indicates that the element should be, if possible, checked for spelling errors;
  • false, which indicates that the element should not be checked for spelling errors.

If this attribute is not set, its default value is element-type and browser-defined. This default value may also be inherited, which means that the element content will be checked for spelling errors only if its nearest ancestor has a spellcheck state of true.

This attribute is an enumerated one and not a Boolean one. This means that the explicit usage of one of the values true or false is mandatory and that a shorthand like <label spellcheck>Example Label</label> is not allowed. The correct usage is <label spellcheck="true">Example Label</label>.

This attribute is merely a hint for the browser: browsers are not required to be able to check for spelling errors. Typically non-editable elements are not checked for spelling errors, even if the spellcheck attribute is set to true and the browser supports spellchecking.

The default value of this attribute is browser and element-dependant:

Browser <html> <textarea> <input> others Comment
Firefox false false false inherited When layout.spellcheckDefault is 0
false true inherited inherited When layout.spellcheckDefault is 1 (default value)
false true true inherited When layout.spellcheckDefault is 2
Seamonkey false false false inherited When layout.spellcheckDefault is 0
false true inherited inherited When layout.spellcheckDefault is 1 (default value)
false true true inherited When layout.spellcheckDefault is 2
Camino false false false inherited When layout.spellcheckDefault is 0
false true inherited inherited When layout.spellcheckDefault is 1
false true true inherited When layout.spellcheckDefault is 2 (default value)
Chrome false true ? inherited
Internet Explorer false true ? inherited
Opera false true ? inherited
Safari false true ? inherited

Specifications

Specification Status Comment
HTML Living Standard
The definition of 'spellcheck' in that specification.
Living Standard No change from latest snapshot, HTML 5.1
HTML 5.1
The definition of 'spellcheck' in that specification.
Recommendation Snapshot of HTML Living Standard, initial definition

Browser compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidiOS SafariSamsung Internet
Basic supportChrome Full support 9Edge Full support YesFirefox Full support YesIE Full support 11Opera Full support YesSafari Full support YesWebView Android Full support 47Chrome Android Full support 47Edge Mobile Full support YesFirefox Android Full support 57Opera Android Full support 37Safari iOS Full support 9.3Samsung Internet Android Full support 5.0

Legend

Full support  
Full support

See also

Document Tags and Contributors

Contributors to this page: wbamberg, mfuji09, TomPridham, fscholz, mfluehr, teoli
Last updated by: wbamberg,