1. Web
  2. CSS
  3. Reference
  4. Values
  5. <basic-shape>
  6. xywh()

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

View in English Always switch to English

xywh()

Baseline 2024
Newly available

Since ⁨January 2024⁩, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

Die xywh() CSS Funktion erstellt ein Rechteck mit den angegebenen Abständen von den linken (x) und oberen (y) Rändern des umgebenden Blocks sowie der angegebenen Breite (w) und Höhe (h) des Rechtecks. Es ist eine Grundform-Funktion des <basic-shape> Datentyps. Sie können die xywh()-Funktion in CSS-Eigenschaften wie offset-path verwenden, um den rechteckigen Pfad zu erstellen, entlang dem sich ein Element bewegt, und in clip-path, um die Form des Ausschnittbereichs zu definieren.

Syntax

css
offset-path: xywh(0 1% 2px 3% round 0 1px 2% 3px);
clip-path: xywh(1px 2% 3px 4em round 0 1% 2px 3em);

Werte

<length-percentage>

Gibt die <length-percentage> Werte für die x- und y-Koordinaten des Rechtecks an.

<length-percentage [0,∞]>

Gibt nicht-negative <length-percentage> Werte für die Breite und Höhe des Rechtecks an. Der Mindestwert kann null sein, und der Maximalwert hat keine Begrenzung.

round <'border-radius'>

Gibt den Radius der abgerundeten Ecken des Rechtecks an, unter Verwendung derselben Syntax wie die CSS-border-radius-Kurzschreibweise. Dieser Parameter ist optional.

Formale Syntax

<xywh()> = 
xywh( <length-percentage>{2} <length-percentage [0,∞]>{2} [ round <'border-radius'> ] ? )

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

<border-radius> =
<length-percentage [0,∞]>{1,4} [ / <length-percentage [0,∞]>{1,4} ] ?

Beispiele

Erstellen eines offset-paths mit xywh()

Im folgenden Beispiel verwendet die offset-path Eigenschaft die xywh()-Funktion, um die Form des Pfades zu definieren, auf dem sich das Element, in diesem Fall ein magentafarbener Kasten, bewegt. Zwei verschiedene Szenarien werden gezeigt, jeweils mit unterschiedlichen Werten für die xywh()-Funktion. Der Pfeil innerhalb der Kästen zeigt auf den rechten Rand des Kastens.

html
<div class="container">
 Rectangular path 1
 <div class="path xywh-path-1">→</div>
</div>
<div class="container">
 Rectangular path 2
 <div class="path xywh-path-2">→</div>
</div>
css
.container {
 position: relative;
 display: inline-block;
 width: 200px;
 height: 200px;
 border: 1px solid black;
 margin: 30px;
 text-align: center;
}
.path {
 width: 50px;
 height: 50px;
 position: absolute;
 background-color: magenta;
 animation: move 10s linear infinite;
}
.xywh-path-1 {
 offset-path: xywh(20px 20px 100% 100% round 10%);
}
.xywh-path-2 {
 offset-path: xywh(20px 30% 150% 200%);
}
@keyframes move {
 0% {
 offset-distance: 0%;
 }
 100% {
 offset-distance: 100%;
 }
}

Ergebnis

  • Das Rechteck des Pfads 1 ist um 20px von den linken und oberen Rändern des umgebenden Blocks versetzt. Dieses Pfad-Rechteck hat die gleiche Dimension wie der umgebende Block, das heißt, die Breite beträgt 100% der Breite des umgebenden Blocks, und die Höhe beträgt 100% der Höhe des umgebenden Blocks. Beachten Sie, wie der Pfeil innerhalb des Kastens der 10% Kurve (definiert durch round 10%) an den Ecken des rechteckigen Pfads folgt.
  • Da das obere Limit von sowohl Breite als auch Höhe in xywh() unendlich ist, macht das Setzen der Höhe auf 200% im Pfad 2 Rechteck das generierte Rechteck doppelt so hoch wie den umgebenden Block. Beachten Sie, wie der Pfeil innerhalb des Kastens sich an den Ecken verhält, wenn kein round <'border-radius'> angegeben ist.

Spezifikationen

Specification
CSS Shapes Module Level 1
# funcdef-basic-shape-xywh

Browser-Kompatibilität

Siehe auch

Help improve MDN

Learn how to contribute Diese Seite wurde automatisch aus dem Englischen übersetzt.

AltStyle によって変換されたページ (->オリジナル) /