CSS.escape()

Experimental: This is an experimental technology
Check 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) + '"]');

Specifications

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
escape
46
79
31
No
33
10
46
46
31
33
10
5.0

See also

© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/CSS/escape