The <string> CSS data type represents a sequence of characters. Strings are used in numerous CSS properties, such as content, font-family, and quotes.


The <string> data type is composed of any number of Unicode characters surrounded by either double (") or single (') quotes.

Most characters can be represented literally. All characters can also be represented with their respective Unicode code points in hexadecimal, in which case they are preceded by a backslash (\). For example, \22 represents a double quote, \27 a single quote ('), and \A9 the copyright symbol (©).

Importantly, certain characters which would otherwise be invalid can be escaped with a backslash. These include double quotes when used inside a double-quoted string, single quotes when used inside a single-quoted string, and the backslash itself. For example, \\ will create a single backslash.

To output new lines, you must escape them with a line feed character such as \A or \00000A. In your code, however, strings can span multiple lines, in which case each new line must be escaped with a \ as the last character of the line.

However, to get new lines, you must also set the white-space property to appropriate value.

Note: HTML entities (such as &nbsp; or &#8212;) cannot be used in a CSS <string>.


Examples of valid strings

/* Simple strings */
"This string is demarcated by double quotes."
'This string is demarcated by single quotes.'

/* Character escaping */
"This is a string with \" an escaped double quote."
"This string also has \22 an escaped double quote."
'This is a string with \' an escaped single quote.'
'This string also has \27 an escaped single quote.'
"This is a string with \\ an escaped backslash."

/* New line in a string */
"This string has a \Aline break in it."

/* String spanning two lines of code (these two strings will have identical output) */
"A really long \
awesome string"
"A really long awesome string"


Specification Status Comment
CSS Values and Units Module Level 3
The definition of '<string>' in that specification.
Candidate Recommendation No significant change from CSS Level 2 (Revision 1).
CSS Level 2 (Revision 1)
The definition of '<string>' in that specification.
Recommendation Explicit definition; allows 6-digit Unicode escaped characters.
CSS Level 1
The definition of '<string>' in that specification.
Recommendation Implicit definition; allows 4-digit Unicode escaped characters.

Browser compatibilityUpdate compatibility data on GitHub

Chrome Edge Firefox Internet Explorer Opera Safari
<string> 1 12 1 3 3.5 1
Unicode escaped characters (\xx) 1 12 1 6 7 1
Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet
<string> ≤37 18 4 10.1 1 1.0
Unicode escaped characters (\xx) ≤37 18 4 10.1 1 1.0

See Also

© 2005–2020 Mozilla and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.