2009-08-10 8 views
1

Wenn ich eine Seite mit 50 div Elementen, mit 50 separaten CSS-Klassen und jede CSS-Klasse hat die Zeile:Firefox redownloading background-image für jede Klasse?

background:#000 url(curve_red/circle.png) no-repeat 0 0; 

Dann Firefox (3.5) wird 50 HTTP-Anfragen für die gleiche Datei macht (überprüft mit Brandstifter).

Allerdings wird IE diese Wiederholung sehen und nicht versuchen, die Datei nach jeder Anfrage erneut zu laden (verifiziert mit Fiddler).

Ist das ein Bug oder kann irgendjemand einen Einblick geben, warum Firefox das tut?

+0

Edit: Scheint Chrom macht nur die eine Anfrage auch. – maxp

+3

Ich würde mich nicht auf Firebug in dieser Hinsicht verlassen, da es Anfragen zeigt, die den Cache auch treffen. –

+0

Versucht mit Fiddler für Firefox und es machte auch die zusätzlichen Anfragen. – maxp

Antwort

1

Nur eine Vermutung, aber könnten Sie versuchen, die Hintergrund-Eigenschaft in nur 1 CSS-Klasse anstelle von 50 setzen? Dies würde zumindest die Wiederholung in Ihrem CSS loswerden und könnte erklären, warum FF nicht nur 1 Anfrage macht.

Natürlich können Sie Ihren Divs mehrere Klassen hinzufügen, damit sie die anderen separaten Stile, z.

.myBackground { background:#000 url(curve_red/circle.png) no-repeat 0 0; } 
.class1 { color: blue; } 
.class2 { color: red; } 

und dann in Ihrem html:

<div class="class1 myBackground">blue div</div> 
<div class="class2 myBackground">red div</div> 
0

Haben deaktivieren Sie Caching aus irgendeinem Grund? Dies könnte entweder über eine Erweiterung (die Sie nie gewusst haben) oder durch Neuladen der Seite mit einer Tastenkombination wie STRG-F5 oder STRG-SHIFT-R statt nur F5 oder STRG-R geschehen. Außerdem konnte ich dieses Verhalten nicht rekonstruieren. Ich denke du bist sicher zu sagen, dass es ganz sicher kein Bug in Firefox 3.5 ist.

Sie können das Problem auch mit einem neuen Profil überprüfen (starten Sie Firefox mit dem Befehlszeilenschalter -P neu, um auf den Profilmanager zuzugreifen).