Globale Variablen in CSS-Stylesheets
-
08-07-2019 - |
Frage
ich eine absolute URL in meinem Sheet hava. http: //localhost/images/myimage.jpg .
Ich habe auch eine Config-Klasse mit dem folgenden Konstante
const SITE_ROOT = 'http://localhost/images'
Auf PHP-Seiten i schreiben
config::SITE_ROOT . "/myimage.jpg"
so dass, wenn die Website i zu dem Produktionsserver bewegen kann ich an einer zentralen Stelle des Site-Stamm verändern.
Gibt es eine Möglichkeit, dies in meinem Stylesheet zu tun, ohne es auf der Seite zu setzen? Relative URLs sind keine Option, weil ich mod umschreibt und relative URLs bin mit nicht funktionieren.
Lösung
Sie können Ihre SITE_ROOT
konstant in die CSS-Dateien schreiben, indem sie mit den PHP-Parser. Fügen Sie diese auf .htaccess
:
AddHandler application/x-httpd-php .css
Dann einbetten PHP in die CSS-Dateien, wie Sie in jeder .php
Datei tun würden.
Andere Tipps
Es gibt keine Möglichkeit, dies mit CSS zu tun. Wenn Sie so etwas wie dies tun wollen könnte man ihm eine PHP-Datei machen und Variablen, die Art und Weise verwendet werden.
Aber könnte nicht Sie verwenden nur absolute URLs?
background-image: url(/images/myimage.jpg);
Wird auf einem Server arbeiten, ist nicht relativ, und die Dateien von der Wurzel finden.