可以去除 任意网站 的黑白样式、灰色样式、灰度滤镜
🔥这可能是 全网最好用 的网站去黑白脚本
除了针对某些网站进行特殊优化的脚本外,此脚本不打算针对个别网站进行特殊优化,有志者可以在此脚本的基础上二创,详见 常见问题
🔥超 短 的代码,超 快 的速度
仅仅 1000 字节 的代码大小,运行起来如闪电一样快
🔥准确击杀 ,只去除指定元素的灰度滤镜,避免误伤
例如:一个元素既有高斯模糊,又有灰度滤镜,我们 只会去除其中的灰度滤镜,而不影响高斯模糊 。
详见网页末尾的对比图片
原理
当 <body>
加载时向 <head>
元素添加以下 <style>
元素,避免闪屏
<style>
* {
filter: grayscale(0) !important;
-webkit-filter: grayscale(0) !important;
-moz-filter: grayscale(0) !important;
-ms-filter: grayscale(0) !important;
-o-filter: grayscale(0) !important;
filter: progid:DXImageTransform.Microsoft.BasicImage(grayscale=0) !important;
}
</style>
当样式表加载完毕时,移除 <style>
并遍历所有元素,检测是否使用灰度滤镜,若使用,则在元素中的行内样式添加 grayscale(0)
等 css 样式
详见 代码
常见问题
Q:这个脚本有什么过人之处吗?
A:此脚本仅去除 包含灰度滤镜的元素的灰度滤镜 ,不会影响其他滤镜,和其他元素。例如:一个元素既有高斯模糊,又有灰度滤镜,我们 只会去除其中的灰度滤镜,而不影响高斯模糊 。
Q:为何百度首页的 logo 和搜索按钮还是灰色?
A:因为百度 logo 并不是简单的加了一个灰度滤镜,而是图片本身就换成黑白了,bilibili 首页的轮播图也是如此。而搜索按钮是把按钮颜色改为 #222
,所以本身就是黑白的了。
解决办法只有一个个的单独适配,然而我没有这么多时间。
标签