J'utilise CSS pour placer beaucoup de mes images (comme arrière-plans <div>
) et je trouve souvent qu'elles se chargent très lentement de cette façon. Ils semblent être la dernière chose à charger. Même les petites images de petites icônes mettent du temps à apparaître de cette façon. Existe-t-il un moyen d'indiquer au navigateur une priorité pour les images? Ou obtenez-le pour télécharger les images dans le fichier CSS plus tôt et les rendre plus tôt?
13
Réponses:
CSS est pour le style, pas pour le contenu. Les navigateurs (à juste titre) essaient d'afficher du contenu avant d'ajouter un style, d'où la raison pour laquelle les images dans les feuilles de style sont généralement téléchargées en dernier. Si les images sont importantes pour votre contenu, ajoutez-les via des
<IMG>
balises HTML standard .la source
Utilisez les URI absolus de votre feuille de style et ajoutez les images des balises IMG à un caché
<div>
sur la page (cela suppose que vous utilisez les mêmes images sur chaque page; idéalement dans le pied de page afin qu'elles soient toutes chargées et mises en cache sur un appel de page donné ).Les images sur la page ont la priorité et, une fois les images mises en cache, elles s'afficheront immédiatement lors des demandes de page suivantes.
la source
Pour les navigateurs qui prennent en charge le type d'URI de données (voir http://en.wikipedia.org/wiki/Data_Uri pour plus d'informations) pour inclure l'image dans le CSS lui-même.
Cela présente cependant quelques inconvénients:
la source
À l'heure actuelle, il n'y a aucun moyen de spécifier les fichiers à télécharger en premier. Pour votre information, les images spécifiées dans les fichiers CSS sous forme d' images de fond télécharger la dernière sans doute parce que le navigateur ne les voit pas le contenu et donc une priorité inférieure afin éviter de les utiliser pour des images importantes que vous voulez charger rapidement.
la source
Utilisez des sprites CSS , en particulier pour les icônes.
la source
Faites vos images aussi petites que possible. Vous pouvez utiliser smush.it pour supprimer les octets inutiles.
la source