--- title: translate() slug: Web/CSS/transform-function/translate() tags: - CSS - CSS Function - CSS Transforms - Function - Reference translation_of: Web/CSS/transform-function/translate() ---
translate()
は CSS の関数は、要素を水平方向や垂直方向で再配置します。結果は {{cssxref("<transform-function>")}} データ型になります。
この変換は、二次元ベクトルであることが特徴です。それぞれの方向にどれだけ要素が動くかの座標を定義します。
/* 単一の <length-percentage> 値 */ transform: translate(200px); transform: translate(50%); /* 二つの <length-percentage> 値 */ transform: translate(100px, 200px); transform: translate(100px, 50%); transform: translate(30%, 200px); transform: translate(30%, 50%);
<length-percentage>
values0
に設定されます。例えば、 translate(2)
は translate(2, 0)
と等価です。パーセント値の場合は、 {{cssxref("transform-box")}} で定義される参照ボックスの幅からの相対値です。<length-percentage>
値ℝ2 のデカルト座標 | ℝℙ2 の同次座標 | ℝ3 のデカルト座標 | ℝℙ3 の同次座標 |
---|---|---|---|
ℝ2 では線形変換ではないので、デカルト座標の行列で表すことはできない。 |
|||
[1 0 0 1 tx ty] |
translate({{cssxref("<length-percentage>")}} , {{cssxref("<length-percentage>")}}?)
<div>Static</div> <div class="moved">Moved</div> <div>Static</div>
div { width: 60px; height: 60px; background-color: skyblue; } .moved { transform: translate(10px); /* translateX(10px) または translate(10px, 0) と同じ */ background-color: pink; }
{{EmbedLiveSample("Using_a_single-axis_translation", 250, 250)}}
<div>Static</div> <div class="moved">Moved</div> <div>Static</div>
div { width: 60px; height: 60px; background-color: skyblue; } .moved { transform: translate(10px, 10px); background-color: pink; }
{{EmbedLiveSample("Combining_y-axis_and_x-axis_translation", 250, 250)}}
仕様書 | 状態 | 備考 |
---|---|---|
{{SpecName('CSS3 Transforms', '#funcdef-transform-translate', 'translate()')}} | {{Spec2('CSS3 Transforms')}} | 初回定義 |
<transform-function>
データ型の互換性情報をご覧ください。