translate3d()
は CSS の関数で、要素を 3D 空間内で再配置します。返値は <transform-function>
データ型です。
このデモのソースファイルは GitHub リポジトリに格納されています。デモプロジェクトに協力したい場合は、 https://github.com/mdn/interactive-examples をクローンしてプルリクエストを送信してください。
この変換は三次元ベクトルであることが特徴です。座標は要素がそれぞれの方向にどれだけ移動するかを定義します。
構文
translate3d(tx, ty, tz)
値
tx
- 変換ベクトルの横座標を表す
<length>
または<percentage>
です。 ty
- 変換ベクトルの縦座標を表す
<length>
または<percentage>
です。 tz
- 変換ベクトルの z 成分を表す
<length>
です。<percentage>
値は指定できません。この場合、これを含む変換は無効とされます。
ℝ2 のデカルト座標 | ℝℙ2 の同次座標 | ℝ3 のデカルト座標 | ℝℙ3 の同次座標 |
---|---|---|---|
ℝ2 では線形変換ではないので、デカルト座標の行列で表すことはできない。 |
ℝ3 では線形変換ではないので、デカルト座標の行列で表すことはできない。 |
例
単一軸を使用した変換
HTML
<div>Static</div>
<div class="moved">Moved</div>
<div>Static</div>
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
<div>Static</div>
<div class="moved">Moved</div>
<div>Static</div>
CSS
div {
width: 60px;
height: 60px;
background-color: skyblue;
}
.moved {
transform: perspective(500px) translate3d(10px, 0, 100px);
background-color: pink;
}
結果
仕様書
仕様書 | 状態 | 備考 |
---|---|---|
CSS Transforms Level 2 translate3d() の定義 |
編集者草案 | 初回定義 |
ブラウザーの互換性
<transform-function>
データ型の互換性情報をご覧ください。