Änderungen in .css vom Browser ignoriert
Rolf Wolters
- css
Ich habe seit einigen Jahren wieder etwas an einer .css geändert. In dieser sind Schriftarten etc. enthalten.
Die .css befindet sich im Webspace Stammverzeichnis.
Ändere ich eine Schriftgröße, -Farbe, -Art etc. wird diese Änderung im Browser nicht dargestellt, auch wenn ich F5 drücke.
Benenne ich die .css um, zwinge ich den Browser die umbenannte .css zu verwenden und plötzlich werden die Änderungen angezeigt.
Das passiert sowohl lokal, als auch nach dem hochladen auf dem Webspace.
Browser: IE, Firefox, Chrome.
Woran kann das liegen?
Hallo
Am fehlerhaften Quelltext, den du uns leider vorenthälst.
Gruss
MrMurphy
@@Rolf Wolters
Ändere ich eine Schriftgröße, -Farbe, -Art etc. wird diese Änderung im Browser nicht dargestellt, auch wenn ich F5 drücke.
Und bei Ctrl-F5 (Strg-F5)?
Woran kann das liegen?
Am Caching.
LLAP 🖖
Hey,
Woran kann das liegen?
Am Caching.
Will heißen, dass der Browser lokal z.b .css Dateien speichert damit er die Seiten schneller laden kann ohne auf die .css vom Server zu warten. Gibt es da eine Möglichkeit das zu unterdrücken?
Gruß
Jo
@@j4nk3y
Will heißen, dass der Browser lokal z.b .css Dateien speichert damit er die Seiten schneller laden kann ohne auf die .css vom Server zu warten. Gibt es da eine Möglichkeit das zu unterdrücken?
Während der Entwicklung recht einfacht: Einstellungen so ändern, dass bei geöffnetem Entwicklertool CSS und JavaScript und Bilder … nicht aus dem Cache geholt werden:
Firefox: Häkchen bei „HTTP-Cache bei offenem Werkzeugkasten deaktivieren“ setzen
In Chrome (meiner sprcht gerade englisch mit mir): Preferences > Settings > Network > Häkchen bei „Disable cache (while DevTools is open)“
LLAP 🖖
Morgen
Danke schön, dass suche ich seit etwa einem Jahr :-D. Habs nirgends so schön erklärt gefunden.
Gruß
Jo
Gibt es da eine Möglichkeit das zu unterdrücken?
Zwei Möglichkeiten wurden schon genannt. Als dritte kannst du beim Aufruf der CSS-Datei während der Testphase einen wechselnden Wert anhängen, z.B. die Uhrzeit:
<link rel=stylesheet href="css/basis.css?<? echo time(); ?>">
Gruß, Linuchs
@@Linuchs
Gibt es da eine Möglichkeit das zu unterdrücken?
Zwei Möglichkeiten wurden schon genannt. Als dritte kannst du beim Aufruf der CSS-Datei während der Testphase einen wechselnden Wert anhängen, z.B. die Uhrzeit:
Oder das Stylesheet ins HTML schreiben:
<?php $include = TRUE; ?>
⋮
<?php if ($include): ?>
<style>
<?php readfile('standard.css'); ?>
</style>
<?php else: ?>
<link rel="stylesheet" href="standard.css"/>
<?php endif; ?>
LLAP 🖖
Hallo!
Vielen Dank!
Aber wie ist das bei den Besuchern der Webseite? Wann werden die dann die erneuerten Werte der Schriften etc. sehen können?
Das ist aber nicht richtig durchdacht von den Browserentwicklern oder?
Danke.
Rolf
Hallo
Aber wie ist das bei den Besuchern der Webseite? Wann werden die dann die erneuerten Werte der Schriften etc. sehen können?
Wenn die von Gunnar verwendete Variable $include
auf FALSE
gesetzt oder entfernt wird, wird das Nicht-cachen abgeschaltet.
von …
<?php $include = TRUE; ?>
… auf …
<?php $include = FALSE; ?>
Das ist aber nicht richtig durchdacht von den Browserentwicklern oder?
Warum?
Tschö, Auge