当前位置: 首页 > news >正文

网站都变成灰色了,它是怎么实现的?

大家好,我是二哥呀。

想必大家都感受到了,很多网站、APP 在昨天都变灰了。

先来感受一下变灰后的效果。

这是 CSDN 的

这是 B站的

这种灰色的效果怎么实现的呢?如何做到图片、文字、按钮都变灰的效果呢?

方案 1,换一套灰色的 UI,那显然成本太大了,用脚指头想一想就知道不太可能。

方案 2,用魔法!

不好意思,还真被你猜中了!在网页端按下 F12,打开开发者模式,用元素选择器定位到 HTML 标签上,在「样式」的面板中往下翻,就可以看到这样一段代码。

我把它复制过来大家看一下。

-webkit-filter: grayscale(100%);
-moz-filter: grayscale(100%);
-ms-filter: grayscale(100%);
-o-filter: grayscale(100%);
filter: grayscale(100%);
filter: progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);

打开二哥的网站《Java 程序员进阶之路》,定位到 HTML 标签,此时可以看到页面是正常的颜色。

然后把之前的代码添加到 HTML 上,然后就可以看到色系变成灰色了。

那这段代码是什么意思呢?

直接把 filter grayscale 复制到搜索引擎里看一下。

当参数为 0 的时候,颜色是正常的。

然后依次试一下 60%:

100%:

MDN 是怎么解释 grayscale() 函数呢?

The grayscale() CSS function converts the input image to grayscale. Its result is a .

大致的意思就是,grayscale 是一个 CSS 函数,可以把图像转成灰色,参数是个百分比,结果返回一个 filter 函数。

The CSS data type represents a graphical effect that can change the appearance of an input image. It is used in the filter and backdrop-filter properties.

filter 函数可以用来改变图像的显示效果,用于 CSS 的 filter 属性。 除了 grayscale 函数,可选项还有以下这些:

可以看到,目前的主流浏览器版本都支持 grayscale 函数,比如说 PC 端的 Chrome、edge、Firefox、Opera、Safari 等等,除了 IE。


没有什么使我停留——除了目的,纵然岸旁有玫瑰、有绿荫、有宁静的港湾,我是不系之舟。

本文已收录到 GitHub 上星标 4.2k+ 的开源专栏《Java 程序员进阶之路》,据说每一个优秀的 Java 程序员都喜欢她,风趣幽默、通俗易懂。内容包括 Java 基础、Java 并发编程、Java 虚拟机、Java 企业级开发(Git、Nginx、Maven、Intellij IDEA、Spring、Spring Boot、Redis、MySql 等等)、Java 面试等核心知识点。学 Java,就认准 Java 程序员进阶之路😄。

Github 仓库:https://github.com/itwanger/toBeBetterJavaer

GitCode 仓库也同步了一份:https://gitcode.net/three-musketeers/tobebetterjavaer

还用 GitCode Pages 生成了一个Java 程序员进阶之路网站,大家可以戳链接体验一下,没想到 CSDN还有这样的宝藏!!!!!!!!

CSDN 太强了!

star 了这个仓库就等于你拥有了成为了一名优秀 Java 工程师的潜力。

相关文章:

  • JavaWeb中文件上传与下载
  • 信奥赛一本通题解目录(未做完)
  • YOLO系列算法改进方法 | 目录一览表
  • 粒子群算法和鲸鱼算法的比较(Matlab代码实现)
  • HTML5期末大作业:HTM+CSS+JS仿安徽开放大学官网(web前端网页制作课作业)
  • C语言:动态内存分配(3)
  • 基于纳芯微产品的尾灯方案介绍
  • 设置程序以管理员权限运行无效问题的排查过程分享
  • MySQL密码不要用0开头!!!
  • Java项目:ssm高校党员管理系统
  • RabbitMQ--延迟队列--使用/原理
  • Linux基础 - Web服务基础
  • 高新技术企业认定八大条件、八大领域、四项指标
  • 异常练习题(Java)
  • 那些惊艳一时的 CSS 属性
  • “大数据应用场景”之隔壁老王(连载四)
  • android图片蒙层
  • Effective Java 笔记(一)
  • es6--symbol
  • Git 使用集
  • leetcode98. Validate Binary Search Tree
  • linux安装openssl、swoole等扩展的具体步骤
  • Linux学习笔记6-使用fdisk进行磁盘管理
  • MySQL Access denied for user 'root'@'localhost' 解决方法
  • ng6--错误信息小结(持续更新)
  • php中curl和soap方式请求服务超时问题
  • Python学习之路16-使用API
  • quasar-framework cnodejs社区
  • spring cloud gateway 源码解析(4)跨域问题处理
  • STAR法则
  • vue从创建到完整的饿了么(18)购物车详细信息的展示与删除
  • 百度贴吧爬虫node+vue baidu_tieba_crawler
  • 警报:线上事故之CountDownLatch的威力
  • 开年巨制!千人千面回放技术让你“看到”Flutter用户侧问题
  • 力扣(LeetCode)357
  • 前端性能优化——回流与重绘
  • 使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上
  • 异常机制详解
  • 与 ConTeXt MkIV 官方文档的接驳
  • 浅谈sql中的in与not in,exists与not exists的区别
  • ​一帧图像的Android之旅 :应用的首个绘制请求
  • #pragam once 和 #ifndef 预编译头
  • #常见电池型号介绍 常见电池尺寸是多少【详解】
  • #我与Java虚拟机的故事#连载06:收获颇多的经典之作
  • $.type 怎么精确判断对象类型的 --(源码学习2)
  • (Redis使用系列) Springboot 在redis中使用BloomFilter布隆过滤器机制 六
  • (十一)JAVA springboot ssm b2b2c多用户商城系统源码:服务网关Zuul高级篇
  • (原創) 如何將struct塞進vector? (C/C++) (STL)
  • (转贴)用VML开发工作流设计器 UCML.NET工作流管理系统
  • .NET Core 成都线下面基会拉开序幕
  • .NET Core工程编译事件$(TargetDir)变量为空引发的思考
  • .NET Micro Framework初体验
  • .NET中统一的存储过程调用方法(收藏)
  • /var/lib/dpkg/lock 锁定问题
  • /var/spool/postfix/maildrop 下有大量文件
  • 直通转发(cut-through)和存储转发(store-and-forward)的区别
  • 中断向量类型表
  • nano如何撤销 nano为什么没有撤销
  • MySQL数据类型详解
  • nano使用技巧大全
  • 轻量级框架与重量级框架的区别
  • 有符号数 无符号数【超清晰总结】
  • 原码,反码,补码【正反转换】
  • Android xml资源文件中@、@android:type、@*、?、@+的含义和区别
  • IEEE浮点数 换算方法【超易懂详解】