Guest User

Untitled

a guest
Mar 23rd, 2018
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.83 KB | None | 0 0
  1. Array.from(document.styleSheets).forEach((ss) => {
  2. const toDelete = [];
  3. const toReplace = new Map();
  4.  
  5. for (let i = 0; i < ss.rules.length; ++i) {
  6. const rule = ss.rules[i];
  7. if (!(rule instanceof CSSMediaRule)) {
  8. continue;
  9. }
  10.  
  11. if (rule.conditionText.includes('print')) {
  12. toReplace.set(i, '* {}');
  13. continue;
  14. }
  15. if (rule.conditionText.includes('screen')) {
  16. let t = rule.cssText;
  17. const start = t.indexOf('{');
  18. let prefix = t.substr(0, start);
  19. prefix = prefix.replace(/(only |)screen/g, '(min-width: 1px)');
  20. t = prefix + t.substr(start);
  21. toReplace.set(i, t);
  22. continue;
  23. }
  24. }
  25.  
  26. console.info('replacing', toReplace.size, 'rules to remove print-specific styles');
  27. toReplace.forEach((text, index) => {
  28. ss.deleteRule(index);
  29. ss.insertRule(text, index);
  30. });
  31. });
Add Comment
Please, Sign In to add comment