Images réactives (expérimental)
Type : boolean
Par défaut : false
astro@5.0.0
Active la prise en charge des images réactives automatiques dans votre projet.
Lorsque cette option est activé, vous pouvez passer une propriété layout
à n’importe quel composant <Image />
ou <Picture />
pour créer une image réactive.
Lorsqu’une mise en page est définie, les images ont des attributs srcset
et sizes
générés automatiquement en fonction des dimensions de l’image et du type de mise en page. Les images avec les dispositions responsive
et full-width
auront des styles appliqués pour s’assurer qu’elles sont redimensionnées en fonction de leur conteneur.
Ce composant <Image />
générera le code HTML suivant :
Le style suivant est appliqué pour garantir que les images se redimensionnent correctement :
Propriétés des images réactives
Titre de la section Propriétés des images réactivesVoici les propriétés supplémentaires disponibles pour les composants <Image />
et <Picture />
lorsque les images réactives sont activées :
layout
: Le type de mise en page de l’image. Il peut s’agir deresponsive
,fixed
,full-width
ounone
. La valeur par défaut estimage.experimentalLayout
.fit
: Définit comment l’image doit être recadrée si le ratio d’aspect est modifié. Les valeurs correspondent à celles de CSSobject-fit
. La valeur par défaut estcover
, ou la valeur deimage.experimentalObjectFit
si elle est définie.position
: Définit la position du recadrage de l’image si le rapport hauteur/largeur est modifié. Les valeurs correspondent à celles de CSSobject-position
. La valeur par défaut estcenter
, ou la valeur deimage.experimentalObjectPosition
si elle est définie.priority
: Si elle est définie, l’image est chargée avec empressement. Sinon, les images seront chargées paresseusement. Utilisez cette option pour votre plus grande image. La valeur par défaut estfalse
.
Les attributs widths
et sizes
sont automatiquement générés en fonction des dimensions de l’image et du type de mise en page, et dans la plupart des cas, ils ne doivent pas être définis manuellement. L’attribut sizes
généré pour les images responsive
et full-width
(pleine largeur)
est basé sur l’hypothèse que l’image est affichée à peu près sur toute la largeur de l’écran lorsque la fenêtre de visualisation est plus petite que la largeur de l’image. Si c’est significativement différent (par exemple, s’il s’agit d’une mise en page en plusieurs colonnes sur de petits écrans), vous devrez peut-être ajuster l’attribut sizes
manuellement pour obtenir les meilleurs résultats.
L’attribut densities
n’est pas compatible avec les images réactives et sera ignoré s’il est défini.
Paramètres de configuration des images réactives
Titre de la section Paramètres de configuration des images réactivesVous pouvez activer les images réactives pour tous les composants <Image />
et <Picture />
en définissant image.experimentalLayout
avec une valeur par défaut. Ces paramètres peuvent être remplacés par la propriété layout
de chaque composant.
Avec responsive
comme mise en page par défaut, vous pouvez modifier la propriété layout
de chaque image :
Pour une présentation complète et pour donner votre avis sur cette API expérimentale, consultez le RFC Responsive Images.
Reference