Live data from Hacker News

Show HN: HN dark mode in 2 lines of code

news.ycombinator.com

1–10 of 11 posts

Show HN: HN dark mode in 2 lines of code

#1
Paste this in the developer tools console of your browser

document.documentElement.style.filter = "invert()"

document.documentElement.style.background = '#fff'

Edit: you can also create a bookmark with the code below in the URL field

javascript: (() => { document.documentElement.style.filter = "invert()";document.documentElement.style.background = '#fff' })();

Then just click on the bookmark for instant dark mode

Re: Show HN: HN dark mode in 2 lines of code

#2
Nice, or as a tampermonkey user-script:

// ==UserScript==

// @name HN dark mode

// @namespace http://tampermonkey.net/

// @version 0.1

// @description HN dark mode

// @author You

// @match https://news.ycombinator.com/\\*

// @icon https://www.google.com /s2/favicons?sz=64&domain=ycombinator.com

// @grant none

// ==/UserScript==

(function() {

    'use strict';

    document.documentElement.style.filter = "invert()";

    document.documentElement.style.background = '#fff';
})();

Re: Show HN: HN dark mode in 2 lines of code

#6
Great idea, using it now! You can also apply styles with uBlockOrigin, for example the equivalent uBO rule is:

    news.ycombinator.com##html:style(filter:invert(100%); background = #fff;)
Setting topcolor to 0099ff (blue) in the profile settings returns it to its glorious orange state after color inversion.

Re: Show HN: HN dark mode in 2 lines of code

#7
post #6

Great idea, using it now! You can also apply styles with uBlockOrigin, for example the equivalent uBO rule is: news.ycombinator.com##html:style(filter:invert(100%); background = #fff;) Setting topcolor to 0099ff (blue) in the profile settings returns it to its glorious orange state after color inversion.

Thanks!

Took me a moment to realize how to apply this (here for others benefit):

1. Right click > Block element

2. Click anywhere

3. Change the rule to:

    ##html:style(filter:invert(100%); background = #fff;)
4. Click preview and create if happy

Re: Show HN: HN dark mode in 2 lines of code

#8
This works on HN and most other sites:

javascript:(function() { var tag = document.createElement('style'); tag.type = 'text/css'; document.getElementsByTagName('head')[0].appendChild(tag); tag[ (typeof document.body.style.WebkitAppearance=='string') ? 'innerText' : 'innerHTML'] = '* { background-color: white !important; color: #444 !important; } html { filter: invert(100%) grayscale(100%); }'; })();

Post reply on HN