Maison >interface Web >Tutoriel H5 >Comment implémenter des images réactives à l'aide de & lt; image & gt; élément et attribut srcset?
<picture></picture>
et srcset
L'élément <picture></picture>
, combiné avec l'attribut srcset
, fournit un moyen robuste et flexible d'implémenter des images réactives. Il vous permet de servir différentes versions d'image optimisées pour différentes tailles d'écran et densités. Voici comment vous l'implémentez:
L'élément <picture></picture>
agit comme un conteneur. À l'intérieur, vous spécifiez différents éléments <source></source>
, chacun avec un attribut srcset
définissant un ensemble de sources d'image et leurs descripteurs correspondants. Le navigateur sélectionne l'image la plus appropriée en fonction des capacités de l'appareil. Enfin, vous incluez un élément <img src="/static/imghwm/default1.png" data-src="image-low-res.jpg" class="lazy" alt="Comment implémenter des images réactives à l'aide de & lt; image & gt; élément et attribut srcset?" >
comme secours pour les navigateurs qui ne prennent pas en charge <picture></picture>
.
Par exemple:
<code class="html"><picture> <source srcset="image-high-res.jpg 2x, image-low-res.jpg 1x" media="(min-width: 1024px)"> <source srcset="image-medium-res.jpg 1.5x, image-low-res.jpg 1x" media="(min-width: 768px)"> <source srcset="image-low-res.jpg" media="(max-width: 767px)"> <img src="/static/imghwm/default1.png" data-src="image-low-res.jpg" class="lazy" alt="Description of image"> </source></source></source></picture></code>
Dans cet exemple:
srcset="image-high-res.jpg 2x, image-low-res.jpg 1x"
spécifie deux images pour les écrans d'une largeur minimale de 1024px. 2x
indique une image haute résolution (double la densité), tandis que 1x
est une image de résolution standard. Le navigateur choisira le plus approprié en fonction du rapport Pixel de périphérique (DPR).srcset
similaires sont utilisés pour d'autres requêtes multimédias, ciblant différentes tailles d'écran.<img alt="Comment implémenter des images réactives à l'aide de & lt; image & gt; élément et attribut srcset?" >
fournit une secours si le navigateur ne prend pas en charge <picture></picture>
ou <source></source>
. N'oubliez pas de remplacer "image-high-res.jpg"
, "image-medium-res.jpg"
et "image-low-res.jpg"
avec vos noms de fichiers d'image réels. L'attribut alt
est crucial pour l'accessibilité.
<picture></picture>
et srcset
L'utilisation <picture></picture>
et srcset
offre plusieurs avantages par rapport aux autres techniques d'image réactives comme l'utilisation max-width
ou simplement de redimensionner des images avec un logiciel d'édition d'image:
<picture></picture>
permet un contrôle granulaire sur l'image servie en fonction de divers facteurs (taille de l'écran, densité de pixels, capacités de l'appareil). Cela garantit une qualité d'image et des performances optimales sur tous les appareils.<picture></picture>
, en tirant parti du meilleur format pour chaque appareil.<picture></picture>
Element et srcset
sont pris en charge par tous les principaux navigateurs modernes, et cette méthode est recommandée par de nombreux experts en performance Web.<picture></picture>
et srcset
L'optimisation des images est cruciale pour les temps de chargement rapide lors de l'utilisation <picture></picture>
et srcset
. Voici comment:
<picture></picture>
et srcset
sont largement pris en charge par les navigateurs modernes. Cependant, les navigateurs plus âgés pourraient ne pas les soutenir pleinement. Voici ce que vous devriez considérer:
<img alt="Comment implémenter des images réactives à l'aide de & lt; image & gt; élément et attribut srcset?" >
dans l'élément <picture></picture>
en tant que repli pour les navigateurs qui ne prennent pas en charge <picture></picture>
ou srcset
. Cela garantit qu'une image est toujours affichée.<picture></picture>
et srcset
sont une amélioration progressive. Ils améliorent l'expérience pour soutenir les navigateurs, tout en fournissant un repli fonctionnel aux navigateurs plus âgés. L'image de secours sera utilisée par les anciens navigateurs.Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!