Zur Navigation

CSS Stylesheet reload erzwingen

1 mark

Kann man auf elegante Art und Weise das Neuladen eines Stylesheet erzwingen?
Das Problem ist ein "Theme Switcher", der aber immer den gleichen Namen für das Stylesheet verwendet. Wenn man nun das Template umstellt, wird immer noch das alte Stylesheet aus dem Cache genommen.
Abhilfe schafft ein F5 bzw. STRG+F5 Reload.
Aber das den Kunden jedes Mal zu erklären ist eher suboptimal.

Gibts da eine elegante Javascript, oder sonstwie Lösung dafür?

13.07.2009 12:17

2 Jörg Kruse

Du könntest noch einen Dummy-Parameter an die URL hängen und diesen bei jeder Änderung / Umstellung erhöhen, z.B.: style.css?v=1, style.css?v=2 etc.

13.07.2009 12:26

3 mark

Ok,
versuch ich mal.
Am besten nehme ich gleich den Timestamp, dann kann man das dauernd machen

13.07.2009 12:50

... 2 Jahre und 9 Monate später ...

4 Bodo (Gast)

Timestamp ist natürlich quatsch!
Dann wird das CSS nämlich JEDEs mal bei jedem klick neu geladen.
Das mit der Variabel macht Sinn!

11.05.2012 10:16

... 1 Jahr und 1 Monat später ...

5 Timo (Gast)

Wenn er nur einen neuen Timestamp setzt, wenn die Datei aktualisiert wurde, dann nicht.

09.07.2013 11:10

6 Jörg Kruse

Wenn der Timestamp mit PHP gesetzt wird, dann wird die Datei jedesmal neu geladen:

style.css?t=<?php echo time() ?>

Auf einem Entwicklungssystem ist das vielleicht gar nicht mal so schlecht, auf einem Produktivsystem aber würde ich wie in Betrag 2 Versionsnummern nehmen.

09.07.2013 14:40 | geändert: 09.07.2013 14:40

Beitrag schreiben (als Gast)

Die Antwort wird nach der Überprüfung durch einen Moderator freigeschaltet.





[BBCode-Hilfe]