Add printable support to CSS
Summary:
Fixes T2146. This is a really simple approach, you just do:
!print .rule { whatever: blah; }
And it transforms it into:
.printable .rule { whatever: blah; } @media print { .rule { whatever: blah; } }
So we end up with these rules twice, but they should compress well and we shouldn't need that many of them, and this fix is way way simpler than all the nonsense I discussed in T2146.
Test Plan:
- Added a unit test.
- Added a simple rule to throw away the menubar when printing.
- Checked the latter with /?__print__=1.
Reviewers: chad, btrahan
Reviewed By: chad
CC: chad, aran
Maniphest Tasks: T2146
Differential Revision: https://secure.phabricator.com/D7363