Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

fill

Das Attribut fill hat zwei unterschiedliche Bedeutungen. Bei Formen und Text ist es ein Präsentationsattribut, das die Farbe (oder eine andere SVG-Farbquelle wie einen Farbverlauf oder ein Muster) festlegt, mit der das Element gezeichnet wird. Bei Animationen legt es den Endzustand der Animation fest.

Hinweis: Wenn fill als Präsentationsattribut verwendet wird, gibt es auch eine entsprechende CSS-Eigenschaft: fill. Wenn beide angegeben sind, hat die CSS-Eigenschaft Vorrang.

Das SVG-Präsentationsattribut fill und die CSS-Eigenschaft fill können mit den folgenden SVG-Elementen verwendet werden:

Mit dem SVG-Attribut fill kann der Endzustand einer Animation für die folgenden SVG-Elemente festgelegt werden:

Beispiele

Einfache Farb- und Verlaufsfüllungen sowie Animation

html
<svg viewBox="0 0 300 100" xmlns="http://www.w3.org/2000/svg">
  <!-- Basic 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>

Beispiel für context-fill

In diesem Beispiel definieren wir drei Formen mit <path>-Elementen, für die jeweils unterschiedliche Farben für stroke und fill festgelegt sind. Außerdem definieren wir mithilfe des <marker>-Elements ein <circle>-Element als Markierung. Die Markierung wird über die CSS-Eigenschaft marker auf jede Form angewendet.

Für das <circle>-Element sind stroke="context-stroke" und fill="context-fill" festgelegt. Da es als Markierung im Kontext der Formen verwendet wird, bewirken diese Attribute, dass es jeweils die für das <path>-Element festgelegten Werte für fill und stroke übernimmt.

html
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 90">
  <style>
    path {
      stroke-width: 2px;
      marker: url("#circle");
    }
  </style>
  <path d="M 10 44.64 L 30 10 L 70 10 L 90 44.64 L 70 79.28 L 30 79.28 Z"
        stroke="red" fill="orange" />
  <path d="M 100 44.64 L 80 10 L 120 10 L 140 44.64 L 120 79.28 L 80 79.28 Z"
        stroke="green" fill="lightgreen" />
  <path d="M 150 44.64 L 130 10 L 170 10 L 190 44.64 L 170 79.28 L 130 79.28 Z"
        stroke="blue" fill="lightblue" />
  <marker id="circle" markerWidth="12" markerHeight="12"
          refX="6" refY="6" markerUnits="userSpaceOnUse">
    <circle cx="6" cy="6" r="3" stroke-width="2"
            stroke="context-stroke" fill="context-fill"  />
  </marker>
</svg>

Die Ausgabe sieht wie folgt aus:

Hinweis: Elemente können auch context-stroke und context-fill verwenden, um Werte für stroke und fill zu übernehmen, wenn sie von <use>-Elementen referenziert werden.

animate

Für <animate> legt fill den Endzustand der Animation fest.

Wert freeze (Zustand des letzten Animationsframes beibehalten) | remove (Zustand des ersten Animationsframes beibehalten)
Standardwert remove
Animierbar Nein

animateMotion

Für <animateMotion> legt fill den Endzustand der Animation fest.

Wert freeze (Zustand des letzten Animationsframes beibehalten) | remove (Zustand des ersten Animationsframes beibehalten)
Standardwert remove
Animierbar Nein

animateTransform

Für <animateTransform> legt fill den Endzustand der Animation fest.

Wert freeze (Zustand des letzten Animationsframes beibehalten) | remove (Zustand des ersten Animationsframes beibehalten)
Standardwert remove
Animierbar Nein

circle

Für <circle> ist fill ein Präsentationsattribut, das die Farbe des Kreises festlegt.

Wert <paint>
Standardwert black
Animierbar Ja

ellipse

Für <ellipse> ist fill ein Präsentationsattribut, das die Farbe der Ellipse festlegt.

Wert <paint>
Standardwert black
Animierbar Ja

path

Für <path> ist fill ein Präsentationsattribut, das die Farbe des Inneren der Form festlegt. (Das Innere wird durch das Attribut fill-rule oder die Eigenschaft fill-rule bestimmt.)

Wert <paint>
Standardwert black
Animierbar Ja

polygon

Für <polygon> ist fill ein Präsentationsattribut, das die Farbe des Inneren der Form festlegt. (Das Innere wird durch das Attribut fill-rule oder die Eigenschaft fill-rule bestimmt.)

Wert <paint>
Standardwert black
Animierbar Ja

polyline

Für <polyline> ist fill ein Präsentationsattribut, das die Farbe des Inneren der Form festlegt. (Das Innere wird durch das Attribut fill-rule oder die Eigenschaft fill-rule bestimmt.)

Wert <paint>
Standardwert black
Animierbar Ja

rect

Für <rect> ist fill ein Präsentationsattribut, das die Farbe des Rechtecks festlegt.

Wert <paint>
Standardwert black
Animierbar Ja

set

Für <set> legt fill den Endzustand der Animation fest.

Wert freeze (Zustand des letzten Animationsframes beibehalten) | remove (Zustand des ersten Animationsframes beibehalten)
Standardwert remove
Animierbar Nein

text

Für <text> ist fill ein Präsentationsattribut, das die Farbe des Textes festlegt.

Wert <paint>
Standardwert black
Animierbar Ja

textPath

Für <textPath> ist fill ein Präsentationsattribut, das die Farbe des Textes festlegt.

Wert <paint>
Standardwert black
Animierbar Ja

tspan

Für <tspan> ist fill ein Präsentationsattribut, das die Farbe des Textes festlegt.

Wert <paint>
Standardwert black
Animierbar Ja

Spezifikationen

Spezifikation
SVG Animations Level 2
# FillAttribute
Scalable Vector Graphics (SVG) 2
# SpecifyingFillPaint

Browser-Kompatibilität

svg.elements.animate.fill

svg.elements.animateMotion.fill

svg.elements.animateTransform.fill

svg.elements.circle.fill

svg.elements.ellipse.fill

svg.elements.path.fill

svg.elements.polygon.fill

svg.elements.polyline.fill

svg.elements.rect.fill

svg.elements.set.fill

svg.elements.text.fill

svg.elements.textPath.fill

svg.elements.tspan.fill

Siehe auch

  • CSS-Eigenschaft fill