The <symbol> element is used to define graphical template objects which can be instantiated by a <use> element. The use of symbol elements for graphics that are used multiple times in the same document adds structure and semantics. Documents that are rich in structure may be rendered graphically, as speech, or as Braille, and thus promote accessibility. Note that a symbol element itself is not rendered. Only instances of a symbol element (i.e., a reference to a symbol by a <use> element) are rendered.
Usage context
| Categories | Container element, Structural element | 
|---|---|
| Permitted content | Any number of the following elements, in any order: Animation elements Descriptive elements Shape elements Structural elements Gradient elements <a>,<altGlyphDef>,<clipPath>,<color-profile>,<cursor>,<filter>,<font>,<font-face>,<foreignObject>,<image>,<marker>,<mask>,<pattern>,<script>,<style>,<switch>,<text>,<view> | 
Attributes
Global attributes
- Core attributes »
- Graphical event attributes »
- Presentation attributes »
- class
- style
- externalResourcesRequired
Specific attributes
DOM Interface
This element implements the SVGSymbolElement interface.
Example
<svg width="120" height="140">
<!-- symbol definition  NEVER draw -->
<symbol id="sym01" viewBox="0 0 150 110">
  <circle cx="50" cy="50" r="40" stroke-width="8"
      stroke="red" fill="red"/>
  <circle cx="90" cy="60" r="40" stroke-width="8"
      stroke="green" fill="white"/>
</symbol>
<!-- actual drawing by "use" element -->
<use href="#sym01"
     x="0" y="0" width="100" height="50"/>
<use href="#sym01"
     x="0" y="50" width="75" height="38"/>
<use href="#sym01"
     x="0" y="100" width="50" height="25"/>
</svg>
Specifications
| Specification | Status | Comment | 
|---|---|---|
| Scalable Vector Graphics (SVG) 2 The definition of '<symbol>' in that specification. | Candidate Recommendation | Allowed geometry properties to be specified on a symbol | 
| Scalable Vector Graphics (SVG) 1.1 (Second Edition) The definition of '<symbol>' in that specification. | Recommendation | Initial definition | 
Browser compatibility
| Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari | 
|---|---|---|---|---|---|---|
| Basic support | 1.0 | (Yes) | 1.5 (1.8) | 9.0 | 9.0 | 3.0.4 | 
| Feature | Android | Edge | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile | 
|---|---|---|---|---|---|---|
| Basic support | 3.0 | (Yes) | 1.0 (1.8) | No support | (Yes) | 3.0.4 | 
The chart is based on these sources.