This is an experimental technologyCheck the Browser compatibility table carefully before using this in production.
The CSS.escape()
static method returns a CSSOMString
containing the escaped string passed as parameter, mostly for use as part of a CSS selector.
Syntax
escapedStr = CSS.escape(str);
Parameters
- str
- The
CSSOMString
to be escaped.
Examples
Basic results
CSS.escape(".foo#bar") // "\.foo\#bar"
CSS.escape("()[]{}") // "\(\)\[\]\{\}"
CSS.escape('--a') // "--a"
CSS.escape(0) // "\30 ", the Unicode code point of '0' is 30
CSS.escape('\0') // "\ufffd", the Unicode REPLACEMENT CHARACTER
In context uses
To escape a string for use as part of a selector, the escape()
method can be used:
var element = document.querySelector('#' + CSS.escape(id) + ' > img');
The escape()
method can also be used for escaping strings, although it escapes characters that don't strictly need to be escaped:
var element = document.querySelector('a[href="#' + CSS.escape(fragment) + '"]');
Specification
Specification | Status | Comment |
CSS Object Model (CSSOM)The definition of 'CSS.escape()' in that specification. | Working Draft | Initial definition |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Chrome
Full support 46 |
Edge
Full support 79 |
Firefox
Full support 31 |
IE
No support No |
Opera
Full support 33 |
Safari
Full support 10 |
WebView Android
Full support 46 |
Chrome Android
Full support 46 |
Firefox Android
Full support 31 |
Opera Android
Full support 33 |
Safari iOS
Full support 10 |
Samsung Internet Android
Full support 5.0 |
Legend
- Full support
- Full support
- No support
- No support
- Experimental. Expect behavior to change in the future.'
- Experimental. Expect behavior to change in the future.
See also
- The
CSS
interface where this static method resides. - A polyfill for the CSS.escape
CSS.escape() by Mozilla Contributors is licensed under CC-BY-SA 2.5.