Bestimmte Zeile in HTML per JavaScript ändern?
Hey,
wie ihr wahrscheinlich wisst, hat man am Anfang eines jeden HTML-Dokuments
den Head-Teil. Ich möchte gerne per JavaScript die mit Rot markierte Zeile ändern. Also ich möchte die Style.css per Klick auf einen Link (<a>, darin ein <i>) ändern.
Bitte schreibt einfach das Script rein, mit welchem ich dann die Zeile ganz einfach ändern kann!
PS: Ist für Darkmode, da mir das als "einfachste" Lösung erscheint.
Grüße
4 Antworten
Gib dem <link> Element, sowie deinem A-Element jeweils eine ID
<link id="stylesheet" ...>
<a href="#" id="switch">Darkmode</a>
Jetzt kannst du per JavaScript das href-Attribut verändern:
document.getElementById("switch").addEventListener("click", function() {
document.getElementById("stylesheet").setAttribute("href", "darkmode.css");
});
Ja, aber ich wollte einen Darkmode verwenden - dafür gibt es viele Lösungen online, jedoch war ich zu der Zeit noch zu blöd, um das Tutorial zu verstehen...
Ich würde es hiermit versuchen. (ist einfacher für dich und für den Benutzer)
https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-color-scheme
Viel Erfolg :)
Das mag für dich als einfache Lösung erscheinen, ist aber nicht sicher umsetzbar. Meine Empfehlung wäre, dass Du in der Style-Datei bereits alle Styleangaben hinterlegst und per Klick lediglich dem body eine Klasse gibst die den Style umschaltet. So musst Du auch nicht mehrere Style-Dateien parallel bearbeiten, was ein Nachteil deiner Lösung wäre.
Darf ich auch den Grund erfahren um es nachvollziehen zu können?
Ich verstehe die Frage nicht so. Du verlinkts eine Style CSS Datei und willst sie mit einer <a><li></li></a> ändern aber was für ein Sinn hat das?
Im Nachhinein, nach etwas mehr als 25 Tagen, finde ich diese Frage von mir einfach nur schwachsinnig und irreführend, aber danke für deine Antwort, hilft wahrscheinlich einigen hier!