Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. CSS
  3. Reference
  4. Values
  5. <transform-function>
  6. scale()

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

View in EnglishAlways switch to English

scale()

Baseline Widely available

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

Diescale()CSSFunktion definiert eine Transformation, die ein Element auf der 2D-Ebene skaliert. Da die Skalierungsmenge durch einen Vektor [sx, sy] definiert wird, können die horizontalen und vertikalen Dimensionen in unterschiedlichen Maßstäben skaliert werden. Das Ergebnis ist ein<transform-function> Datentyp.

Probieren Sie es aus

transform: scale(1);
transform: scale(0.7);
transform: scale(1.3, 0.4);
transform: scale(-0.5, 1);
<section>  <img          src="/shared-assets/images/examples/firefox-logo.svg"    width="200" /></section>

Diese Skalierungstransformation wird durch einen zweidimensionalen Vektor charakterisiert. Seine Koordinaten definieren, wie viel Skalierung in jeder Richtung vorgenommen wird. Wenn beide Koordinaten gleich sind, ist die Skalierung einheitlich (isotrop) und das Seitenverhältnis des Elements wird beibehalten (dies ist einehomothetische Transformation).

Wenn ein Koordinatenwert außerhalb des Bereichs [-1, 1] liegt, wächst das Element in dieser Dimension; wenn er innerhalb liegt, schrumpft es. Ein negativer Wert führt zu einerPunktspiegelung in dieser Dimension. Der Wert1 hat keinen Effekt.

Hinweis:Diescale() Funktion skaliert nur in 2D. Um in 3D zu skalieren, verwenden Sie stattdessenscale3d().

Syntax

css
scale(sx)scale(sx, sy)

Werte

sx

Ein<number> oder<percentage> der die Abszisse (horizontal, x-Komponente) des Skalierungsvektors darstellt.

syOptional

Ein<number> oder<percentage> der die Ordinate (vertikal, y-Komponente) des Skalierungsvektors darstellt.Wenn nicht definiert, ist der Standardwertsx, was eine einheitliche Skalierung zur Folge hat, die dasSeitenverhältnis des Elements beibehält.

Kartesische Koordinaten aufℝ^2Homogene Koordinaten aufℝℙ^2Kartesische Koordinaten aufℝ^3Homogene Koordinaten aufℝℙ^3
(sx00sy)\left( \begin{array}{cc} sx & 0 \\ 0 & sy \end{array} \right)
(sx000sy0001)\left( \begin{array}{ccc} sx & 0 & 0 \\ 0 & sy & 0 \\ 0 & 0 & 1 \end{array} \right)
(sx000sy0001)\left( \begin{array}{ccc} sx & 0 & 0 \\ 0 & sy & 0 \\ 0 & 0 & 1 \end{array} \right)
(sx0000sy0000100001)\left( \begin{array}{cccc} sx & 0 & 0 & 0 \\ 0 & sy & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{array} \right)
[sx 0 0 sy 0 0]

Formale Syntax

<scale()> =
scale(<number> ,<number>?)

Barrierefreiheit

Skalierungs-/Zoomen-Animationen sind problematisch für die Barrierefreiheit, da sie häufig ein Auslöser für bestimmte Arten von Migräne sind. Wenn Sie solche Animationen auf Ihrer Website verwenden müssen, sollten Sie eine Steuerung bereitstellen, die es den Nutzern erlaubt, Animationen zu deaktivieren, vorzugsweise site-weit.

Überlegen Sie auch, die Medienfunktionprefers-reduced-motion zu nutzen — verwenden Sie sie, um eineMedia Query zu schreiben, die Animationen ausschaltet, wenn der Nutzer in seinen Systemeinstellungen reduzierte Animationen angegeben hat.

Erfahren Sie mehr:

Beispiele

Die X- und Y-Dimensionen zusammen skalieren

HTML

html
<div>Normal</div><div>Scaled</div>

CSS

css
div {  width: 80px;  height: 80px;  background-color: skyblue;}.scaled {  transform: scale(0.7); /* Equal to scaleX(0.7) scaleY(0.7) */  background-color: pink;}

Ergebnis

Die X- und Y-Dimensionen separat skalieren und den Ursprung verschieben

HTML

html
<div>Normal</div><div>Scaled</div>

CSS

css
div {  width: 80px;  height: 80px;  background-color: skyblue;}.scaled {  transform: scale(2, 0.5); /* Equal to scaleX(2) scaleY(0.5) */  transform-origin: left;  background-color: pink;}

Ergebnis

Spezifikationen

Specification
CSS Transforms Module Level 1
# funcdef-transform-scale

Browser-Kompatibilität

Siehe auch

Help improve MDN

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

[8]ページ先頭

©2009-2025 Movatter.jp