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

View in English Always switch to English

atan2()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨März 2023⁩.

Die atan2() CSS Funktion ist eine trigonometrische Funktion, die den inversen Tangens von zwei Werten zwischen -unendlich und unendlich zurückgibt. Die Funktion akzeptiert zwei Argumente und gibt die Anzahl von Bogenmaß zurück, die ein <angle> zwischen -180deg und 180deg darstellt.

Syntax

css
/* Two <number> values */
transform: rotate(atan2(3, 2));

/* Two <dimension> values */
transform: rotate(atan2(1rem, -0.5rem));

/* Two <percentage> values */
transform: rotate(atan2(20%, -30%));

/* Other values */
transform: rotate(atan2(pi, 45));
transform: rotate(atan2(e, 30));

Parameter

Die Funktion atan2(y, x) akzeptiert zwei durch Komma getrennte Werte als Parameter. Jeder Wert kann eine <number>, eine <dimension>, oder ein <percentage> sein. Beide Werte müssen vom gleichen Typ sein, obwohl sie, falls es sich um <dimension> handelt, unterschiedliche Einheiten haben können (Beispiel: atan2(100px, 5vw) ist gültig).

y

Die y-Koordinate des Punktes. Eine Berechnung, die auf eine <number>, eine <dimension>, oder ein <percentage> hinausläuft.

x

Die x-Koordinate des Punktes. Eine Berechnung, die auf eine <number>, eine <dimension>, oder ein <percentage> hinausläuft.

Rückgabewert

Bei gegebenen zwei Werten x und y berechnet die Funktion atan2(y, x) und gibt das <angle> zwischen der positiven x-Achse und dem Strahl vom Ursprung zum Punkt (x, y) zurück.

Formale Syntax

<atan2()> = 
atan2( <calc-sum> , <calc-sum> )

<calc-sum> =
<calc-product> [ [ '+' | '-' ] <calc-product> ]*

<calc-product> =
<calc-value> [ [ '*' | / ] <calc-value> ]*

<calc-value> =
<number> |
<dimension> |
<percentage> |
<calc-keyword> |
( <calc-sum> )

<calc-keyword> =
e |
pi |
infinity |
-infinity |
NaN

Beispiele

Elemente drehen

Die atan2() Funktion kann verwendet werden, um Elemente zu drehen, da sie ein <angle> zurückgibt.

HTML

html
<div class="box box-1"></div>
<div class="box box-2"></div>
<div class="box box-3"></div>
<div class="box box-4"></div>
<div class="box box-5"></div>

CSS

css
div.box {
  width: 100px;
  height: 100px;
  background: linear-gradient(orange, red);
}
div.box-1 {
  transform: rotate(atan2(3, 2));
}
div.box-2 {
  transform: rotate(atan2(3%, -2%));
}
div.box-3 {
  transform: rotate(atan2(-1, 0.5));
}
div.box-4 {
  transform: rotate(atan2(1, 0.5));
}
div.box-5 {
  transform: rotate(atan2(1rem, -0.5rem));
}

Ergebnis

Spezifikationen

Specification
CSS Values and Units Module Level 4
# trig-funcs

Browser-Kompatibilität

Siehe auch