In terms of the most balanced in speed, consistency in page rendering and good default settings, is there a clear winner?
Personally I've been using both Dark Reader and Midnight Lizard on different devices and I can't say I noticed much of a difference in terms of performance, what I did notice is that Dark Reader seems to have better defaults, but many complain that it slows down page loading a ton, I haven't heard the same about Midnight Lizard, but maybe that is by virtue that it has way way fewer installations and therefore fewer people talking about it.
Do you know if I've missed one and there is a totally different extension that does even better than both?
Install Stylus > Write New Style > Import and then copy/paste this in. Keep in mind that I removed a lot of my specific tweaks for sites I use, because that’s PII. You will encounter many more weird issues on random sites than you do with DarkReader, but if you’re used to working with userCSS you’ll probably have no issues fixing those. The way this essentially works is by inverting your entire browser screen, then rotating the hue so the colours of website themes aren’t weird, then it inverts images back to normal. I’m sure there is a way to do this without inverting the images in the first place, but it would involve one hell of a lot more code than this. I wrote this originally in about 3 minutes.
html, iframe { filter: invert(1) hue-rotate(180deg); } img, div[background-image], div[style*="background-image"], video { filter: invert(1) hue-rotate(180deg); } @-moz-document domain("lemmy.ml"), domain("ultimate-guitar.com"), domain("open.spotify.com"), domain("discord.com"), domain("localhost") { /* Exemptions for sites that already have a dark mode */ html, iframe { filter: none; } img, div[background-image], div[style*="background-image"], video { filter: none; } } @-moz-document domain("youtube.com") { #movie_player { filter: invert(1) hue-rotate(180deg); } video { filter: none; } } @-moz-document url-prefix("https://www.google.com/maps") { div[aria-label="Street View"] canvas, div[aria-label="Photo"] canvas, button[data-photo-index] { filter: invert(1) hue-rotate(180deg); } div[role="img"] { filter: none; } }
Thanks I hate CSS