Das Durchlaufen aller Elemente auf der Seite wäre trivial (document.getElementsByTagName('*')
).
Das Durchlaufen aller verfügbaren Stile für jedes Element wäre trivial (element.style
).
Das Festlegen zufälliger Werte für einen bestimmten Stil wäre schwieriger.
Sie müssten hart codierte Listen von Stilen und möglichen Werten für jede von ihnen haben, weil die Werte, die eingestellt werden können, so wild variieren. Einige können in verschiedenen Einheiten (px, em,%) stehen. Einige von ihnen haben vordefinierte Schlüsselwörter als mögliche Werte.
Und ein zufälliger Wert ist überhaupt nicht gut, wenn Sie keine Grenzen haben. Eine zufällige Einstellung width
klingt einfach, aber Sie müssen wissen, in welchen Bereichen Sie arbeiten werden. width:5743731px
wird nicht einmal für eine randomisierte Seite sehr nützlich sein.
Und dann haben Sie die Eigenschaften, die externe Ressourcen abrufen können. Ein CSS-Hintergrundbild wird praktisch unmöglich zu randomisieren sein, und Schriften müssten in einer separaten @font-face
Deklaration geladen werden, so dass Sie nur in der Lage sein würden, Schriften, die Sie wissen, geladen sind.
Und dann müssen Sie darüber nachdenken, wie randomisiert Sie sein werden. Werden Sie jeden möglichen Stil auf jedem Element randomisieren? (verrückt, aber hey, das Ganze ist verrückt, also warum nicht) Oder nur ein Stil pro Element?
Vergessen Sie nicht, dass viele Stile in Verbindung miteinander arbeiten. So text-overflow:ellipsis
tut nichts, wenn Sie auch white-space:nowrap
und overflow:hidden
haben. Die Einstellung border-color
ist sinnlos, wenn Sie nicht auch die anderen Rahmenattribute festgelegt haben.
Also ja, ich denke, Ihre erste Aufgabe wäre hier, die Liste der CSS-Stile durchzugehen und herauszufinden, welche davon randomisiert werden könnten und wie die möglichen Zufallswerte für sie aussehen könnten. Das ist das Schwierige. Sobald Sie das haben, schreiben Sie es in Ihr Programm, und der Rest sollte ziemlich einfach sein.
und wie überzeugen Sie den Benutzer, F5 zu drücken, um ohne Cache neu zu laden. Sie müssen wahrscheinlich auch den Namen der CSS-Datei ändern oder ein? v = random_number – Pleun
Nun, ich dachte, dass Sie es mit JavaScript/jQuery randomisieren würden, anstatt tatsächlich die CSS-Dateien zu ändern. Auf diese Weise gibt es viel weniger Risiko, und es ist sowieso eine vollständigere Randomisierung. – aboveyou00
Sie meinen, bestehende Regeln in Ihrer CSS-Datei neu zu verteilen? – Pleun