CSS-Änderungen werden nicht berücksichtigt. Warum?

7

Ich arbeite an meiner Website und wenn ich meiner CSS-Datei neue Zeilen hinzufüge, möchte ich einfach nicht die Zeilen verwenden, die ich gemacht habe.

Aber sie sollten in Ordnung sein.

%Vor%

Nur als ein Beispiel.

Die CSS-Datei arbeitet an einem Teil, aber von irgendwoher hört sie einfach auf, meine Datei zu benutzen. Es ist jedoch in den & lt; Kopf & gt;.

%Vor%

Und mein HTML-Code ist der folgende (beachte, dass dies nur ein Teil des Codes ist):

%Vor%

Weiß jemand eine Lösung dafür?

    
Kian Pasani 30.01.2015, 12:14
quelle

11 Antworten

0

Ich habe vergessen, ein { in der CSS-Datei zu schließen. Aus diesem Grund wurde der gesamte Code nicht auf der Seite angezeigt.

    
Kian Pasani 06.02.2015, 08:16
quelle
22

Normalerweise ist die Ursache einer der folgenden Gründe:

1) Ihre Regel wird nicht angewendet

Dies kann passieren, weil:

  • Ihr HTML ist nicht gut formatiert (aber im Allgemeinen gehen Browser damit um);
  • Ihr CSS hat Syntaxfehler;
  • eine andere CSS-Datei (mit gleichen / ähnlichen Regeln) wird nach Ihrer geladen (die Reihenfolge der Deklarationen zählt, letztere gewinnt);
  • einige andere CSS-Regeln mit einer höheren Spezifität werden überall geladen auf der Seite und gewinnt die Regeln, die Sie anwenden möchten (Weitere Informationen zu dieser Antwort) ;
  • einige andere CSS-Regeln nutzen Sie die !important Schlüsselwort .

Sie können dies mit den Entwicklertools Ihres Browsers überprüfen, das CSS-Bedienfeld prüfen, in dem die Regeln in absteigender Reihenfolge nach Wichtigkeit aufgeführt sind (von mehr zu weniger wichtig) ).

2) Ihre CSS-Datei wird zwischengespeichert

Dies kann passieren, weil Ihr Server oder Ihr Browser die CSS-Ressource zwischenspeichert. Um die Aktualisierung für die Ressource zu erzwingen, müssen Sie STRG F5 anstelle von F5 allein drücken, nur einmal (nachdem Sie Ihre statische Datenbank erneut implementiert haben Ressource).

Es gibt ein bekanntes SO Q & A zu diesem Thema , und es wird klar spezifiziert:

  
  • STRG F5 funktioniert (funktioniert?) in verschiedenen Browsern anders ;
  •   
  • Beachten Sie, dass, während Strg + F5 dazu führt, dass der Browser den Cache löscht und einen neuen vom Server anfordert, der Server den Server ignoriert   No-Cache-Header und eine serverseitige zwischengespeicherte Seite dienen. Also auch Strg + F5   kann eine alte Version der Seite zurückgeben, wenn der Server das ignoriert   No-Cache-Header. (von der Kommentar bis die akzeptierte Antwort ).
  •   

Falls der Server die Anforderung des Browsers ignoriert, den Cache zu löschen (was manchmal passiert), habe ich den schnellsten Weg gefunden: Geben Sie in der Adressleiste die URL der statischen Ressourcen ein und drücken Sie CTRL F5 auf dieser Seite (das ist die CSS-Datei), anstatt auf der Seite, die es importiert. Dies funktioniert 100% der Zeit.

Um es schnell zu machen, benutze Öffne den Link in einem neuen Tab aus den DevTools des Browsers, oder klicke auf den CSS-Link des HTML, das mit Quelltext anzeigen

geöffnet wurde >     
Andrea Ligios 30.01.2015 13:09
quelle
6

Sie sind grundsätzlich mit einem Caching-Problem konfrontiert, bei dem Ihr Browser keine Lust hat, die neue Version vom Server anzufordern und stattdessen die im Cache des internen Browsers zwischengespeicherte verwendet.

Die Verwendung von Developer Tools zum Deaktivieren des Caches funktioniert während der Entwicklung. Wenn Ihr Workflow jedoch darauf basiert, dass Sie häufig online gehen, werden Sie irgendwann nicht mehr kontrollieren können, welche Version Ihres CSS-Codes Ihre Besucher sehen (und Sie kann nicht darauf zählen, dass sie ihre Developer-Tools verwenden, um das Caching zu deaktivieren).

Um zu verhindern, dass so etwas passiert, sollten Sie eine Technik namens "Cache Busting" verwenden, was bedeutet, dass Sie Dinge an Ihre Ressourcen-URLs anhängen, die sich jedes Mal ändern, wenn sich Ihre Ressourcendateien ändern. Im Wesentlichen transformiert sich Ihre CSS-URL von diesem

%Vor%

zu so etwas

%Vor%

Es gibt eine Menge Berichterstattung über Cache-Zerschlagung auf SO, also sollten Sie sich zunächst alle verfügbaren Optionen ansehen, bevor Sie entscheiden, wie Sie mit dem Problem umgehen möchten.

Meine persönliche Lieblingstechnik ist die Kombination von serverseitigem Code mit mod_rewrite , um Cache-Busting zu erreichen. Der Arbeitsablauf ist wie folgt.

1) Der serverseitige Code verwendet DOMDocument , um nach allen Ressourcendateien im generierten HTML-Code zu suchen wie CSS, JavaScript usw. und hängt einen modifizierten Zeitstempel an, der mit filemtime abgerufen wurde.

Beispiel: /css/main.min.css wird zu /css/main.min-1422585377.css im Code, der an den Client (Browser) zurückgegeben wird.

2) Wenn der Browser die Antwort erhält, muss er diese CSS-Anfrage einfach als neue Ressource behandeln, wenn der angehängte Zeitstempel nicht mit dem im Cache übereinstimmt (Ressource mit einem anderen Namen wird immer als neue Anfrage behandelt) ).

3) Browser sendet nun eine Anfrage für /css/main.min-1422585377.css an den Server.

4) Um alle Anfragen an das eine und einzige main.min.css umzuleiten, das tatsächlich auf dem Server existiert, verwenden wir eine einfache Rewrite-Regel wie diese

%Vor%

HINWEIS: Ich bevorzuge es sogar, Zeitstempel in den Dateinamen selbst einzufügen. Deshalb verwende ich statt /css/main.min.css?1422585377 lieber /css/main-1422585377.min.css , weil einige Proxy-Server wie Squid dazu neigen, Abfragezeichenfolgen zu ignorieren und nur behandeln der Dateiname als relevant.

    
brezanac 30.01.2015 13:04
quelle
4

Bitte schließe das Div, das du startest. what-new h3

CSS CODE:

%Vor%     
Jenti Dabhi 30.01.2015 12:36
quelle
2

Das passiert mir die ganze Zeit, wenn ich auf meinem XAMPP-Stack auf meinem Mac auf meiner Website arbeite. Die Lösung besteht darin, die Entwickleroptionen zu aktivieren und im Entwicklermenü "leeren Cache" auszuwählen. Dies zwingt den Browser, die CSS für die Seite zu aktualisieren. Ich bin nicht vertraut mit der Entwicklung auf anderen Plattformen, aber sehen Sie, ob Sie den Cache in Ihrem Browser leeren können.

Überprüfen Sie auch Ihre CSS und stellen Sie sicher, dass Ihre Syntax korrekt ist, insbesondere, dass Sie nicht irgendwo ein "}" weggelassen haben.

    
michael kagan 30.01.2015 12:35
quelle
2

Wenn Ihr Browser die Änderungen in den angehängten CSS-Stylesheets nicht widerspiegelt, versuchen Sie Folgendes:

  1. Klicken Sie mit der rechten Maustaste auf Ihr Dokument im Browserfenster.
  2. Gehen Sie zu Seitenquelle anzeigen.
  3. Suchen Sie in Ihrem Code den Link zu Ihrer angehängten CSS-Datei. Gehe zu deinem Anhang CSS-Datei und sehen, ob es Ihre neuesten Änderungen enthält. Wenn nicht, aktualisieren Ihre CSS-Datei und alle letzten Änderungen werden angezeigt.
  4. Laden Sie Ihr Dokument neu und die Änderungen werden angezeigt. Öffnen Sie die CSS-Datei in Ihrem Browser. Laden Sie Ihre CSS-Datei in Ihrem Browser . Hoffe, das hilft !!
Shashwat Tiwari 16.06.2017 06:41
quelle
0

Bei Django werden 'cleararsessions', gefolgt von 'runserver' alle Einstellungen in der .css-Datei aktualisieren.

Sie sollten auch den Cache Ihres Browsers bereinigen.

    
T.T 02.08.2016 08:31
quelle
0

Hauptsächlich aufgrund von Caching durch Ihren Browser. Löschen Sie entweder den Cache, indem Sie den Verlauf löschen und Cache löschen oder als vorgeschlagen oben drücken Sie einfach Strg + F5 statt nur f5

    
Dhruv Aggarwal 10.07.2017 18:34
quelle
0

Tatsächlich erhält der Browser eine alte CSS-Datei aus dem Browser-Cache. Sie müssen den Cache leeren und dann versuchen. Ich war auch das gleiche Problem ...

    
Noor Khan 03.08.2017 06:17
quelle
0

Nachdem ich viel gelitten habe und alle hier erwähnten Formen gemacht habe.

Ich habe auf meinem CPanel eine Anwendung namens Cachewall gefunden, die ich einfach abstelle und damit mein Problem löse

Dies kann jemandem helfen

    
Daniel Beltrami 03.10.2017 03:46
quelle
0

In meinem Fall war der Fehler, dass ich kein Paket in VS2017 mit dem Namen Bundler & amp; Minifier. Nach der Installation werden alle Änderungen an z. main.min.css und main.css wurden automatisch mit der eigentlichen CSS-Datei übernommen.

    
Honza P. 19.01.2018 13:17
quelle

Tags und Links