Ray() - Fonction CSS

ray()

Résumé des caractéristiques de la fonction ray()

Description rapide
Dans le cadre du déplacement suivant un chemin, ray() définit un chemin qui part du centre de l'élément et se dirige vers la périphérie.
Statut
Standard
Computed value : lors d'une animation, la propriété ray() passe progressivement d'une valeur à une autre.
Per grammar : sérialisation dans l'ordre de la syntaxe.
La saisie des valeurs peut se faire dans un ordre quelconque.
Module W3C
Déplacements suivant un chemin.
Statut du document: WD (document de travail)

Schéma syntaxique de ray().

ray() - Syntax DiagramSyntax diagram of the ray() CSS function. a a closest-side closest-side farthest-side farthest-side closest-corner closest-corner farthest-corner farthest-corner sides sides contain contain at x y at x yray()ray()
Schéma syntaxique de la fonction ray().
Cliquez sur les termes du diagram pour plus de précision.

Sur le diagram, les termes en gras sont les termes prédéfinis de CSS, les autres sont décrits ci-dessous :

Description de la fonction ray().

La fonction ray() peut être utilisé dans le cadre des déplacement suivant un chemin, avec la propriété offset-path. Elle définit un chemin rectiligne qui part du centre de l'élément et qui se dirige vers la périphérie. Les nombreux paramètres de la fonction permettent de tout ajuster, l'angle, la position du centre, etc.

Fonctionnement de la fonction ray()

Propriétés en rapport.

Nous vous invitons à consulter la propriété résumée offset pour plus d'explications ou d'autres exemples, et également les pages ci-dessous, concernant les propriétés en rapport.

Propriété résumée définissant tous les paramètres concernant le déplacement suivant un chemin (Motion Path).
Définit la position d'un chemin de déplacement, dans le contexte d'un déplacement suivant un chemin (Motion Path).
Définit le chemin sur lequel pourra se posiitionner un élément (Motion path).
Définit l'emplacement d'un élément mobile sur le trajet du chemin (Motion Path).
Définit l'orientation d'un élément par rapport à l'axe du chemin (Motion Path).
Définit le point d'ancrage des élément mobile, dans le contexte du déplacement sur un chemin (Motion Path).
Dans le cadre du déplacement suivant un chemin, ray() définit un chemin qui part du centre de l'élément et se dirige vers la périphérie.

La valeur ray() peut être utilisée avec les propriétés suivantes :

  • offset-path : Définit le chemin sur lequel pourra se posiitionner un élément (Motion path).

Syntaxes de la fonction ray().

  • offset-path: ray(45deg);

    a est que fait le chemin avec la verticale. correspond donc à un chemin vertical, du bas vers le haut.

    Mobile pour la valeur ray(0deg)

    45deg
    Mobile pour la valeur ray(90deg)

    90deg
  • offset-path: ray(45deg at 25% 75%);

    Le mot at introduit les coordonnées du centre. Il s'agit d'une valeur numérique suivie d'une unités de dimension ou d'un pourcentage. Dans ce dernier cas, le pourcentage est calculé par rapport à la largeur de l'élément pour la première valeur, et par rapport à la hauteur pour la deuxième.

    Ces valeurs peuvent également placer le centre en dehors de l'élément.

    Ces valeurs peuvent être également :
    pour la première : left, center ou right.
    et top, center ou bottom pour la deuxième valeur.

    Mobile pour le positionnement du centre

    at 75% 40%
    Centre situé dans l'élément.
    Mobile pour le positionnement du centre

    at -20% 50%
    Centre situé à l'extérieur de l'élément.
  • offset-path: ray(45deg closes-side at 25% 25%);

    Le deuxième paramètre correspond à la longueur du chemin.

    • closest-side : distance depuis le centre jusqu'au bord le plus proche (valeur par défaut).
    • farthest-side : distance depuis le centre jusqu'au bord le plus éloigné.
    • closest-corner : distance depuis le centre jusqu'au coin le plus proche.
    • farthest-side : distance depuis le centre jusqu'au bord le plus éloigné.
    • sides : distance depuis le centre jusqu'à la bordure. Contrairement aux quatre premières valeurs, avec sides cette distance varie en fonction de l'angle.
    Mobile pour la valeur closes-side
    closest-side
    Mobile pour la valeur farthest-side
    farthest-side
    Mobile pour la valeur closest-corner
    closest-corner
    Mobile pour la valeur farthest-corner
    farthest-corner

     

    Mobile pour la valeur sides

    sides
    Mobile pour la valeur sides

    sides
    Avec sides la distance face à un angle sera plus importante que perpendiculairement à un bord.
  • offset-path: ray(45deg contain);

    Le mot contain réduit légèrement la distance pour que le mobile soit toujours contenu entièrement dans les limites du chemin.

    Attention, cette valeur n'est pas encore prise en charge par les navigateurs (2025).

    Mobile pour ray() sans contain

    Sans contain
    Mobile pour ray() avec contain

    Avec contain
    Mobile pour ray() avec contain (simulation)

    Avec contain
    (simulation)

Animation avec la fonction ray().

La fonction ray() s'anime de façon continue sans problème. Sur notre exemple, afin qu'on puisse voir quelque chose, il y a deux animations. Le point rouge parcourt une spirale.

  • Une première sur offset-path, avec la fonction ray().
  • Une deuxième sur offset-distance.
·

Simulateur avec la fonction ray().

Offset-position a été fixée à 33% du bord gauche et 33% du bord haut, de façon à ce qu'il y ait vraiment un coté plus proche que les autres (et un angle plus proche aussi).
Le simulateur ne représente pas vraiment ce qu'est la fonction ray() qui est un rayon du cercle, et non pas, comme on pourrait le croire en regardant l'animation, une circonférence.
L'animation se contente de faire évoluer une propriété personnalisée : --angle. Propriété qui est reprise dans les différentes syntaxes proposées par la simulateur.

offset-path :
Mobile pour la valeur sides

Support de la fonction ray().

La fonction ray() est bien reconnue par tous les navigateurs actuels et peut être utilisée sans problème.

Colonne 1
Prise en charge par les navigateurs de la fonction ray() définissant un chemin (fonctionnalité "déplacement sur un chemin").
1
Fonction
ray()
Estimation de la prise en charge globale.
88%

Navigateurs sur ordinateurs :

Navigateurs sur mobiles :

Navigateurs obsolètes ou marginaux :

Internet Explorer

UC Browser pour Androïd

Opéra Mobile

QQ Browser

Baidu Browser

Samsung Internet

Chrome

Edge

Safari

Opéra

Firefox

Chrome pour Androïd

Safari sur IOS

Androïd Brower

Firefox pour Androïd

KaiOS Browser

Opéra mini

Historique de la fonction ray().

Voir aussi, à propos des déplacements sur un chemin.

Les déplacements suivant un chemin font l'objet d'une spécification spéciale, décrite ici déplacements suivant un chemin., qui regroupe les propriétés et les fonctions relatives à cette fonctionnalité. En voici la liste.

Propriétés :

offset
Propriété résumée définissant tous les paramètres concernant le déplacement suivant un chemin (Motion Path).
offset-anchor
Définit le point d'ancrage des élément mobile, dans le contexte du déplacement sur un chemin (Motion Path).
offset-distance
Définit l'emplacement d'un élément mobile sur le trajet du chemin (Motion Path).
offset-path
Définit le chemin sur lequel pourra se posiitionner un élément (Motion path).
offset-position
Définit la position d'un chemin de déplacement, dans le contexte d'un déplacement suivant un chemin (Motion Path).
offset-rotate
Définit l'orientation d'un élément par rapport à l'axe du chemin (Motion Path).

Fonctions :

Ray()
Dans le cadre du déplacement suivant un chemin, ray() définit un chemin qui part du centre de l'élément et se dirige vers la périphérie.