欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

使用css将网页变成黑白色

程序员文章站 2023-12-31 14:16:04
其实将整个网页全局变色,无非就是三种,css直接设置,添加svg滤镜,通过js遍历所有标签更改颜色,于是 1、css 直接编辑样式,然后在需要应用的地方设置class 1 .gray { 2 -webkit-filter: grayscale(100%); 3 -moz-filter: graysc ......

其实将整个网页全局变色,无非就是三种,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,让我们一起缅怀战疫中逝去的英雄,愿凛冬消散 春暖花开后 再无国殇

原文地址

上一篇:

下一篇: