css 网站置灰功能

news2024/10/6 8:23:28

文章目录

  • filter 属性
  • backdrop-filter 属性
  • mix-blend-mode 属性
  • css 变量
  • 低版本浏览器方案

filter 属性

html {
    filter: gray; /* 兼容 IE6-9 的滤镜 */
    filter: grayscale(.95); // 对图片进行灰度转换
    -webkit-filter: grayscale(.95);
}

backdrop-filter 属性

  • 为一个元素后面区域添加图形效果(如模糊或颜色偏移)。因为它适用于元素背后的所有元素,为了看到效果,必须使元素或其背景至少部分透明。
<div class="bg">
    <div>Normal</div>
    <div class="g-filter">filter</div>
    <div class="g-backdrop-filter">backdrop-filter</div>
</div>

.bg {
    background: url(image.png);
    
    & > div {
        width: 300px;
        height: 200px;
        background: rgba(255, 255, 255, .7);
    }
    .g-filter {
        filter: blur(6px);
    }
    .g-backdrop-filter {
        backdrop-filter: blur(6px);
    }
}

在这里插入图片描述
实现置灰

  • 通过 backdrop-filter 可以控制置灰区域,比如只置灰首屏等
  • 必须添加 pointer-events: none; 不影响鼠标事件的交互
html {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: scroll;
}
html::before {
    content: "";
    position: absolute;
    inset: 0;
    backdrop-filter: grayscale(95%);
    z-index: 10;
}

mix-blend-mode 属性

html {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: scroll;
    background: #fff; // 关键
}

html::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 1); // 关键
    mix-blend-mode: color; // 关键
    pointer-events: none; // 关键
    z-index: 10;
}

css 变量

  • 通过 css 变量设置灰色主题

低版本浏览器方案

  • 这种方法不会真正地将页面元素的颜色转换为灰度,而是通过覆盖半透明背景来模拟灰度效果。
<!DOCTYPE html>
<html>
<head>
<style>
  .grayscale::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.8);
    z-index: 9999;
    pointer-events: none; /* 禁用鼠标事件,使得用户可以与页面元素互动 */
  }
</style>
</head>
<body class="grayscale">
  <!-- 页面内容 -->
</body>
</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/751926.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

“AI+教育”:景联文科技高质量教育GPT题库助力教学创新

去年年底&#xff0c;OpenAI推出ChatGPT&#xff0c;掀起AI热潮&#xff0c;教育作为“AI”应用落地的关键场景&#xff0c;再次受到广泛关注。 “AI教育”的快速发展&#xff0c;是受到技术、需求和政策三重因素共同驱动的结果。 在技术方面&#xff0c;随着人工智能技术的不断…

Spring MVC 系列2 -- 创建连接、获取与输出

上个系列总结了关于Spring MVC 项目的一些基础 ,Spring MVC就是在Spring Boot的基础上引入了Spring Web依赖.接下来就进行总结一下Spring MVC项目的创建,连接,获取参数,输出响应. 目录 1. Spring MVC 创建和连接 1.1 创建Spring MVC 项目实现与浏览器互通 1.2 RequestMapping…

电子锁语音芯片方案,低功耗声音提示ic,WT588F02B-8S

随着科技的不断发展&#xff0c;电子锁已成为现代社会中&#xff0c;安全性和便利性并存的必备设备。如何为电子锁行业增添智能化、人性化的功能已成为行业内的热门话题。 在这个迅速发展的市场中&#xff0c;深圳唯创知音推出了一款语音交互方案——WT588F02B-8S 低功耗声音提…

超市商品信息管理系统设计与实现(论文+源码)_kaic

摘 要 目前运用广泛的互联网相关技术普遍进行了推广以及应用&#xff0c;基于互联网技术实现的也超市管理系统软件的应用大大提高了现代超市的管理水平和经济效益&#xff0c;取得了前所未有的进步&#xff0c;在人们的互联网生活中占有相当重要的地位。在21世纪伴随计算机网络…

【miniQMT实盘量化1】什么是miniQMT?

前言 本篇是这个系列的开篇&#xff0c;也是扫盲文章&#xff0c;介绍什么是miniQMT&#xff0c;以及它的优势。 从交易接口说起 总所周知&#xff0c;量化大概分四个部分&#xff1a;数据、回测、模拟、实盘。每个部分都很重要&#xff0c;但最关键的&#xff0c;还是实盘&…

智慧水利水电未来发展趋势

随着人口的增加和经济的发展&#xff0c;水资源日益紧缺&#xff0c;水利水电工程的发展前景广阔。在可持续发展、数字化、智能化、高效节能将有极致的发展趋势。 在未来&#xff0c;水利水电工程将更加注重可持续发展&#xff0c;即既满足人类的水电需求&#xff0c;又保护生…

使用claude 2的文档分析功能

复制一段较长的文本内容&#xff0c;比如json文件。 https://zh.annas-archive.org/db/aarecord/md5:ba19176859126615bba9f35110f7492e.json 打开claude 2网页。 在输入框中粘贴内容&#xff0c;会自动生成一个past.txt图标。 输入要问的问题&#xff0c;按回车。 结果如下&a…

让全彩LED显示屏更高清的5个方法

随着社会的发展&#xff0c;人们对LED显示屏画面的显示效果要求越来越高&#xff0c;高清、超高清显示逐渐成为市场主流。高清视频画面给人带来的震撼效果是很强烈的&#xff0c;其所显示的内容相对传统的视频画面更具吸引力&#xff0c;更能满足人们对高品质视听的美好追求。 …

Picgo使用Gitee平台搭建图床照片无法显示

1.问题 使用Hexo框架搭建个人博客&#xff0c;发现博客中图片无法显示 2.问题分析 查看图床&#xff0c;发现相册中图片无法显示 查阅多方网站&#xff0c;发现Gitee与Picgo配合使用时&#xff0c;图片文件不能大于1M。 这主要因为Gitee查阅超过1M的文件需要登录的权限 。而…

Object.fromEntries()将键值对列表转换为一个对象

Object.fromEntries() 静态方法将键值对列表转换为一个对象 将 Array 转换成对象&#xff1a; let arr [["name","张三"],["age","40"]] let obj Object.fromEntries(arr); console.log(obj);将 Map 转换成对象&#xff1a; let …

如何添加域名解析

1、域名解析&#xff08;CNAME记录&#xff09; 登录所在平台的DNS解析管理 me:域名控制面板 (dnsmsn.com) 第一条的解析记录为 第二条www的解析记录为 为什么要添加两条解析记录&#xff1f; 一条是记录&#xff0c;一条是www记录&#xff0c;这分别代表两个最常用的域名…

基于知识图谱的电影知识问答系统:训练TF-IDF 向量算法和朴素贝叶斯分类器、在 Neo4j 中查询

项目设计集合&#xff08;人工智能方向&#xff09;&#xff1a;助力新人快速实战掌握技能、自主完成项目设计升级&#xff0c;提升自身的硬实力&#xff08;不仅限NLP、知识图谱、计算机视觉等领域&#xff09;&#xff1a;汇总有意义的项目设计集合&#xff0c;助力新人快速实…

SU-03T语音模块的使用

目录 语音模块配置 1. 进入语音模块官网 http://www.smartpi.cn/#/&#xff0c;配置词条和识别后的串口输出指令 2.记录下相关指令以及上图的识别词条&#xff0c;方便固件烧写后的调试 3.打开固件烧写工具 4. 进行固件烧写&#xff0c;烧录完成后先和电脑串口调试助手配合…

mp4视频太大怎么压缩?简单视频压缩方法分享

视频压缩是一种常见的操作&#xff0c;它可以起到很多有用的效果。通过压缩视频&#xff0c;我们可以减小视频文件的大小&#xff0c;从而节省存储空间和传输带宽。此外&#xff0c;压缩后的视频可以更快地加载和播放&#xff0c;提高观看体验&#xff0c;特别是对于网络传输较…

【数据分享】1929-2022年全球站点的逐月最大持续风速数据(Shp\Excel\12000个站点)

气象数据是在各项研究中都经常使用的数据&#xff0c;气象指标包括气温、风速、降水、能见度等指标&#xff0c;说到气象数据&#xff0c;最详细的气象数据是具体到气象监测站点的数据&#xff01; 对于具体到监测站点的气象数据&#xff0c;之前我们分享过1929-2022年全球气象…

【数据结构】线性表的定义及基本操作

文章目录 前言线性表的定义线性表的基本操作基本操作其他常用操作 总结 前言 数据结构的三要素是逻辑结构、数据的运算、存储结构&#xff08;物理结构&#xff09;&#xff0c;存储结构不同&#xff0c;运算的实现方式也不同。 本次文章包括线性表的定义和基本操作&#xff0…

WEB阶段_CSSJS篇(附代码笔记)

&#xff08;一&#xff09;、使用DIVCSS布局首页 1、HTML的块标记 <!DOCTYPE html> <html><head><meta charset"UTF-8"><title></title></head><body><div>div1</div><div>div2</div><…

如何用Three.js + Blender打造一个web 3D展览馆

作者&#xff1a;vivo 互联网前端团队- Wei Xing 运营活动新玩法层出不穷&#xff0c;web 3D炙手可热&#xff0c;本文将一步步带大家了解如何利用Three.js和Blender来打造一个沉浸式web 3D展览馆。 一、前言 3D展览馆是什么&#xff0c;先来预览下效果&#xff1a; 看起来像…

Maven -- <dependencyManagement>管理子项目版本

背景&#xff1a; 一个旧项目&#xff0c;想使用mybatis-plus&#xff0c;想着这是比较基础的依赖包&#xff0c;就在父项目中添加对应依赖&#xff0c;如下: <!-- 依赖声明 --><dependencyManagement><dependencies><!-- mybatis-plus 依赖配置 -->&l…

第四章:C++模板初阶

系列文章目录 文章目录 系列文章目录前言泛型编程函数模板函数模板概念 函数模板格式函数模板的原理函数模板的实例化模板参数的匹配原则 类模板类模板的定义格式类模板的实例化 总结 前言 C通过泛型编程来实现函数模板和类模板。 泛型编程 如何实现一个通用的交换函数呢&…