translate3d()
translate3d() は CSS の関数で、要素を三次元空間内で再配置します。返値は <transform-function> データ型です。
試してみましょう
この変換は三次元ベクトルであることが特徴です。座標は要素がそれぞれの方向にどれだけ移動するかを定義します。
構文
css
translate3d(tx, ty, tz)
値
tx-
変換ベクトルの横座標を表す
<length>または<percentage>です。 ty-
変換ベクトルの縦座標を表す
<length>または<percentage>です。 tz-
変換ベクトルの z 成分を表す
<length>です。<percentage>値は指定できません。この場合、これを含む座標変換は無効とされます。
| ℝ^2 のデカルト座標 | ℝℙ^2 の同次座標 | ℝ^3 のデカルト座標 | ℝℙ^3 の同次座標 |
|---|---|---|---|
|
ℝ^2 では線形変換ではないので、デカルト座標の行列で表すことはできない。 |
ℝ^3 では線形変換ではないので、デカルト座標の行列で表すことはできない。 | ||
例
単一軸の座標変換の使用
HTML
html
<div>Static</div>
<div class="moved">Moved</div>
<div>Static</div>
CSS
css
div {
width: 60px;
height: 60px;
background-color: skyblue;
}
.moved {
/* Equivalent to perspective(500px) translateX(10px) */
transform: perspective(500px) translate3d(10px, 0, 0px);
background-color: pink;
}
結果
z 軸と x 軸を組み合わせた座標変換
HTML
html
<div>Static</div>
<div class="moved">Moved</div>
<div>Static</div>
CSS
css
div {
width: 60px;
height: 60px;
background-color: skyblue;
}
.moved {
transform: perspective(500px) translate3d(10px, 0, 100px);
background-color: pink;
}
結果
仕様書
| Specification |
|---|
| CSS Transforms Module Level 2 # funcdef-translate3d |
ブラウザーの互換性
BCD tables only load in the browser