The fill attribute has two different meaning: For shapes and text it's a presentation attribute that lets define the color (or any SVG paint servers like gradients or patterns) used to paint the element; for animation it lets define what is the final state of the animation.

As a presentation attribute, it can be applied to any element but it has effect only on the following eleven elements: <altGlyph>, <circle>, <ellipse>, <path>, <polygon>, <polyline>, <rect>, <text>, <textPath>, <tref>, and <tspan>

For animation five elements are using this attribute: <animate>, <animateColor>, <animateMotion>, <animateTransform>, and <set>

<svg viewBox="0 0 300 100" xmlns="http://www.w3.org/2000/svg">
  <!-- Simple color fill -->
  <circle cx="50" cy="50" r="40" fill="pink" />


  <!-- Fill circle with a gradient -->
  <defs>
    <radialGradient id="myGradient">
      <stop offset="0%"   stop-color="pink" />
      <stop offset="100%" stop-color="black" />
    </radialGradient>
  </defs>

  <circle cx="150" cy="50" r="40" fill="url(#myGradient)" />


  <!--
  Keeping the final state of an animated circle
  which is a circle with a radius of 40.
  -->
  <circle cx="250" cy="50" r="20">
    <animate attributeType="XML"
             attributeName="r"
             from="0" to="40" dur="5s"
             fill="freeze" />
  </circle>
</svg>

altGlyph

Warning: As of SVG2 <altGlyph> is deprecated and shouldn't be used.

For <altGlyph>, fill is a presentation attribute that lets define what is the color of the glyph.

Value <paint>
Default value black
Animatable Yes

Note: As a presentation attribute fill can be used as a CSS property.

animate

For <animate>, fill defines the final state of the animation.

Value freeze (Keep the state of the last animation frame) | remove (Keep the state of the first animation frame)
Default value remove
Animatable No

animateColor

Warning: As of SVG Animation 2 <animateColor> is deprecated and shouldn't be used. Use <animate> instead.

For <animateColor>, fill defines the final state of the animation.

Value freeze (Keep the state of the last animation frame) | remove (Keep the state of the first animation frame)
Default value remove
Animatable No

animateMotion

For <animateMotion>, fill defines the final state of the animation.

Value freeze (Keep the state of the last animation frame) | remove (Keep the state of the first animation frame)
Default value remove
Animatable No

animateTransform

For <animateTransform>, fill defines the final state of the animation.

Value freeze (Keep the state of the last animation frame) | remove (Keep the state of the first animation frame)
Default value remove
Animatable No

circle

For <circle>, fill is a presentation attribute that lets define what is the color of the circle.

Value <paint>
Default value black
Animatable Yes

Note: As a presentation attribute fill can be used as a CSS property.

ellipse

For <ellipse>, fill is a presentation attribute that lets define what is the color of the ellipse.

Value <paint>
Default value black
Animatable Yes

Note: As a presentation attribute fill can be used as a CSS property.

path

For <path>, fill is a presentation attribute that lets define which is the color of the interior of the shape. (Interior is define by the fill-rule attribute)

Value <paint>
Default value black
Animatable Yes

Note: As a presentation attribute fill can be used as a CSS property.

polygon

For <polygon>, fill is a presentation attribute that lets define which is the color of the interior of the shape. (Interior is define by the fill-rule attribute)

Value <paint>
Default value black
Animatable Yes

Note: As a presentation attribute fill can be used as a CSS property.

polyline

For <polyline>, fill is a presentation attribute that lets define which is the color of the interior of the shape. (Interior is define by the fill-rule attribute)

Value <paint>
Default value black
Animatable Yes

Note: As a presentation attribute fill can be used as a CSS property.

rect

For <rect>, fill is a presentation attribute that lets define what is the color of the rectangle.

Value <paint>
Default value black
Animatable Yes

Note: As a presentation attribute fill can be used as a CSS property.

set

For <set>, fill defines the final state of the animation.

Value freeze (Keep the state of the last animation frame) | remove (Keep the state of the first animation frame)
Default value remove
Animatable No

text

For <text>, fill is a presentation attribute that lets define what is the color of the text.

Value <paint>
Default value black
Animatable Yes

Note: As a presentation attribute fill can be used as a CSS property.

textPath

For <textPath>, fill is a presentation attribute that lets define what is the color of the text.

Value <paint>
Default value black
Animatable Yes

Note: As a presentation attribute fill can be used as a CSS property.

tref

Warning: As of SVG2 <tref> is deprecated and shouldn't be used.

For <tref>, fill is a presentation attribute that lets define what is the color of the text.

Value <paint>
Default value black
Animatable Yes

Note: As a presentation attribute fill can be used as a CSS property.

tspan

For <tspan>, fill is a presentation attribute that lets define what is the color of the text.

Value <paint>
Default value black
Animatable Yes

Note: As a presentation attribute fill can be used as a CSS property.

Specifications

Specification Status Comment
SVG Animations Level 2
The definition of 'transform' in that specification.
Editor's Draft Definition for animations
Scalable Vector Graphics (SVG) 2
The definition of 'fill' in that specification.
Candidate Recommendation Definition for shapes and texts.
Adds context-fill and context-stroke.
Scalable Vector Graphics (SVG) 1.1 (Second Edition)
The definition of 'fill' in that specification.
Recommendation Initial definition for animations
Scalable Vector Graphics (SVG) 1.1 (Second Edition)
The definition of 'fill' in that specification.
Recommendation Initial definition for shapes and texts

Browser compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidiOS SafariSamsung Internet
Basic supportChrome ? Edge ? Firefox ? IE ? Opera ? Safari ? WebView Android ? Chrome Android ? Edge Mobile ? Firefox Android ? Opera Android ? Safari iOS ? Samsung Internet Android ?

Legend

Compatibility unknown  
Compatibility unknown

Note: For information on using the context-fill (and context-stroke) values from HTML documents, see the documentation for the non-standard -moz-context-properties property.

Document Tags and Contributors

Tags: 
Last updated by: ExE-Boss,