filter: grayscale(%);设置灰色遮罩层后,怎样让头像颜色不受灰色遮罩层影响?
生活随笔
收集整理的這篇文章主要介紹了
filter: grayscale(%);设置灰色遮罩层后,怎样让头像颜色不受灰色遮罩层影响?
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
如何實現(xiàn)想要實現(xiàn)用戶頭像顏色不變,其余地方顯示灰色遮罩層這種效果呢?
1. 首先就要把給整篇文檔添加filter: grayscale(%);這種方法給摒棄掉(雖然這個方法真的很快也很簡單)
2. 使用backdrop-filter做個遮罩層
以下是用此方法實現(xiàn)的效果
實現(xiàn)前效果
實現(xiàn)后效果
解題思路:
2.1 filter作用于:元素的本身,意思是:給某個元素添加filter,作用于當前元素,并且它的后代元素也會繼承這個屬性(自己和后代都會改變)
2.2 backdrop-filter:可以讓一個元素后面區(qū)域添加圖形效果(如模糊或顏色偏移)。 它適用于元素背后的所有元素。(只有后代會改變,自己不變)
3.1 都可以實現(xiàn)遮罩層效果
代碼實現(xiàn):
2.1 css部分中,重點強調(diào)html的偽元素是作為子元素的存在所以子絕父相要設(shè)置(子元素是壓在父元素上顯示,這個要用定位來做)
2.2 backdrop-filter: grayscale(95%);此方法實現(xiàn)的遮罩層,再添提高層級,下面的元素會無法點擊(交互失敗)pointer-events: none;是用來解決點擊失效的方法
2.3 然后再找到頭像部分,核心點就是提高層級(要比遮罩層的層級高),那么就要把頭像部分添加個定位,因為z-index只能用在定位元素身上,這樣就可以實現(xiàn)頭像部分不受遮罩層影響的效果了。
(希望我的思路能幫助到有此困惑的朋友)
總結(jié)
以上是生活随笔為你收集整理的filter: grayscale(%);设置灰色遮罩层后,怎样让头像颜色不受灰色遮罩层影响?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: OkHttp完美封装,用一行代码搞定外部
- 下一篇: git下载速度慢解决方案汇总(git慢,