Die selbe Seite mit anderen CSS-Dateien anzeigen je nach Thema
dirgele
- css
Hallo, ich habe eine Internetseite, welche ich in zwei Themenbereiche mit eigenen HTML-Seiten aufgeteilt habe. Für jeden Themenbereich habe ich eine eigene CSS-Datei welche ich jeweils im <HEAD>-Bereich mit <link...> einbinde um die Themen graphisch voneinander unterscheiden zu können.
Nun habe ich einige HTML-Seiten, welche ich mit gleichem Inhalt in beiden Themenbereichen anbieten möchte aber jeweils mit der für das Thema gültigen eingebundenen CSS-Datei.
Ich könnte nun diese Seiten für jeden Themenbereich einzeln mit gleichem Inhalt - also doppelt anbieten mit jeweils der anderen eingebundenen CSS-Datei. Aber das ist doch unnötige Arbeit, da sie sich doch nur insgesammt im Kopf-Bereich um eine Zeile unterscheiden. Ausserdem müsste ich wenn ich die Seiten neu gestalte immer beide Seiten neu gestalten.
Gibt es da eine einfachere Lösung z.B. mit Javascript? PHP? Währe Dankbar für eine Hilfe.
Dirgele
Hi,
Hallo, ich habe eine Internetseite, welche ich in zwei Themenbereiche mit eigenen HTML-Seiten aufgeteilt habe. Für jeden Themenbereich habe ich eine eigene CSS-Datei welche ich jeweils im <HEAD>-Bereich mit <link...> einbinde um die Themen graphisch voneinander unterscheiden zu können.
Nun habe ich einige HTML-Seiten, welche ich mit gleichem Inhalt in beiden Themenbereichen anbieten möchte aber jeweils mit der für das Thema gültigen eingebundenen CSS-Datei.
Dann muss das aktuelle "Thema" also irgendwie als Parameter übergeben werden, je nachdem, von welcher Stelle aus man das Dokument aufruft.
Gibt es da eine einfachere Lösung z.B. mit Javascript? PHP?
Für die Themen spezifische Regeln im Stylesheet einfach per Nachfahrenselektor von der ID oder Klasse von BODY abhängig machen, und dann in den Dokumenten die jeweilige ID/Klasse vergeben.
Bei den Dokumenten, die "beides" sein können, dann die ID/Klasse abhängig vom Parameter dynamisch setzen bzw. verändern.
MfG ChrisB
Hallo,
Aber das ist doch unnötige Arbeit, da sie sich doch nur insgesammt im Kopf-Bereich um eine Zeile unterscheiden.
Was ist daran Arbeit, eine Datei zu kopieren und in der Kopie eine Zeile zu ändern?
Ausserdem müsste ich wenn ich die Seiten neu gestalte immer beide Seiten neu gestalten.
Verstehe ich nicht. Wie gesagt: nach dem neu gestalten einer Seite diese kopieren und die andere CSS-Datei im Header eintragen – fertig.
Gibt es da eine einfachere Lösung z.B. mit Javascript? PHP?
Klar, geht mit beidem relativ einfach, wenn man weiß, wie.
JavaScript hat aber nicht jeder aktiviert. Da würde ich zu PHP raten.
Es gibt hier übrigens eine separate Rubik für PHP.
Gruß, Don P