Also ein paar Tage später. Ich muss sagen, das ganze Thema Dark-Mode ist verflixt kompliziert und eigentlich alles was man macht falsch, da jeder das irgendwie anders umsetzt.
Da gibt es die schöne neue Media-Query "prefers-color-scheme" mit den möglichen Werten "light", "dark" oder eben "no-preference". Hört sich gut an, ist aber vollkommen sinnlos. Keine Ahnung, was sich so manche Entwickler dabei denken.
Die Browser:
Samsung-Browser. Der macht sein Theme dunkel, wenn Android auf dark steht. Er macht aber auch die Webseiten selbst dunkel. Daher die ganze Frage oben überhaupt. Hier kann man mit der Media-Query wunderbar gegensteuern. Der Browser macht das also am besten.
Chrome-Mobile. Der zweitbeste, aber weit abgeschlagen. Stellt man dort den Nacht-Modus ein, dann sendet der automatisch als prefers-color-scheme den Hinweis "dark". Das stimmt aber nicht, denn er ändert in dem Fall erst mal nur sein eigenes Layout, Tabs, Menü etc, aber nicht die Webseite die bleibt weiß. Wenn man nun also hier auf den Hinweis dark reagiert und die Farben ändert, dann ist das völlig falsch. Allerdings hat Chrome-Mobile auch den Menüpunkt "Webseite abdunkeln". Dann passt das ganze wieder, denn dann ist er wie Samsung. Nur, man kann nicht erkennen, ob diese zusätzliche Option gesetzt ist. Mit oder ohne sendet er "dark".
Chromium Edge Desktop. Aus der Desktop-Serie der beste Browser, aber auch "schlecht". Zumindest kennt er in den Einstellungen nur zwei Optionen: Hell und dunkel. Default bei der Installation ist "hell", er sendet also "light". Das dürfte bei 95% aller Anwender passen. Stellt man ihn auf "dunkel" um, dann hat er das gleiche Problem. Er macht zwar sein Layout dunkel, aber nicht die Webseite, sendet dann aber auch "dark". Also auch hier, falsche Farben. Dennoch nutzt er immer seine eigenen Einstellungen und nicht die von Windows.
Firefox. Naja, mein Lieblingsbrowser, aber eigentlich unbrauchbar, wenn man nicht manuell eingreift. Der hat wie der Edge die Optionen hell und dunkel, aber per Default eingestellt ist "automatisch". Und hier werden dann nicht die Werte vom Browser benutzt, sondern die von Windows. Und wenn das auf dunkel steht, also nur Windows selbst, dann sendet Firefox immer "dark", auch wenn die Seite selbst weiß ist. Richtig macht er es nur, wenn man ihn manuell auf "hell" umstellt.
Chrome Desktop: Völlig unbrauchbar in der Sache. Im Grunde wie der Firefox, identisch, doch er hat noch nicht mal eine Option, von hell auf dunkel oder umgekehrt zu schalten. Er sendet immer die Windowseinstellungen. Wenn man umschalten will, manuell, dann muss man erst mal zusätzliche AddOns installieren!
Fazit: Bei keinem Browser, außer Samsung, kann man wirklich erkennen, ob das gesendete "dark" nun deswegen ist, weil die Webseite selbst dunkel dargestellt wird oder nur, weil das Browser-Layout, Tabs etc, dunkel sind. Somit ist die Query "prefers-color-scheme" völlig nutzlos!