2009-09-10 7 views
1

J'ai créé un fichier sprite CSS pour réduire le nombre de demandes au serveur.Beaucoup de demandes à un fichier image qui est référencé à partir de CSS

Mais lorsque la page est chargée, je peux voir dans Firebug de nombreuses requêtes GET vers le même fichier image (en fonction du nombre de règles CSS appliquées avec cette image). Probablement, à partir de ce groupe de requêtes, une seule est réelle et le reste est extrait du cache du navigateur, mais ce n'est qu'une supposition, car je peux voir des temps pour faire une requête HTTP.

Alors je me demande si c'est normal? PS J'utilise Java WebApplication et Tomcat Container. resourses d'image sont retreived de servlet par défaut, donc têtes LastModified appropriées sont définies

+0

Je ne pense pas que la plate-forme du côté serveur doit affecter la façon dont le navigateur va chercher les images référencées dans CSS – jrharshath

+0

vrai, mais il peut y avoir des problèmes avec ECHOUE LastModified têtes qui peuvent influer sur la mise en cache et donc l'extraction – glaz666

Répondre

0

Source: addon YSlow pour Firebug

Essayez la configuration ET Tags peut-être?

Bonté,

Dan

+0

YSlow montre grage A (pas d'erreurs) dans la section "faire moins de demandes HTTP au serveur". Mais je vais regarder à ET Tags – glaz666

+0

En fait, il est de qualité A sur les balises d'entité aussi :) Donc, ce n'est probablement pas le cas – glaz666

0

est-il possible que vous ayez le cache de votre navigateur désactivé? sur firefox, tapez about: config et assurez-vous que le cache est activé.

+0

non, tous les paramètres de cache sont définis sur les valeurs par défaut. – glaz666

3

Si vous faites référence à une image-objet d'image, je vous suggère de la définir une seule fois dans la classe css d'une classe et de n'utiliser ensuite que la propriété background-position.

Exemple CSS:

.spriteImg { 
    background-image: url('../images/spite.png'); 
} 
.headerTile { 
    background-position: 0 0; 
    background-repeat: repeat-x; 
} 

Exemple HTML:

<div id="header" class="spriteImg headerTile"></div> 

Voici un autre exemple: http://css-tricks.com/css-sprites/

0

Oui, semble être le problème Firefox 3.5. Voici similar case

Merci à tous pour la participation

Questions connexes