matrix()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Die matrix()
CSS Funktion definiert eine homogene 2D-Transformationsmatrix. Ihr Ergebnis ist ein <transform-function>
Datentyp.
Hinweis:
Die matrix(a, b, c, d, tx, ty)
Funktion ist eine Abkürzung für matrix3d(a, b, 0, 0, c, d, 0, 0, 0, 0, 1, 0, tx, ty, 0, 1)
.
Probieren Sie es aus
transform: matrix(1.2, 0.2, -1, 0.9, 0, 20);
transform: matrix(0.4, 0, 0.5, 1.2, 60, 10);
transform: matrix(0, 1, 1, 0, 0, 0);
transform: matrix(0.1, 1, -0.3, 1, 0, 0);
<section id="default-example">
<img
class="transition-all"
id="example-element"
src="/shared-assets/images/examples/firefox-logo.svg"
width="200" />
</section>
Syntax
matrix(a, b, c, d, tx, ty)
Werte
Die matrix()
Funktion wird mit sechs Werten spezifiziert. Die konstanten Werte sind implizit und werden nicht als Parameter übergeben; die anderen Parameter sind in spaltenweiser Reihenfolge beschrieben.
- a b c d
-
Sind
<number>
s, die die lineare Transformation beschreiben. - tx ty
-
Sind
<number>
s, die die anzuwendende Translation beschreiben.
Kartesische Koordinaten auf ℝ^2 | Homogene Koordinaten auf ℝℙ^2 | Kartesische Koordinaten auf ℝ^3 | Homogene Koordinaten auf ℝℙ^3 |
---|---|---|---|
|
|
|
|
[a b c d tx ty] |
Die Werte repräsentieren die folgenden Funktionen: matrix(scaleX(), skewY(), skewX(), scaleY(), translateX(), translateY())
.
Formale Syntax
Beispiele
HTML
<div>Normal</div>
<div class="changed">Changed</div>
CSS
div {
width: 80px;
height: 80px;
background-color: skyblue;
}
.changed {
transform: matrix(1, 2, -1, 1, 80, 80);
background-color: pink;
}
Ergebnis
Spezifikationen
Specification |
---|
CSS Transforms Module Level 1 # funcdef-transform-matrix |
Browser-Kompatibilität
Siehe auch
transform
- Einzelne Transformations-Eigenschaften:
<transform-function>
matrix3d()