【3分钟技能get】网站色调灰度 & JSON.parse建议

碎片化时间如何利用?几分钟get常用技能点!

这次分享两个小知识点:CSS3的filter滤镜以及JSON.parse使用小建议。

1:实现网站的灰度

4月4日,沉痛悼念逝去的同胞,各大网站基本都下掉了娱乐板块,并且网站色调调整为灰色。
【3分钟技能get】网站色调灰度 & JSON.parse建议_第1张图片
怎么实现的呢?全部图片以及文本背景色设置为灰色?这样的话成本是巨大的。其实只需要加上一行css即可:

filter: grayscale(100%);

ps:可以找个网站看下效果,给html元素加上上述代码即可。

至于兼容性,对于不支持filter的浏览器,有两种解决方案:
1)使用SVG(可缩放矢量图形
举例:在SVG中声明滤镜:


 //标签用来定义SVG滤镜;id属性可为滤镜定义一个唯一的名称
   
    
   
  

如何使用:(利用了url()属性)

img{
    //用来把元素链接到滤镜。当链接滤镜id锚点时,必须使用#字符
    filter:url('#grayscale');
    //当然也可以使用DataUrl将其内联到url
}

Tips:当然也可以使用DataUrl将svg内联到url中

img{
    filter:url("data:image/svg+xml;utf8,#grayscale")
}

2)JS实现
这里有个实现案例,有需要自行研究:https://j11y.io/demos/graysca...

fiter常用属性:

filter: none | blur() | brightness() | contrast() | drop-shadow() | grayscale() | hue-rotate() | invert() | opacity() | saturate() | sepia() | url();

这里举个例子:filter:blur(15px)的使用效果:
【3分钟技能get】网站色调灰度 & JSON.parse建议_第2张图片

2.JSON反序列化建议

有些童鞋可能习惯使用下面的写法:

//假设flag获得的是被序列化后的值
let flag = 'true'; 
JSON.parse(flag) ? 1 :2;

虽然上例的影响微乎其微,但好的编程习惯从小处做起,推荐下面写法:

flag === 'true' ? 1 : 2;

时间就像海绵,挤挤总会有的;【3分钟技能get系列】丰富你的碎片化时间~

更多技术分享,欢迎【扫码关注】~
【3分钟技能get】网站色调灰度 & JSON.parse建议_第3张图片

你可能感兴趣的:(javascript,前端,css,css3,优化)