J'ai un lien qui commence par une image d'arrière-plan, puis passe au survol d'une autre. Les deux images d'arrière-plan sont définies dans le CSS. Mes navigateurs (aucun d'entre eux) ne semblent charger l'image de survol jusqu'à ce que vous survoliez réellement. Mais vous vous retrouvez avec une image vierge pendant les quelques secondes (sur ma connexion très lente) qu'il faut pour charger la nouvelle. Existe-t-il un moyen d'encourager le navigateur à précharger l'image en survol afin que le temps de retard ne se produise pas en survol?
14
Je n'aime pas vraiment la solution javascript - elle est désordonnée, difficile à maintenir et bien sûr échoue complètement lorsque JS est désactivé.
La solution moderne consiste à utiliser CSS Sprites - essayez-le, croyez-moi, vous vous demanderez pourquoi vous n'avez jamais fait cela auparavant;)
la source
J'ai trouvé ce lien sur la façon de pré-charger des images en utilisant du CSS pur:
http://www.thecssninja.com/css/even-better-image-preloading-with-css2
Et cela a fonctionné pour moi lorsque j'ai besoin de changer les différentes images d'arrière-plan en survol.
la source
Ajoutez ceci au-dessus de votre CSS:
Si vous suivez la route des sprites comme danp suggère que vous avez toujours un problème avec le chargement du sprite avant qu'il ne soit nécessaire. Cela dit, j'aime les sprites; pour les faire facilement j'utilise l' outil spriteme de Steve Souders:
la source