Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 国产99久久精品,欧美亚洲黄色,欧美精品免费在线

          整合營銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          如何用一行代碼實(shí)現(xiàn)網(wǎng)頁變灰效果?

          天是 2020 年 4 月 4 日,星期六,清明節(jié)。

          我們的國家經(jīng)歷了非常慘痛的時(shí)刻,很多英雄在救助他人的路上倒下,更有很多烈士英雄保衛(wèi)人民的安危遇難,今天全國下降半旗,北京時(shí)間 10 點(diǎn)全國默哀三分鐘,來致敬英雄們。同時(shí)今天一切公共娛樂活動(dòng)也都會(huì)停止,包括直播、綜藝、影視、游戲等等。

          我在這里也向全國抗擊新冠肺炎疫情斗爭犧牲的烈士和逝世的同胞表達(dá)深切的哀悼,向所有抗戰(zhàn)在疫情前線的工作和醫(yī)護(hù)人員致敬。我們每一個(gè)人的平安面前,都是英雄的人墻。

          網(wǎng)站變灰

          今天大家可以看到很多很多網(wǎng)站包括主頁和內(nèi)容也都已經(jīng)變成了灰色,比如百度、B 站、愛奇藝、CSDN 等等。

          CSDN

          愛奇藝

          百度

          大家可以看到全站的內(nèi)容都變成灰色了,包括按鈕、圖片等等。這時(shí)候我們可能會(huì)好奇這是怎么做到的呢?

          有人會(huì)以為所有的內(nèi)容都統(tǒng)一換了一個(gè) CSS 樣式,圖片也全換成灰色的了,按鈕等樣式也統(tǒng)一換成了灰色樣式。但你想想這個(gè)成本也太高了,而且萬一某個(gè)控件忘記加灰色樣式了豈不是太突兀了。

          其實(shí),解決方案很簡單,只需要幾行代碼就能搞定了。

          實(shí)現(xiàn)

          我們選擇一個(gè)網(wǎng)站,比如 B 站吧,打開瀏覽器開發(fā)者工具。

          審查一下網(wǎng)頁的源代碼,我們可以發(fā)現(xiàn)在 html 的這個(gè)地方多了一個(gè)疑似的 class,叫做 gray,gray 中文即灰色。

          變灰效果

          其 CSS 內(nèi)容為:

          html.gray {    
            -webkit-filter: grayscale(.95);
          }

          我們將其取消,就能發(fā)現(xiàn)網(wǎng)站的顏色就能重新還原回來了。

          還原效果

          果然是這個(gè)樣式在起作用,而且是全局的效果,因?yàn)樗亲饔迷诹?html 這個(gè)節(jié)點(diǎn)之上的。

          另外看看 CSDN,它也是用的這個(gè) CSS 樣式,其內(nèi)容為:

          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);
          }

          這個(gè)實(shí)現(xiàn)看起來兼容性會(huì)更好一些。

          因此我們可以確定,通過一個(gè)全局的 CSS 樣式就能將整個(gè)網(wǎng)站變成灰色效果。

          分析

          那么這里我們就來詳細(xì)了解一下這究竟是一個(gè)什么樣的 CSS 樣式。

          這個(gè)樣式名叫做 filter,搜下 MDN 的官方介紹,其鏈接為:https://developer.mozilla.org/zh-CN/docs/Web/CSS/filter。

          官方介紹內(nèi)容如下:

          filter CSS 屬性將模糊或顏色偏移等圖形效果應(yīng)用于元素。濾鏡通常用于調(diào)整圖像,背景和邊框的渲染。

          CSS 標(biāo)準(zhǔn)里包含了一些已實(shí)現(xiàn)預(yù)定義效果的函數(shù)。你也可以參考一個(gè) SVG 濾鏡,通過一個(gè) URL 鏈接到 SVG 濾鏡元素 (SVG filter element[1])。

          其實(shí)就是一個(gè)濾鏡的意思。

          官方有一個(gè) Demo,可以看下效果,如圖所示。

          Demo

          比如這里通過 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%);
          /* Global values */
          filter: inherit;
          filter: initial;
          filter: unset;

          各個(gè)用法介紹大家可以參考官方的文檔說明:https://developer.mozilla.org/zh-CN/docs/Web/CSS/filter

          比如這里如果我們可以使用 blur 設(shè)置高斯模糊,用法如下:

          filter: blur(radius)

          給圖像設(shè)置高斯模糊。radius 一值設(shè)定高斯函數(shù)的標(biāo)準(zhǔn)差,或者是屏幕上以多少像素融在一起,所以值越大越模糊;如果沒有設(shè)定值,則默認(rèn)是 0;這個(gè)參數(shù)可設(shè)置絕對像素值,但不接受百分比值。

          可以達(dá)成這樣的效果:

          效果

          再說回剛才的灰色圖像,這里其實(shí)就是設(shè)置了 grayscale,其用法如下:

          filter: grayscale(percent)

          將圖像轉(zhuǎn)換為灰度圖像。值定義轉(zhuǎn)換的比例。percent 值為 100% 則完全轉(zhuǎn)為灰度圖像,值為 0% 圖像無變化。值在 0% 到 100% 之間,則是效果的線性乘子。若未設(shè)置,值默認(rèn)是 0。另外除了傳遞百分比,還可以傳遞浮點(diǎn)數(shù),效果是一樣的。

          如:

          filter: grayscale(1)filter: grayscale(100%)

          都可以將節(jié)點(diǎn)轉(zhuǎn)化為 100% 的灰度模式。

          所以一切到這里就清楚了,如果我們想要把全站變成灰色,再考慮到各瀏覽器兼容寫法,可以參考下 CSDN 的寫法:

          .gray {
            -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);
          }

          這樣想要變灰的節(jié)點(diǎn)只需要加上 gray 這個(gè) class 就好了,比如加到 html 節(jié)點(diǎn)上就可以全站變灰了。

          最后呢,看一下瀏覽器對 filter 這個(gè)樣式的兼容性怎樣,如圖所示:

          兼容性

          這里我們看到,這里除了 IE,其他的 PC、手機(jī)端的瀏覽器都支持了,F(xiàn)irefox 的 PC、安卓端還單獨(dú)對 SVG 圖像加了支持,可以放心使用。

          總結(jié)

          本篇文章簡單介紹了一下今天觀察到的網(wǎng)站變灰的實(shí)現(xiàn),也學(xué)習(xí)了 filter 的更詳細(xì)的用法,希望有幫助。

          References

          [1] SVG filter element: https://developer.mozilla.org/en-US/docs/Web/SVG/Element/filter

          :整個(gè)網(wǎng)頁變成灰色的代碼是什么?

          答:使這個(gè)網(wǎng)頁的顏色變成灰色的最簡單的方法,就是在當(dāng)前頁面的css里面。添加下面的代碼,并且讓他在任意的瀏覽器里面正確的執(zhí)行,

          html{
              -webkit-filter:grayscale(100%);
              -moz-filter:grayscale(100%);
              -ms-filter:grayscale(100%);
              -o-filter:grayscale(100%);
              filter:grayscale(100%);
              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=1)
          }

          上面的代碼就是最規(guī)范的代碼,把他加入到當(dāng)前頁面的css里面即可,本站在2020年4月4日的清明節(jié),就把上面的代碼添加到了css里面,全站開啟了頁面灰色,并且持續(xù)3天,來悼念抗擊新冠肺炎疫情斗爭犧牲烈士和逝世同胞。


          發(fā)生重大哀悼事件時(shí)候,需要緊急將網(wǎng)站變灰以示哀悼,在此蟲蟲給大家總結(jié)了幾種方法,通過簡單修改一下站點(diǎn)樣式即可實(shí)現(xiàn)。

          修改源碼

          另外主要方便快捷的方法是使用CSS樣式的grayscale()方法。

          grayscale() : 對圖片進(jìn)行灰度轉(zhuǎn)換,grayscale是 <filter-function> 的子屬性,當(dāng)100%參數(shù)時(shí)候的效果如下:

          最簡單地把頁面的<html>開始標(biāo)簽中間之間加:

          style="-webkit-filter: grayscale(100%);"

          或者修改站點(diǎn)CSS樣式

          html {-webkit-filter: grayscale(100%);filter:progid:DXImageTransform.Microsoft.BasicImage(graysale=1);}

          將上述代碼添加加到CSS最頂端就可以實(shí)現(xiàn)。

          為了兼容多種瀏覽器標(biāo)準(zhǔn),可以增加一下樣式:

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

          如果網(wǎng)站后臺無法定義CSS樣式,這需要在站點(diǎn)模板頁的head標(biāo)簽中間插入style標(biāo)志位:

          <style>
          html{-webkit-filter: grayscale(100%);}
          </style>

          對于一些老的網(wǎng)站,為了支持該函數(shù)需要修改html標(biāo)頭,將其修改為最新標(biāo)準(zhǔn)標(biāo)頭才可以:對一些使用Flash(不在建議使用)的老站點(diǎn),起顏色可能也不支持CSS濾鏡變灰,則需要在可以在FLASH代碼的<object …>和之間插入:

          <param value="false" name="menu"/>

          <param value="opaque" name="wmode"/>

          Nginx代理

          對于一下沒有辦法修改源站代碼的情況下,也可以在Nginx站點(diǎn)代理無服務(wù)器上,通過sub_filter指令來實(shí)現(xiàn)。

          受限確保nginx支持http_sub_module模塊,如果不支持需要重新編譯安裝Nginx,自愛安裝時(shí)候添加build參數(shù)—with-http_sub_module

          然后在Nginx的http模塊增加如下代碼:

          sub_filter '</head>' '<style type="text/css">html{ -webkit-filter: grayscale(100%);filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);}</style>';sub_filter_once on;

          然后nginx -t測試配置正常無誤

          nginx -s reload 重啟nginx即可


          主站蜘蛛池模板: 99热门精品一区二区三区无码| 亚洲av无码天堂一区二区三区| 韩国一区二区视频| 亚洲日本一区二区| 国产视频一区二区| 久久国产视频一区| 久久一区二区三区99| 亚洲日韩一区精品射精| 日本一区二区三区日本免费 | 无码毛片一区二区三区中文字幕 | 91久久精品午夜一区二区| 亚洲国产AV一区二区三区四区 | 福利一区二区在线| 国产乱码一区二区三区| 亚洲国产精品一区第二页| 日本一区午夜爱爱| 国产一区二区三区亚洲综合| 国产SUV精品一区二区88| 久久se精品一区二区国产 | 国产午夜精品一区二区三区 | 亚洲狠狠狠一区二区三区| 国产精品亚洲专一区二区三区| 在线日产精品一区| 无码一区18禁3D| 风间由美在线亚洲一区| 日韩精品电影一区| 青娱乐国产官网极品一区| 无码精品人妻一区| 夜夜嗨AV一区二区三区| 一区二区三区人妻无码| 在线播放一区二区| 国产精品一区二区资源| 日韩视频一区二区在线观看| 国产成人av一区二区三区不卡| 后入内射国产一区二区| 视频一区二区在线播放| 丰满人妻一区二区三区免费视频| 成人区精品一区二区不卡 | 亚洲成在人天堂一区二区| 久久无码AV一区二区三区| av无码免费一区二区三区|