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

View in English Always switch to English

r

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨Juli 2020⁩.

Die r-Eigenschaft von CSS definiert den Radius eines Kreises. Sie kann nur mit dem SVG-Element <circle> verwendet werden. Wenn vorhanden, überschreibt sie das r-Attribut des Kreises.

Hinweis: Die r-Eigenschaft gilt nur für <circle>-Elemente, die in einem <svg> verschachtelt sind. Sie gilt nicht für andere SVG-Elemente, HTML-Elemente oder Pseudo-Elemente.

Syntax

css
/* Length and percentage values */ r: 3px; r: 20%; /* Global values */ r: inherit; r: initial; r: revert; r: revert-layer; r: unset; 

Werte

Die <length>- und <percentage>-Werte definieren den Radius des Kreises.

<length>

Absolute oder relative Längen können in jeder vom CSS-Datentyp <length> erlaubten Einheit ausgedrückt werden. Negative Werte sind ungültig.

<percentage>

Prozentangaben beziehen sich auf die normalisierte Diagonale des aktuellen SVG-Viewports, die wie folgt berechnet wird: <width>2+<height>22.

Formale Definition

Anfangswert0
Anwendbar auf<circle> element in <svg>
VererbtNein
Prozentwerterefer to the normalized diagonal of the current SVG viewport
Berechneter Wertder Prozentwert wie angegeben oder die absolute Länge
Animationstypby computed value type

Formale Syntax

r = 
<length-percentage>

<length-percentage> =
<length> |
<percentage>

Beispiele

Den Radius eines Kreises definieren

In diesem Beispiel haben wir zwei identische <circle>-Elemente in einem SVG, jedes mit einem Radius von 10 und den gleichen x- und y-Achsenkoordinaten für ihre Mittelpunkte.

html
<svg xmlns="http://www.w3.org/2000/svg"> <circle cx="50" cy="50" r="10" /> <circle cx="50" cy="50" r="10" /> </svg> 

Mit CSS stylen wir nur den ersten Kreis und erlauben dem zweiten Kreis, die Standardstile zu verwenden (wobei fill standardmäßig auf Schwarz gesetzt ist). Wir verwenden die r-Eigenschaft, um den Wert des SVG-Attributs r zu überschreiben und ihm eine fill- und stroke-Eigenschaft zu geben. Die Standardgröße eines SVG beträgt 300px Breite und 150px Höhe.

css
svg { border: 1px solid black; } circle:first-of-type { r: 30px; fill: lightgreen; stroke: black; } 

ViewBox versus Viewport-Pixel

Dieses Beispiel enthält zwei SVGs, jeweils mit zwei <circle>-Elementen. Das zweite SVG enthält ein viewBox-Attribut, um den Unterschied zwischen SVG-ViewBox und SVG-Viewports zu demonstrieren.

html
<svg xmlns="http://www.w3.org/2000/svg"> <circle cx="50" cy="50" r="10" /> <circle cx="50" cy="50" r="10" /> </svg> <svg viewBox="0 0 200 100" xmlns="http://www.w3.org/2000/svg"> <circle cx="50" cy="50" r="10" /> <circle cx="50" cy="50" r="10" /> </svg> 

Das CSS ist ähnlich wie im vorherigen Beispiel mit r: 30px gesetzt, aber wir setzen eine width, um sicherzustellen, dass die Bilder jeweils 300px breit sind:

css
svg { border: 1px solid black; width: 300px; } circle:first-of-type { r: 30px; fill: lightgreen; stroke: black; } 

Da das viewBox-Attribut das SVG auf 200 SVG-Koordinatensystempixel Breite definiert und das Bild auf 300px skaliert wird, werden die 30 SVG-Koordinatenpixel als 45 CSS-Pixel gerendert.

Den Radius eines Kreises mit Prozentwerten definieren

In diesem Beispiel verwenden wir das gleiche Markup wie im vorherigen Beispiel. Der einzige Unterschied ist der r-Wert; in diesem Fall verwenden wir einen Prozentwert.

css
svg { border: 1px solid black; width: 300px; } circle:first-of-type { r: 30%; fill: lightgreen; stroke: black; } 

In beiden Fällen beträgt der Kreisradius 30% der normalisierten Diagonale des SVG-Viewports. Der Radius r ist gleich 0.3×<width>2+<height>22. Während das erste Bild 300 und 150 CSS-Pixel verwendet und das zweite 200 und 100 SVG-ViewBox-Einheiten, ist 30% ein proportionaler Wert. Dadurch ist der r-Wert derselbe: 47.43 ViewBox-Einheiten, was zu 71.15 CSS-Pixel aufgelöst wird.

Obwohl der r gleich ist, unterscheiden sich die Mittelpunkte, da das zweite SVG um 50% vergrößert wird, wodurch sein Mittelpunkt um 50% nach unten und rechts verschoben wird.

Spezifikationen

Specification
Scalable Vector Graphics (SVG) 2
# R

Browser-Kompatibilität

Siehe auch