Heim  >  Artikel  >  Web-Frontend  >  Wie referenziere ich Bilder in CSS-Dateien in Symfony 2 richtig?

Wie referenziere ich Bilder in CSS-Dateien in Symfony 2 richtig?

Susan Sarandon
Susan SarandonOriginal
2024-11-13 06:10:02682Durchsuche

How to Properly Reference Images in CSS Files in Symfony 2?

Pfad der Assets in CSS-Dateien in Symfony 2

Diese Diskussion konzentriert sich darauf, eine Lösung für die Referenzierung von Bildern in CSS-Dateien zu finden und dabei das Gewünschte beizubehalten Verzeichnisstruktur in Symfony 2. Ziel ist es, das Problem der Pfade in CSS-Dateien zu beheben und sicherzustellen, dass Bilder zugänglich sind, ohne dass die Originalquelldateien der Öffentlichkeit zugänglich gemacht werden.

Vorherige Lösungen

Erste Versuche beinhalteten die Festcodierung absoluter Pfade in der CSS-Datei, wodurch die Anwendung mit Unterverzeichnissen inkompatibel wurde. Assetic mit filter="cssrewrite" wurde ebenfalls verwendet, führte jedoch zu einer falschen Pfadgenerierung.

Aktuelle (bevorzugte) Lösung

Die bevorzugte Lösung beinhaltet das Speichern von CSS-Dateien in das Verzeichnis „Resources/assets/css“ und Bilder im Verzeichnis „Resources/public/images“. Durch relative Referenzierung in der CSS-Datei, z. B. „url(“../images/myimage.png“), wird beim Kompilieren der richtige Pfad generiert. Dieser Ansatz funktioniert sowohl in Entwicklungs- als auch in Produktionsumgebungen einwandfrei.

Diskussion und Analyse

Der Autor führte umfangreiche Tests mit verschiedenen Kombinationen aus @Notation, relativer Notation, CSS-Rewrite, Bildhintergrund im Vergleich zu src und Parsen mit und ohne Assetic. Die Ergebnisse zeigten, dass nur bestimmte Optionen das gewünschte Verhalten erbrachten.

Lösungserklärung

Der erfolgreiche Ansatz erforderte:

  1. Speichern von Bildern im „public“-Verzeichnis.
  2. CSS aus dem „public“-Verzeichnis mit Assetic erstellen.
  3. Mit direktem Tags mit src aus dem Verzeichnis „public/images“.

Abschließende Gedanken und Überlegungen

Für zusätzliche Sicherheit wird empfohlen, Original-CSS-Dateien in zu speichern das Verzeichnis „assets“ und lassen Sie sie von Ihrem Bereitstellungsprozess vor der Kompilierung in das Verzeichnis „public“ kopieren. Alternativ ist es weiterhin möglich, Originale im „public“-Verzeichnis für die Verwendung mit --symlink während der Entwicklung zu speichern, vorausgesetzt, Sie erstellen ein Skript zum Entfernen dieser Dateien nach der Kompilierung.

Das obige ist der detaillierte Inhalt vonWie referenziere ich Bilder in CSS-Dateien in Symfony 2 richtig?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn