Deprecated since SVG 2
This feature has been removed from the Web standards. Though some browsers may still support it, it is in the process of being dropped. Avoid using it and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.

SVG supports the built-in XML attribute xml:space to handle whitespace characters inside <text> elements. Child elements inside a <text> element may also have an xml:space attribute that overrides the parent's.

Note: Instead of using the xml:space attribute, use the white-space CSS property.

This attribute influences how browsers parse text content and therefore changes the way the DOM is built. Therefore, changing this attribute's value through the DOM API may have no effect.

Usage context

Categories None
Value default | preserve
Animatable No
Normative document SVG 1.1 (2nd Edition)
Whitespace characters will be processed in this order:
  1. Remove all newline characters.
  2. Convert all tab characters into space characters.
  3. Remove all leading and trailing space characters.
  4. Collapse all contiguous space characters into a single space.

The browser converts all newline and tab characters into spaces. Then, it draws all space characters (including leading, trailing and multiple consecutive space characters).

For example, when drawn with xml:space="preserve", the string "a b" (three spaces between "a" and "b") separates "a" and "b" more than "a b" (one space between "a" and "b").



All SVG elements can use the xml:space attribute

Browser compatibilityUpdate compatibility data on GitHub

Chrome Edge Firefox Internet Explorer Opera Safari
Basic support ? ? 3 ? ? ?
Android webview Chrome for Android Edge Mobile Firefox for Android Opera for Android iOS Safari Samsung Internet
Basic support ? ? ? 4 ? ? ?

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