Questions & Answers

CNoetzel
Elite Observer

Kein Refresh externer CSS-Datei mit interner IE-Preview

Hallo werte Community,

wir binden derzeit eine extern gepflegte css-Datei mittels <link rel="stylesheet" type="text/css" href="https://community.e-spirit.com/assets/internet/css/example.css" media="screen" /> in unsere Seitenvorlage ein. Im SiteArchitect haben wir als Browser-Engine IE eingestellt.

Nun ist uns aufgefallen, dass wenn wir ร„nderungen an der css-Datei vornehmen, diese nicht in der internen Preview vom SiteArchitect angezeigt werden. Kopieren wir uns jedoch den PreviewLink und lassen uns die Preview in einen separaten Browser anzeigen, sind alle ร„nderungen zu sehen. Dieses Phรคnoment tritt jedoch nur bei der IE-Engine auf. Die Firefox-Engine zeigt alle ร„nderungen an der externen css-Datei sofort an.

Abhilfe kรถnnen wir uns derzeit schaffen, indem wir kurz die BrowserEngine wechseln, nachdem ร„nderungen an den css-Dateien vorgenommen wurden (IE -> FF -> IE). Dann sind auch alle ร„nderungen in der IE-Preview zu sehen.

Ist Euch dieses Phรคnomen auch schon aufgefallen? Fall ja, wie seid Ihr damit umgegangen bzw. welche Lรถsung gibt es?

Ich habe bereits im Adminhandbuch den Abschnitt zur Konfiguration der Preview รผber die fs-server.conf gelesen. Der Parameter preview.enforceDelivery=css hat mit leider keine Abhilfe geschaffen. Auch das verringern des preview.cacheTimeout auf 60 Sekunden bringt keine Abhilfe, da die styles anscheinend in der BrowserEngine selbst vorgehalten werden.

Fรผr eine Rรผckmeldung wรคre ich sehr dankbar.

Freundliche GrรผรŸe

Carsten Noetzel

0 Kudos
5 Replies
rednoss
I'm new here

Hallo Carsten,

hilft es wenn Du den Aktualisieren-Button drรผckst bzw. den SHIFT + Aktualisierungs-Button?

Viele GrรผรŸe

Rene

0 Kudos

Hallo Rene,

nein leider hilft das nicht. Die รœbernahme ist nur durch den Wechsel der Browser-Engine mรถglich, wobei das auch nicht immer zuverlรคssig funktioniert.

GrรผรŸe

Carsten

0 Kudos

Hi Carsten,

ggf. musst Du auf der Seite einmal den Bearbeitungsmodus aktivieren und wieder beenden.

Oder ggf. reicht es auch einen Timestamp/ร„nderungsdatum der CSS-Datei hinter die CSS-Datei im Link-Tag zu setzen?

Viele GrรผรŸe,

Phillip.

0 Kudos

Hallo Phillip,

leider bringt auch der Bearbeitungsmodus nicht den gewรผnschten Effekt.

Wenn ich im Link-Tag fรผr das css beispielsweise eine Versions-Nummer einfรผhre, funktioniert es einmalig, ich muss dann jedoch bei jeder ร„nderung der css-Datei die Versionsnummer hochzรคhlen, was ich ander nicht mรถchte.

<link rel="stylesheet" type="text/css" href="https://community.e-spirit.com/assets/internet/css/example.css?version=1.0" media="screen" />

Ein Lรถsung die ich derzeit sehe, ist fรผr die Preview einen Timestamp zu benutzen, wie du bereits angedeutet hast. Dieser mรผsste sich jedoch auf Basis der aktuellen Zeit stรคndig verรคndern, damit ich nicht stรคndig von Hand eingreifen muss.

<link rel="stylesheet" type="text/css" href="https://community.e-spirit.com/assets/internet/css/example.css?$CMS_VALUE(#global.now.getTime())$" media="screen" />

Es muss in irgendeiner Form mit der IE-Engine zusammenhรคngen, da es mit der Firefox-Engine wunderbar funktioniert. Die รœbernahme des aktuellen css durch den Wechsel der Engine schein nur zu funktionieren, wenn zur Preview der interne Jetty-Server verwendet wird. Bei einem externen Preview Server (Tomcat) bringt der Wechsel der Browser-Engine nichts.

GrรผรŸe

Carsten

0 Kudos

Hallo,

ich habe es jetzt mal mit <link rel="stylesheet" type="text/css" href="https://community.e-spirit.com/assets/internet/css/example.css?$CMS_VALUE(#global.now.format("dd.MM.yyyy_hh:mm:ss"))$" media="screen" /> getestet.

Es ist jetzt so, dass wenn eine neue Seite, die zuvor noch nicht in der Vorschau angezeigt wurde, ausgewรคhlt wird, die aktualisierte CSS-Datei greift und ร„nderungen angezeigt werden. Da sich der Timestamp jedoch nur bei Generierung der Vorschauseite รคndert, bleiben Seiten die zuvor schon generiert wurden, von der ร„nderung der CSS-Datei unbehelligt.

Die Lรถsung ist daher auch eher mรครŸig, da so bei einigen Seiten die aktuelle CSS-Datei und bei anderen Seiten die alte CSS-Datei verwendet wird.

GrรผรŸe

Carsten

0 Kudos

Type a product name