Bookmarklet idea: apply -webkit-print-color-adjust: exact; to things you click so you can print with correct background colors when needed.
— Chris Coyier (@chriscoyier) March 26, 2013
I like that idea. Here is a quick and dirty Bookmarklet that applies it to every element on a page (Webkit only):
Print Background Colors
javascript:(function() {
var c = '*{-webkit-print-color-adjust:exact;}',
s = document.createElement('style');
s.type = 'text\/css';
if (s.styleSheet) {
s.styleSheet.cssText = c;
} else {
s.appendChild(document.createTextNode(c));
}
document.getElementsByTagName('head')[0].appendChild(s);
})();
And the minified version:
javascript:(function(){var c='*{-webkit-print-color-adjust:exact;}',s=document.createElement('style');s.type='text\/css';if(s.styleSheet){s.styleSheet.cssText=c;}else{s.appendChild(document.createTextNode(c));}document.getElementsByTagName('head')[0].appendChild(s);})();

