Heim >Web-Frontend >CSS-Tutorial >Warum werden meine Bilder in MVC4-Style-Bundles nicht geladen?
MVC4 StyleBundle löst Bilder nicht auf
Problem:
MVC4-Projekte enthalten ein Bündelungssystem, das minimiert und kombiniert CSS-Dateien, um die Leistung zu verbessern. Wenn Sie jedoch StyleBundles verwenden, um Bildverweise aus externen Quellen wie der jQuery-Benutzeroberfläche einzuschließen, kann es sein, dass der Browser die Bilder nicht lädt, was zu 404-Fehlern führt.
Lösung:
Laut einer Diskussion zur MVC4-CSS-Bündelung stehen zwei Ansätze zur Lösung dieses Problems zur Verfügung Problem:
Bundle-Pfade mit Quellpfaden verwenden
Erstellen Sie ein StyleBundle mit demselben Pfad wie die Quell-CSS-Dateien, wie zum Beispiel:
bundles.Add(new StyleBundle("~/Content/css/jquery-ui/bundle") .Include("~/Content/css/jquery-ui/*.css"));
Durch die Definition des Bundle-Pfads als Quellordner bleiben die relativen Bildpfade innerhalb der CSS-Dateien erhalten erkannt.
Verwenden von CssRewriteUrlTransformation
Alternativ können Sie eine CssRewriteUrlTransformation auf das StyleBundle anwenden. Diese Transformation schreibt relative URL-Verweise auf CSS-Dateien in absolute Pfade innerhalb des Bundles um und stellt so sicher, dass Bilder korrekt geladen werden.
bundles.Add(new StyleBundle("~/Content/css/jquery-ui/bundle") .Include("~/Content/css/jquery-ui/*.css", new CssRewriteUrlTransform()));
Beachten Sie, dass das Umschreiben in absolute Pfade innerhalb eines virtuellen Verzeichnisses zu Problemen führen kann. Bitte überprüfen Sie, ob dieser Ansatz in Ihrer spezifischen Umgebung wie erwartet funktioniert.
Das obige ist der detaillierte Inhalt vonWarum werden meine Bilder in MVC4-Style-Bundles nicht geladen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!