Farben per CSS / Auf Seite per Klick wechseln
Ben
- css
Hallo,
ich arbeite an einem kleinen Joomla Projekt.
Dort habe ich das Layout in einer CSS Datei definiert.
Nun möchte ich aber einige Farb und Bildelemente (die in dem template.css drinstehen derzeit) in eine weitere css auslagern = farbe.css. Nun soll der User auf der Seite mit einem klick auf einen Link (rot grün gelbt usw.) die Farbe selbst wählen können!
Leider weiss ich derzeit keinen Rat wie ich das machen soll. Ich habe zum Test alle elemente des Layouts die durch den Klick des users geändert werden sollen in eine weitere css datei ausgelagert, hier nun green.css. Wenn ich nun beide css dateien angebe wird die 2te (die green.css) aber ignoriert.
Kann mir jemand sagen wie man das macht?
Code zum Aufruf:
<link href="<?php echo $mosConfig_live_site;?>css/template_css.css" rel="stylesheet" type="text/css" />
<link href="<?php echo $mosConfig_live_site;?>css/green.css" rel="stylesheet" type="text/css" />
Variable:
$mosConfig_live_site = 'http://localhost/joomla2';
1. Erstmal muss es klappen die Styles aus dem grees css einzubinden
2. Danach muss ja ein wert (nach dem klick des users) an die index.php übergeben werden mit der farbe (=name der css datei!)
Danke für Hilfe!
Ben
Lieber Ben,
so einfach mit CSS geht das nicht.
Irgendwie musst Du ja dem Server klar machen, welche der Farb-Schemata er nun in die Seite einbinden soll. Nicht alle auf einmal, denn dann "überschreibt" ein Schema das andere.
Du wirst um die Benutzung von Cookies nicht herumkommen, wenn Du das Farbschema auf den Folgeseiten beibehalten lassen willst. Dann überträgt der Browser das zuletzt ausgesuchte Schema per Cookie an den Server, der dann entsprechend grün.css, himmel_lila_blass_blau.css oder brutzel_braun.css in die auszuliefernden Dokumente einbindet.
Für diese Kommunikation zwischen Browser und Server brauchst Du Kenntnisse in PHP, denn Du wirst an bestehendem Joomla!-Code herumdoktern müssen.
Ob das alles wirklich sein muss, steht natürlich auf einem anderen Blatt...
Liebe Grüße aus Ellwangen,
Felix Riesterer.