offset-distance

Baseline 2023

Newly available

Since August 2023, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

Expérimental: Cette fonction est expérimentale
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

La propriété offset-distance définit une position le long d'un chemin offset-path.

Syntaxe

css
/* Valeur par défaut */
offset-distance: 0;

/* La position à la moitié de offset-path */
offset-distance: 50%;

/* Une position absolue le long du chemin */
offset-distance: 40px;
<length-percentage>

Une longueur qui définit l'emplacement de l'élément le long du chemin (défini par offset-path). La valeur 100% représente la longueur totale du chemin (lorsque offset-path est défini par une forme simple ou grâce à la fonction path()).

Syntaxe formelle

offset-distance = 
<length-percentage>

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

Exemples

Animation

La notion de mouvement contenue dans CSS Motion Path vient principalement de la propriété offset-distance. Si on souhaite animer un élément le long du chemin, on définira un chemin avec offset-path et on utilisera une animation qui fera évoluer offset-distance de 0% à 100%.

HTML

html
<div id="motion-demo"></div>

CSS

css
#motion-demo {
  offset-path: path("M20,20 C20,100 200,0 200,100");
  animation: move 3000ms infinite alternate ease-in-out;
  width: 40px;
  height: 40px;
  background: cyan;
}

@keyframes move {
  0% {
    offset-distance: 0%;
  }
  100% {
    offset-distance: 100%;
  }
}

Résultat

Spécifications

Specification
Motion Path Module Level 1
# offset-distance-property

Compatibilité des navigateurs

BCD tables only load in the browser