« SVG Attribute reference home

The letter-spacing attribute specifies spacing behavior between text characters supplemental to any spacing due to the kerning attribute.

For SVG, if a <length> is provided without a unit identifier (e.g., an unqualified number such as 128), the browser processes the <length> as a width value in the current user coordinate system.

If a <length> is provided with one of the unit identifiers (e.g., .25em or 1%), then the browser converts the <length> into a corresponding value in the current user coordinate system.

As a presentation attribute, it also can be used as a property directly inside a CSS stylesheet, see css letter-spacing for further information.

Usage context

Categories Presentation attribute
Value normal | <length> | inherit
Animatable Yes
Normative document SVG 1.1 (2nd Edition)


A length is a distance measurement, given as a number along with a unit. Lengths are specified in one of two ways. When used in a stylesheet, a <length> is defined as follows:

length ::= number (~"em" | ~"ex" | ~"px" | ~"in" | ~"cm" | ~"mm" | ~"pt" | ~"pc")?

See the CSS2 specification for the meanings of the unit identifiers.

For properties defined in CSS2, a length unit identifier must be provided. For length values in SVG-specific properties and their corresponding presentation attributes, the length unit identifier is optional. If not provided, the length value represents a distance in the current user coordinate system. In presentation attributes for all properties, whether defined in SVG1.1 or in CSS2, the length identifier, if specified, must be in lower case.

When lengths are used in an SVG attribute, a <length> is instead defined as follows:

length ::= number ("em" | "ex" | "px" | "in" | "cm" | "mm" | "pt" | "pc" | "%")?

The unit identifiers in such <length> values must be in lower case.

Note that the non-property <length> definition also allows a percentage unit identifier. The meaning of a percentage length value depends on the attribute for which the percentage length value has been specified. Two common cases are:

  • when a percentage length value represents a percentage of the viewport width or height
  • when a percentage length value represents a percentage of the bounding box width or height on a given object.

In the SVG DOM, <length> values are represented using SVGLength or SVGAnimatedLength objects.


The following elements can use the letter-spacing attribute

See also

Usage Note

The letter-spacing attribute is poorly supported in SVG. As of May 2016, Firefox renders text exaxtly the same regardless of letter-spacing settings. Chrome does render text with spaced letters, but will improperly compute the text length; calls to textNode.getComputedTextLength() return exactly the same result whether letter-spacing  is set or not (returning grossly incorrect results when letters are spaced). 

Document Tags and Contributors

 Contributors to this page: Druzion, jonathaneunice, Jeremie
 Last updated by: Druzion,