CSS Nachladen

- css
0 Ingo Turski0 Cheatah
Hi,
ich will innerhalb des Bodys ein CSS nachladen. Es geht darum, das ein PHP-Script also Modul in eine bestehende Seite eingebunden werden kann. Dadurch hat das Script natürlich keine Möglichkeit, in den Header zu schreiben.
Beim stöbern im Archiv bin ich jetzt auf das hier gekommen.
Meine Frage ist nur, geht das auch ohne Javascript? Ich hab bisher nix gefunden, deshalb vermute ich, das ist nicht möglich. Ich brauch auch keinen hack, der irgendeinen Fehler ausnutzt, das soll in jedem Fall Standardkonform und somit halbwegs Zukunftsfägih sein ;)
thx4hlp
MfG
Manuel
Hi,
Ich brauch auch keinen hack, der irgendeinen Fehler ausnutzt, das soll in jedem Fall Standardkonform und somit halbwegs Zukunftsfägih sein ;)
standardkonform, wenn auch unschön, wäre lediglich eine Direktformatierung über inline-Styles.
Eine ganz andere Möglichkeit wäre, innerhalb einer bereits im head eingebundenen CSS-Datei eine weitere über @import zu referenzieren und diese dann dynamisch vom Script ausgeben zu lassen, wobei über den HTTP-Header ein Cachen vermieden werden müßte.
freundliche Grüße
Ingo
Hi Ingo,
standardkonform, wenn auch unschön, wäre lediglich eine Direktformatierung über inline-Styles.
Scheidet aus, da ich ja deshalb ein externes Stylesheet nutze, weil der HTML-Code per PHP erzeugt wird und ich dem Anwender den Eingriff in den Quelltext oft, wegen unwissenheit, nicht zumuten kann.
Eine ganz andere Möglichkeit wäre, innerhalb einer bereits im head eingebundenen CSS-Datei eine weitere über @import zu referenzieren und diese dann dynamisch vom Script ausgeben zu lassen, wobei über den HTTP-Header ein Cachen vermieden werden müßte.
Scheidet auch aus, da ich keinen Einfluss auf den Header oder eingebundene Stylesheets habe. Und wenn der Anwender sowieso eine Datei ändern muss (heser oder Styles), kann es auch gleich das Stylesheet selber einbinden.
Sorry, aber diese Lösungen sind für meine Anwedungen nicht sinnvoll, trotzdem danke :)
Hi,
ich will innerhalb des Bodys ein CSS nachladen.
CSS-Code kann nur im <head> referenziert werden. Innerhalb des <body> hast Du lediglich das style-Attribut zur Verfügung, in dem zum gegenwärtigen Stand der Dinge kein Nachladen weiterer Ressourcen möglich ist.
Es geht darum, das ein PHP-Script also Modul in eine bestehende Seite eingebunden werden kann.
Wenn auf Serverseite kein nachträgliches Verändern der Daten des <head>-Bereiches möglich ist, sind Deine Optionen ohne Abhängigkeit zu optionalen clientseitigen Techniken somit erschöpft.
Meine Frage ist nur, geht das auch ohne Javascript?
Es ist möglich, dass auch andere clientseitige Techniken wie z.B. JScript, ActiveX oder Flash Ähnliches leisten können. Dieser Weg führt aber vermutlich in die falsche Richtung. Ergo:
Ich hab bisher nix gefunden, deshalb vermute ich, das ist nicht möglich.
Korrekt.
Ich brauch auch keinen hack, der irgendeinen Fehler ausnutzt, das soll in jedem Fall Standardkonform und somit halbwegs Zukunftsfägih sein ;)
Was anderes würdest Du hier hoffentlich auch nicht bekommen ;-) Ich empfehle, bei dem Mechanismus der Seitengenerierung anzusetzen. Betrachte ggf. auch eventuelle bereits eingebundene CSS-Ressourcen; in diesen ist ebenfalls eine Referenzierung möglich. Auch hierfür wird die Seitengenerierung verändert werden müssen, zudem sollte Dir bewusst sein, dass die Gefahr, die Vorteile der Einbindung per Referenz zu verlieren, immens ist.
Cheatah
Hi,
CSS-Code kann nur im <head> referenziert werden. Innerhalb des <body> hast Du lediglich das style-Attribut zur Verfügung, in dem zum gegenwärtigen Stand der Dinge kein Nachladen weiterer Ressourcen möglich ist.
Ja, auf das bin ich auch gekommen, also kann ich doch ab und zu richtig lesen. Heute ist ein guter Tag :D
Wenn auf Serverseite kein nachträgliches Verändern der Daten des <head>-Bereiches möglich ist,
Möglich ist es im Normalfall schon. Nur ist die Zielgruppe des öfteren nicht in der Lage, eine solche Änderung vorzunehmen.
Es ist möglich, dass auch andere clientseitige Techniken wie z.B. JScript, ActiveX oder Flash Ähnliches leisten können. Dieser Weg führt aber vermutlich in die falsche Richtung. Ergo:
Ok, das ist mir klar, aber ich will ja möglichst Browserkompatibel sein und ohne Plugins auskommen. Und für meine Scripts wäre Flash sowieso völlig fehl am Platz, mal abgesehen davon, das ich selbst nicht mit Flash arbeite.
Was anderes würdest Du hier hoffentlich auch nicht bekommen ;-) Ich empfehle, bei dem Mechanismus der Seitengenerierung anzusetzen.
Naja, solange das Script als Standalone läuft, wird ja die komplette Seite erzeugt, also auch inkl. Stylesheetdateieinbindung (was für ein Wort) im Head. Es geht mir eben nur darum, das einige PHPKIT (~würg~) o.ä. einsetzen und diese Module dann eben zusätzlich einsetzen wollen.
Und ich will den Anwendern (wie gesagt, sehr oft null Ahnung von der Materie) einfach das Ändern des Heads zu ersparen. Ich hab jetzt erstmal das JavaScript integriert. Sollte es bei den Anwendern zu Problemen kommen, werd ich mir noch was einfallen lassen.
Die Lösung ist nicht optimal, aber, so wie ich das sehe, die einzige Möglichkeit, die ich habe.
Danke für die Hilfe
Gruss
Manuel