Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

translateX()

Baseline Widely available

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis ⁨juillet 2015⁩.

La fonction CSS translateX() repositionne un élément horizontalement sur le plan 2D. Son résultat est de type <transform-function>.

Exemple interactif

transform: translateX(0);
transform: translateX(42px);
transform: translateX(-2.1rem);
transform: translateX(3ch);
<section id="default-example">
  <img
    class="transition-all"
    id="static-element"
    src="/shared-assets/images/examples/firefox-logo.svg"
    width="200" />
  <img
    class="transition-all"
    id="example-element"
    src="/shared-assets/images/examples/firefox-logo.svg"
    width="200" />
</section>
#static-element {
  opacity: 0.4;
  position: absolute;
}

#example-element {
  position: absolute;
}

Note : translateX(tx) est équivalent à translate(tx, 0) ou translate3d(tx, 0, 0).

Syntaxe

css
/* Valeurs <length-percentage> */
transform: translateX(200px);
transform: translateX(50%);

Valeurs

<length-percentage>

Est une longueur (<length>) ou un pourcentage (<percentage>) représentant l'abscisse (composante horizontale, x) du vecteur de déplacement [tx, 0]. Dans le système de coordonnées cartésiennes, cela représente le déplacement le long de l'axe x. Une valeur en pourcentage fait référence à la largeur de la boîte de référence définie par la propriété transform-box.

Coordonnées cartésiennes sur ℝ^2 (angl.) Coordonnées homogènes sur ℝℙ^2 Coordonnées cartésiennes sur ℝ^3 (angl.) Coordonnées homogènes sur ℝℙ^3 (angl.)

Un déplacement n'est pas une transformation linéaire dans ℝ^2 et ne peut pas être représenté par une matrice de coordonnées cartésiennes.

(10t010001)\left( \begin{array}{ccc} 1 & 0 & t \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{array} \right)
(10t010001)\left( \begin{array}{ccc} 1 & 0 & t \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{array} \right)
(100t010000100001)\left( \begin{array}{cccc} 1 & 0 & 0 & t \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{array} \right)
[1 0 0 1 t 0]

Syntaxe formelle

<translateX()> = 
translateX( <length-percentage> )

<length-percentage> =
<length> |
<percentage>

Exemples

HTML

html
<div>Statique</div>
<div class="moved">Déplacé</div>
<div>Statique</div>

CSS

css
div {
  width: 60px;
  height: 60px;
  background-color: skyblue;
}

.moved {
  transform: translateX(10px); /* Équivaut à translate(10px) */
  background-color: pink;
}

Résultat

Spécifications

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

Compatibilité des navigateurs

Voir aussi