Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
mohamedkhallouq
GitHub Repository: mohamedkhallouq/content
Path: blob/main/files/en-us/web/svg/attribute/dy/index.md
6566 views
---
title: dy slug: Web/SVG/Attribute/dy page-type: svg-attribute tags: - SVG - SVG Attribute spec-urls: - https://drafts.fxtf.org/filter-effects/#element-attrdef-fedropshadow-dy - https://drafts.fxtf.org/filter-effects/#element-attrdef-feoffset-dy - https://svgwg.org/svg2-draft/text.html#TextElementDYAttribute
---

{{SVGRef}}

The dy attribute indicates a shift along the y-axis on the position of an element or its content.

You can use this attribute with the following SVG elements:

  • {{SVGElement('altGlyph')}}

  • {{SVGElement('feDropShadow')}}

  • {{SVGElement('feOffset')}}

  • {{SVGElement('glyphRef')}}

  • {{SVGElement('text')}}

  • {{SVGElement('tref')}}

  • {{SVGElement('tspan')}}

Example

html, body, svg { height: 100%; }
<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"> <!-- Lines materialized the position of the glyphs --> <line x1="10%" x2="10%" y1="0" y2="100%" /> <line x1="0" x2="100%" y1="30%" y2="30%" /> <line x1="0" x2="100%" y1="80%" y2="80%" /> <!-- Some reference text --> <text x="10%" y="30%" fill="grey">SVG</text> <!-- The same text with a shift along the y-axis --> <text dy="50%" x="10%" y="30%">SVG</text> </svg>
line { stroke: red; stroke-width: 0.5px; stroke-dasharray: 3px; }

{{EmbedLiveSample("Example", '100%', 200)}}

altGlyph

Warning: As of SVG2 {{SVGElement('altGlyph')}} is deprecated and shouldn't be used.

For {{SVGElement('altGlyph')}}, if it contains a single value, dy defines a shift along the y-axis for all alternate glyph.

If there are multiple values, dy defines a shift along the y-axis for each individual glyph relative to the preceding glyph. If there are less values than glyphs, the remaining glyphs use a value of 0. If there are more values than glyphs, extra values are ignored.

Value List of <length>
Default value none
Animatable Yes

feDropShadow

For {{SVGElement('feDropShadow')}}, dy defines the y offset of the dropped shadow. The unit used to resolve the value of the attribute is set by the {{SVGAttr('primitiveUnits')}} attribute of the {{SVGElement('filter')}} element.

Value <number>
Default value 2
Animatable Yes

feOffset

For {{SVGElement('feOffset')}}, dy defines the y offset of the filter input graphic. The unit used to resolve the value of the attribute is set by the {{SVGAttr('primitiveUnits')}} attribute of the {{SVGElement('filter')}} element.

Value <number>
Default value 0
Animatable Yes

glyphRef

Warning: As of SVG2 {{SVGElement('glyphRef')}} is deprecated and shouldn't be used.

For {{SVGElement('glyphRef')}}, dy defines the y offset of the glyph, in the font metric system.

Value <number>
Default value 0
Animatable Yes

text

For {{SVGElement('text')}}, if it contains a single value, dy defines a shift along the y-axis for all glyphs.

If there are multiple values, dy defines a shift along the y-axis for each individual glyph relative to the preceding glyph. If there are less values than glyphs, the remaining glyphs use a value of 0. If there are more values than glyphs, extra values are ignored.

Value List of <length>
Default value none
Animatable Yes

Example

html, body, svg { height: 100%; }
<svg viewBox="0 0 150 100" xmlns="http://www.w3.org/2000/svg"> <!-- Horizontal lines --> <line x1="0" x2="100%" y1="30" y2="30" /> <line x1="0" x2="100%" y1="40" y2="40" /> <line x1="0" x2="100%" y1="50" y2="50" /> <line x1="0" x2="100%" y1="60" y2="60" /> <!-- Vertical lines --> <line x1="10" x2="10" y1="0" y2="100%" /> <line x1="50" x2="50" y1="0" y2="100%" /> <line x1="90" x2="90" y1="0" y2="100%" /> <!-- Behaviors change based on the number of values in the attributes --> <text dy="20" x="10" y="30">SVG</text> <text dy="0 10" x="50" y="30">SVG</text> <text dy="0 10 20" x="90" y="30">SVG</text> </svg>
line { stroke: red; stroke-width: 0.5px; stroke-dasharray: 3px; }

{{EmbedLiveSample('text', '100%', 100)}}

tref

Warning: As of SVG2 {{SVGElement('tref')}} is deprecated and shouldn't be used.

For {{SVGElement('tref')}}, if it contains a single value, dy defines a shift along the y-axis for all glyphs.

If there are multiple values, dy defines a shift along the y-axis for each individual glyph relative to the preceding glyph. If there are less values than glyphs, the remaining glyphs use a value of 0. If there are more values than glyphs, extra values are ignored.

Value List of <length>
Default value none
Animatable Yes

tspan

For {{SVGElement('tspan')}}, if it contains a single value, dy defines a shift along the y-axis for all alternate glyph.

If there are multiple values, dy defines a shift along the y-axis for each individual glyph relative to the preceding glyph. If there are less values than glyphs, the remaining glyphs use a value of 0. If there are more values than glyphs, extra values are ignored.

Value List of <length>
Default value none
Animatable Yes

Specifications

{{Specifications}}