Deprecated since SVG 2
This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. 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 xml:space
attribute to handle whitespace characters inside elements. Child elements inside an element may also have an xml:space
attribute that overrides the parentʼs one.
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.
All elements are using this attribute.
html, body, svg { height: 100%; }
<svg viewBox="0 0 140 50" xmlns="http://www.w3.org/2000/svg"> <text y="20" xml:space="default">Default spacing</text> <text y="40" xml:space="preserve">Preserved spacing</text> </svg>
Usage notes
Value | default | preserve |
---|---|
Default value | default |
Animatable | No |
default
- With this value set, whitespace characters will be processed in this order:
-
- All newline characters are removed.
- All tab characters are converted into space characters.
- All leading and trailing space characters are removed.
- All contiguous space characters are collapsed into a single space character.
preserve
-
This value tells the user agent to convert all newline and tab characters into spaces. Then, it draws all space characters (including leading, trailing and multiple consecutive space characters).
For example, the string "a b" (three spaces between "a" and "b") separates "a" and "b" more than "a b" (one space between "a" and "b").
Specifications
Specification | Status | Comment |
---|---|---|
Scalable Vector Graphics (SVG) 2 The definition of 'xml:space' in that specification. |
Candidate Recommendation | Deprecates the attribute and suggests to use white-space instead. |
Scalable Vector Graphics (SVG) 1.1 (Second Edition) The definition of 'xml:space' in that specification. |
Recommendation | Initial definition |
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
xml:space | Chrome ? | Edge ? | Firefox Full support 3 | IE ? | Opera ? | Safari ? | WebView Android ? | Chrome Android ? | Firefox Android Full support 4 | Opera Android ? | Safari iOS ? | Samsung Internet Android ? |
Legend
- Full support
- Full support
- Compatibility unknown
- Compatibility unknown
- Deprecated. Not for use in new websites.
- Deprecated. Not for use in new websites.