Stefan: random stylesheets

'nabend Leute,

mein Problem ist folgendes: ich möchte meine Seite (zur Zeit leider noch nicht online) nur über ausgelagerte Stylesheets layouten, und zwar mit mehreren Stylesheets, von denen dann beim Besuch der Seite jeweils einer Ramdom-mäßig ausgewählt wird. Das heisst, dass die Seite bei jedem Besuch ein anderes Layout hat.

Meine Frage ist nun: funktioniert sowas nur mit Server-Side-Includes, und wenn ja, wie implementiere ich die im <head>-Bereich?

Ich hoffe ihr könnt mir helfen.
Vielen Dank im vorraus fürs Grübeln.

tschööööööö Stefan

PS:
Die Idee hab ich überigens von http://www.neuralust.com, aber dort stand im Quellcode einfach bei jedem Seitenaufruf ein anderer Stylesheet, also nichts woraus ich schlau würde.

  1. Hallo Stefan,

    mein Problem ist folgendes: ich möchte meine Seite (zur Zeit leider noch nicht online) nur über ausgelagerte Stylesheets layouten, und zwar mit mehreren Stylesheets, von denen dann beim Besuch der Seite jeweils einer Ramdom-mäßig ausgewählt wird. Das heisst, dass die Seite bei jedem Besuch ein anderes Layout hat.

    Die Idee hab ich überigens von http://www.neuralust.com, aber dort stand im Quellcode einfach bei jedem Seitenaufruf ein anderer Stylesheet, also nichts woraus ich schlau würde.

    Schau Dir mal jeweils den Quellcode der oben genannte Seite an. Der ist fast immer identisch. Das einzige was sich etwas ändert ist

    <style type="text/css" media="screen">
    <!--
    @import "homestyles4.css";
    -->
    </style>

    (siehe dazu http://selfhtml.teamone.de/css/formate/einbinden.htm)

    Da steht dann je nach dem welche Seite aufgerufen wird entweder

    @import "homestyles4.css"; oder
    @import "nifkinlust.css"; etc.

    Mit diesen verschiedenen Stylesheet Dateien wird die entsprechende Formatierung geladen.

    Und so könnte es funktionieren:
    Serverseitig wird per Zufallsprinzip eine Stylesheet Datei verlinkt. Das ganze könnte auch Clientseitig z.B. mit JavaScript gemacht werden. Ich halte die serverseitige Lösung jedoch für eleganter.

    Unter http://selfhtml.teamone.de/cgiperl/funktionen/berechnungen.htm#rand  wird ein Beispiel mit Lottozahlen gegeben. Änhlich wird sicherlich auch dieses Script funktionieren. Wenn es 5 verschiedene CSS-Dateien gibt wird eine Zufallszahl zwischen eins und fünf ermittelt. Diese entscheidet dann über die zu importierende CSS Datei.

    Ich hoffe das hilft Dir weiter.

    Grüße
    Andreas

    1. Hallo Andreas,

      danke für deine Antwort. Ich denke ich werds erstmal 'unelegant' mit JavaScript machen (also in etwa Daniels Lösung). Damit kenn ich mich besser aus, als mit Server-Seitigen Aktivitäten. Damit versuch ichs dann später mal, wenn ich die ganzen Style-Sheets beieinander habe. Dann werd ich auch auf deine Tipps zurückgreifen.

      MFG

      Stefan

  2. 'nabend Leute,

    Hallo

    mein Problem ist folgendes: ich möchte meine Seite (zur Zeit leider noch nicht online) nur über ausgelagerte Stylesheets layouten, und zwar mit mehreren Stylesheets, von denen dann beim Besuch der Seite jeweils einer Ramdom-mäßig ausgewählt wird. Das heisst, dass die Seite bei jedem Besuch ein anderes Layout hat.

    Sagt Dir der Begriff "Corporate Identity" etwas?

    tschööööööö Stefan

    Und Tschüss

    1. Hallo

      hALLO

      Sagt Dir der Begriff "Corporate Identity" etwas?

      Nur EINE(!) Identität? Und dass in solch postmodernen Zeiten ? :)

      Ne, mal ernsthaft. Ich hab vor das ganze für ein Blog/LOg (halt son Tagebuch-Dingsbums) zu benutzen, so dass das Schmökern etwas reizvoller wird. Ausserdem ists einfach ein (für mich) spannendes Experiment. Ich will ja keine Versicherungen oder Waschmittel ("Persil bleibt Persil") verhökern.
      Die Sache ist aber natürlich eher etwas für Leute mit Spass an Effekten.

      Und Tschüss

      machs gut
      Stefan

  3. per Java-Skript geht es so:
    <html>
    <head>
    <title></title>
    <link id="CSS" rel="stylesheet" type="text/css" href="style.css">
    <script>
    <!--
    function RandomCSS() {
    var zufall = Math.random();

    if (zufall <= 0.3) {document.getElementById("CSS").href = "style_1.css";
    }

    else if (zufall > 0.3 && zufall <= 0.6) {document.getElementById("CSS").href = "style_2.css";
    }

    else if (zufall > 0.6 && zufall <= 1) {document.getElementById("CSS").href = "style_3.css";
    }
    }
    //-->
    </script>
    </head>
    <body text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000" onLoad=RandomCSS()>
    Hallo Welt
    </body>
    </html>

    geht natürlich nur für Browser die das getelementbyid Tag beherrschen beim N 4.7 & < also nicht. N6 kann es aber.