網站都變灰了,幾行代碼可以實現

来源:https://www.cnblogs.com/xiezhr/archive/2023/05/18/17344807.html
-Advertisement-
Play Games

前言 這兩天,我們經常逛的好多網站、app首頁都變灰了,原因大家應該都知道了 網站變灰 ①B站 ②愛奇藝 ③ 騰訊視頻 ④ csdn ⑤百度 怎麼實現的呢? 難道這些網站開發商在網站開發的時候都準備一套灰色主題的UI麽? 好奇心的驅使下,開始瘋狂的詢問度娘,果真還是找到了這麼一個網站。 ①官方文檔地 ...


前言

這兩天,我們經常逛的好多網站、app首頁都變灰了,原因大家應該都知道了

網站變灰

①B站
這是B站
②愛奇藝
這是愛奇藝
③ 騰訊視頻
這是騰訊視頻
④ csdn
這是csdn
⑤百度
這是百度

怎麼實現的呢?

難道這些網站開發商在網站開發的時候都準備一套灰色主題的UI麽?
好奇心的驅使下,開始瘋狂的詢問度娘,果真還是找到了這麼一個網站。

①官方文檔地址
https://developer.mozilla.org/zh-CN/docs/Web/CSS/filter

網站這個頁面對CSS屬性 filter 的用法做了詳細介紹,這裡截取幾個重要部分出來,對filter屬性感興趣的小伙伴可以在以上官網查看詳細內容
② 簡介

CSS屬性 filter 將模糊或顏色偏移等圖形效果應用於元素。濾鏡通常用於調整圖像、背景和邊框的渲染。

③ 語法格式

/* URL to SVG filter */
filter: url("filters.svg#filter-id");

/* <filter-function> values */
filter: blur(5px);
filter: brightness(0.4);
filter: contrast(200%);
filter: drop-shadow(16px 16px 20px blue);
filter: grayscale(50%);
filter: hue-rotate(90deg);
filter: invert(75%);
filter: opacity(25%);
filter: saturate(30%);
filter: sepia(60%);

/* Multiple filters */
filter: contrast(175%) brightness(3%);

/* Use no filter */
filter: none;

/* Global values */
filter: inherit;
filter: initial;
filter: revert;
filter: unset;

④ 樣例
在這裡插入圖片描述

來看看網站有沒有用CSS filter

我們打開B站首頁,然後f12 呼出開發者工具,發現確實有如下樣式

html.gray {
    filter: grayscale(85%) saturate(80%);
    -webkit-filter: grayscale(85%) saturate(80%);
    -moz-filter: grayscale(85%) saturate(80%);
    -ms-filter: grayscale(85%) saturate(80%);
    -o-filter: grayscale(85%) saturate(80%);
    filter: url(data:image/svg+xml;utf8,<svg 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>#grayscale);
    filter: progid:DXImageTransform.Microsoft.BasicImage(grayscale=.85);
    -webkit-filter: grayscale(.85) saturate(.8);
}

在這裡插入圖片描述

找到了樣式,那麼接下來我們拿個人小破站【www.xiezhrspace.cn】試試效果

沒添加CSS樣式的樣子
在這裡插入圖片描述

添加CSS樣式之後
在這裡插入圖片描述
好家伙,還真變成全灰的了

CSS樣式相容性

個人試了谷歌瀏覽器、火狐瀏覽器都是可以通過以上CSS樣式實現網頁變灰的,IE親測不行。
下麵是官方給出的各個瀏覽器相容情況
相容性

原以為很難實現的功能,原來只需要幾行代碼就實現了。

本期內容就到這了,我們下期再見(●'◡'●)


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1.JDK1.8下載並安裝 1.1直接點擊下一步 1.2更改安裝地址 1.3安裝成功 1.4環境配置 1.5查看是否安裝並配置成功,cmd-》java -version 2.IDEA下載並安裝 https://www.exception.site/essay/how-to-free-use-inte ...
  • 本文首發於公眾號:Hunter後端 原文鏈接:es筆記一之es安裝與介紹 首先介紹一下 es,全名為 Elasticsearch,它定義上不是一種資料庫,是一種搜索引擎。 我們可以把海量數據都放到 es 里然後提供搜索操作,但是 MySQL 也同樣可以提供搜索,為什麼要用 es 呢? 一個是因為它搜 ...
  • 最近接手了一個WPF項目,資料庫使用的MySQL,為了簡化生產環境部署流程,果斷選擇遷移到SQLite,由於原項目未使用ORM框架,導致很多SQL語法也得改。 SQLite基礎語法請參考該頁面 1.依賴包的更改 有兩個Nuget包可選: Microsoft.Data.Sqlite.Core / Sy ...
  • [MySql 如何分析性能] Sql性能分析 sql語句: "show global status like "Comlxx____";" 結果: + + + | Variable_name | Value | + + + | Com_binlog | 0 | | Com_commit | 7 | ...
  • 1、數據準備 1.1、springboot導包 springboot版本:2.7.10 點擊查看代碼 <!--mongodb的包--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-s ...
  • 演講內容 摘要:GaussDB(for MySQL)是華為自研雲原生資料庫,具有高性能,高擴展,高可靠的特點,完全相容MySQL協議,自研架構和友好的生態相容性,可以同時滿足資料庫管理員、應用開發者、CTO的運維、使用和業務發展需求,本次主要介紹GaussDB(for MySQL)在雲原生技術方向上 ...
  • 1 理論知識 1.1 分庫分表是否必要 分庫分表確實可以解決單表數據量大這個問題,但是並非首選。因為分庫分表至少引入了三個必須解決的突出問題。 第一是分庫分表方案本身具有的複雜性。第二是本地事務失效問題,原本在同一個資料庫中可以保證強一致性業務邏輯,分庫之後事務失效。第三是難以聚合查詢問題,因為分庫 ...
  • Q1問題描述 1、 訪問貼紙等素材的時候提示“網路異常,請重試”怎麼辦? 2、 使用AI能力時,提示“errorCode:20124 errorMsg:Method not Allowed”? 解決方案 請做以下檢查: 1、 在代碼中檢查鑒權信息是否已設置。如果未設置,可以通過api_key或Acc ...
一周排行
    -Advertisement-
    Play Games
  • 1. 說明 /* Performs operations on System.String instances that contain file or directory path information. These operations are performed in a cross-pla ...
  • 視頻地址:【WebApi+Vue3從0到1搭建《許可權管理系統》系列視頻:搭建JWT系統鑒權-嗶哩嗶哩】 https://b23.tv/R6cOcDO qq群:801913255 一、在appsettings.json中設置鑒權屬性 /*jwt鑒權*/ "JwtSetting": { "Issuer" ...
  • 引言 集成測試可在包含應用支持基礎結構(如資料庫、文件系統和網路)的級別上確保應用組件功能正常。 ASP.NET Core 通過將單元測試框架與測試 Web 主機和記憶體中測試伺服器結合使用來支持集成測試。 簡介 集成測試與單元測試相比,能夠在更廣泛的級別上評估應用的組件,確認多個組件一起工作以生成預 ...
  • 在.NET Emit編程中,我們探討了運算操作指令的重要性和應用。這些指令包括各種數學運算、位操作和比較操作,能夠在動態生成的代碼中實現對數據的處理和操作。通過這些指令,開發人員可以靈活地進行算術運算、邏輯運算和比較操作,從而實現各種複雜的演算法和邏輯......本篇之後,將進入第七部分:實戰項目 ...
  • 前言 多表頭表格是一個常見的業務需求,然而WPF中卻沒有預設實現這個功能,得益於WPF強大的控制項模板設計,我們可以通過修改控制項模板的方式自己實現它。 一、需求分析 下圖為一個典型的統計表格,統計1-12月的數據。 此時我們有一個需求,需要將月份按季度劃分,以便能夠直觀地看到季度統計數據,以下為該需求 ...
  • 如何將 ASP.NET Core MVC 項目的視圖分離到另一個項目 在當下這個年代 SPA 已是主流,人們早已忘記了 MVC 以及 Razor 的故事。但是在某些場景下 SSR 還是有意想不到效果。比如某些靜態頁面,比如追求首屏載入速度的時候。最近在項目中回歸傳統效果還是不錯。 有的時候我們希望將 ...
  • System.AggregateException: 發生一個或多個錯誤。 > Microsoft.WebTools.Shared.Exceptions.WebToolsException: 生成失敗。檢查輸出視窗瞭解更多詳細信息。 內部異常堆棧跟蹤的結尾 > (內部異常 #0) Microsoft ...
  • 引言 在上一章節我們實戰了在Asp.Net Core中的項目實戰,這一章節講解一下如何測試Asp.Net Core的中間件。 TestServer 還記得我們在集成測試中提供的TestServer嗎? TestServer 是由 Microsoft.AspNetCore.TestHost 包提供的。 ...
  • 在發現結果為真的WHEN子句時,CASE表達式的真假值判斷會終止,剩餘的WHEN子句會被忽略: CASE WHEN col_1 IN ('a', 'b') THEN '第一' WHEN col_1 IN ('a') THEN '第二' ELSE '其他' END 註意: 統一各分支返回的數據類型. ...
  • 在C#編程世界中,語法的精妙之處往往體現在那些看似微小卻極具影響力的符號與結構之中。其中,“_ =” 這一組合突然出現還真不知道什麼意思。本文將深入剖析“_ =” 的含義、工作原理及其在實際編程中的廣泛應用,揭示其作為C#語法奇兵的重要角色。 一、下劃線 _:神秘的棄元符號 下劃線 _ 在C#中並非 ...