其实将整个网页全局变色,无非就是三种,css直接设置,添加svg滤镜,通过js遍历所有标签更改颜色,于是
1、css
直接编辑样式,然后在需要应用的地方设置class
1 .gray { 2 -webkit-filter: grayscale(100%); 3 -moz-filter: grayscale(100%); 4 -ms-filter: grayscale(100%); 5 -o-filter: grayscale(100%); 6 filter: grayscale(100%); 7 filter: gray; 8 }
2、svg
先编写svg文件
<svg version="1.1" xmlns="http://www.w3.org/2000/svg"> <filter id="grayscale"> <feColorMatrix type="matrix" values="0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0"/> </filter> </svg>
css调用
1 filter: url(gray.svg#grayscale);
3、js遍历
直接插入代码就好啦,能白嫖是不可能手写的(ps:用rgba和!important的无法改变,其他未实验)
1 <script src="http://james.padolsey.com/demos/grayscale/grayscale.js"></script>
js源不太好,会导致网页加载过慢,可手动下载到本地grayscale.js(点开之后F12,切换到Network标签,刷新网页会出现一个文件,右键save as)
然后用js或者jq调用
1 /*js调用*/ 2 grayscale(document.getElementById("thisImage")); 3 /*jq调用*/ 4 grayscale($("#thisImage"));
大家可能没有注意到这篇博客是2020-04-04,让我们一起缅怀战疫中逝去的英雄,愿凛冬消散 春暖花开后 再无国殇
原文地址https://blog.csdn.net/qq_15096707/article/details/47130877
来源:https://www.cnblogs.com/M-fengye/p/12631381.html