成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

CSS中的混合模式,制作高級(jí)特效的必備技巧

開發(fā) 前端
在CSS中,有兩個(gè)屬性負(fù)責(zé)混合。mix-blend-mode用于混合DOM元素,background-blend-mode用于組合多個(gè)CSS背景。

本文轉(zhuǎn)載自微信公眾號(hào)「大遷世界」,轉(zhuǎn)載本文請(qǐng)聯(lián)系大遷世界公眾號(hào)。

什么是混合?

根據(jù)維基百科:

數(shù)字圖像編輯和計(jì)算機(jī)圖形中的混合模式(或混合模式)用于確定兩個(gè)圖層如何相互混合。在大多數(shù)應(yīng)用程序中,默認(rèn)的混合模式只是通過用頂層的內(nèi)容覆蓋底層來隱藏底層。

在CSS中,有兩個(gè)屬性負(fù)責(zé)混合。mix-blend-mode用于混合DOM元素,background-blend-mode用于組合多個(gè)CSS背景。

一、進(jìn)入mix-Blend-Mode

1. 基礎(chǔ)范例

我們以一個(gè)基本的例子來看一下它是如何工作的。我的標(biāo)題上方有一個(gè)圓圈。我要做的是將文本與圓混合。

「HTML」

  1. <div class="circle"></div> 
  2. <p>Blend Me</p> 

「CSS」

為文本元素添加了mix-blend-mode: overlay,從而將其與圓混合。

事例源碼:

https://codepen.io/shadeed/pen/a9c6751c0b99d3dbb04fd9514433e09e?editors=0100

2. 帶文字的圖片

我認(rèn)為這是一個(gè)廣泛使用的混合模式。文字在上面,圖片在下面。

在標(biāo)題中添加了以下內(nèi)容:

  1. .hero-title { 
  2.     color: #000; 
  3.     mix-blend-mode: overlay; 

不僅僅是改變混合模式。例如,我們可以通過創(chuàng)建動(dòng)畫來提高創(chuàng)意。

在此示例中,我想探討文本如何與樹葉背景融合。由于圖像中包含暗點(diǎn)和亮點(diǎn),因此在使文本看起來像在每片葉子下移動(dòng)一樣,這將起到非常有用的作用。

事例源碼:

https://codepen.io/shadeed/pen/ef8d675755fde8087d9439b5593e1956?editors=0100

3. 帶有SVG圖形的文本

個(gè)有趣的效果是在帶有矢量和形狀的背景上有一個(gè)標(biāo)題。當(dāng)形狀的顏色不同時(shí),它會(huì)變得更加有趣。

我們能用這些斑點(diǎn)形狀做什么?我使用MorphSVG插件改變每個(gè)博客形狀的路徑。這產(chǎn)生了一個(gè)有趣的結(jié)果。

CSS中的混合模式,制作高級(jí)特效的必備技巧

事例源碼:

https://codepen.io/shadeed/pen/daa6d51bfec15e3cbaef12e8387c97f3?editors=0010

4. 混合真實(shí)元素

吸引我眼球的效果是當(dāng)元素有白色背景和黑色前景使用`mix-blend-mode: screen``。

5. 放大鏡類

我使用了SVG,并對(duì)其應(yīng)用了以下內(nèi)容。注意使用屏幕時(shí)黑色區(qū)域如何變?yōu)橥该鳌?/p>

CSS中的混合模式,制作高級(jí)特效的必備技巧

事例源碼:

https://codepen.io/shadeed/pen/4d309070bd3855c1b87a955ac2cec95e?editors=0100

6. 視頻封面

對(duì)我來說,這是一個(gè)非常有用的用例。我經(jīng)常需要添加播放圖標(biāo)以指示文章中有視頻,因此我最終使用了從中心透明的SVG。

CSS中的混合模式,制作高級(jí)特效的必備技巧 

這聽起來似乎正確,但有一定局限性。如果要添加懸停效果以填充三角形怎么辦?由于在SVG中減去了形狀,因此這是不可能的。一種解決方法是在SVG后面放置一個(gè)圓圈,并在懸停時(shí)對(duì)其進(jìn)行著色。

對(duì)我來說,這還不夠。我也想反過來,三角形必須是白色的,其余的是藍(lán)色的。

多虧了混合模式,我可以通過在懸停時(shí)控制嵌入式SVG快速實(shí)現(xiàn)改效果。

  1. .article__play { 
  2.     mix-blend-mode: screen; 
  3.  
  4. .article:hover .article__play { 
  5.     mix-blend-mode: normal; 
  6.  
  7. .article:hover .article__play { 
  8.     .play__base { 
  9.       fill: #005FFF; 
  10.     } 
  11.      
  12.     .play__icon { 
  13.       fill: #fff; 
  14.     } 
CSS中的混合模式,制作高級(jí)特效的必備技巧

事例源碼:

https://codepen.io/shadeed/pen/e06735fd2d2fd707a37f2c4804379342?editors=0100

7. 儲(chǔ)值卡

另一種情況是使用裁切圖像并將其與其下方的背景融合,結(jié)果非常有趣。

  1. img { 
  2.     position: absolute; 
  3.     right: -15px; 
  4.     top: 0; 
  5.     width: 110px; 
  6.     mix-blend-mode: screen; 

這個(gè)想法是把圖片放在右邊,左邊有標(biāo)題和描述。

同樣,通過為每張卡添加多個(gè)背景可以更好:

CSS中的混合模式,制作高級(jí)特效的必備技巧

事例源碼:

https://codepen.io/shadeed/pen/a30f4ac9af6c6ec87a30f63deb2fc2c5?editors=1000

8. 從徽標(biāo)背景中刪除白色

我在Photoshop的早期就知道這個(gè)技巧。有時(shí),我需要一個(gè)品牌的標(biāo)志,它是很難得到一個(gè)透明的PNG版本。使用混合模式,這很容易解決。

我模擬了Facebook和Amazon徽標(biāo),并在每個(gè)徽標(biāo)下添加了白色背景。

5a1d791c39202c95ec5.jpg" target="_blank">5a1d791c39202c95ec5.jpg" width="auto" border="0" height="auto" alt="" title="">

現(xiàn)在來解決這個(gè)問題,添加了以下CSS:

  1. img { 
  2.     mix-blend-mode: multiply; 
  3.     filter: contrast(2); 

注意,我添加了filter: contrast(2)來增加徽標(biāo)的對(duì)比度。應(yīng)用混合效果使他們比原來的顏色深一點(diǎn)。

問題已解決!當(dāng)然,我不建議使用此功能。但是,如果我被迫這么做,我將使用它來節(jié)省時(shí)間,當(dāng)原始徽標(biāo)到達(dá)時(shí),我可以替換它并消除混合效果。

事例源碼:

https://codepen.io/shadeed/pen/c8d0b773adf24901319794bda90d6a4e?editors=0100

9. Isolation

isolation CSS屬性定義該元素是否必須創(chuàng)建一個(gè)新的層疊上下文(stacking context)。

該屬性的主要作用是當(dāng)和background-blend-mode屬性一起使用時(shí),可以只混合一個(gè)指定元素棧的背景:它允許使一組元素從它們后面的背景中獨(dú)立出來,只混合這組元素的背景。

「html」

  1. <div> 
  2.   <span>CSS is Awesome</span> 
  3. </div> 

「css」

  1. div { 
  2.   isolation: isolate; /* Creates a new stacking context */ 
  3.  
  4. span { 
  5.     mix-blend-mode: difference; 
CSS中的混合模式,制作高級(jí)特效的必備技巧

如你所見,文本“ CSS很棒”僅在其父代的邊界內(nèi)融合。外面的東西不會(huì)混在一起。換句話說,它是孤立的。

事例源碼:

https://codepen.io/shadeed/pen/3b84bf8730ae27563f983e036f96aacb?editors=1100

isolation 可以通過使用創(chuàng)建新的堆棧上下文的屬性來實(shí)現(xiàn)。例如,如果父元素具有opacity 屬性,這將影響結(jié)果。

「html」

  1. <div> 
  2.   <img src="cake.jpg" alt=""> 
  3. </div> 

「css」

  1. div { 
  2.   opacity: 0.99; /* Creates a new stacking context, which result to an isolated group */ 
  3.  
  4. img { 
  5.   mix-blend-mode: difference; 

事例源碼:

https://codepen.io/shadeed/pen/b6fcced3fba405846b2e93779282f3cb?editors=0100

二、進(jìn)入Background-Blend-Mode

它的工作方式類似mix-blend-mode,但具有多個(gè)背景圖像。每個(gè)背景可以有自己的混合模式,舉個(gè)例子。

CSS中的混合模式,制作高級(jí)特效的必備技巧

在此示例中,將三層混合在一起:基礎(chǔ)圖像,實(shí)心填充(Solid Fill)和漸變填充(radient Fill.)。

  1. .elem { 
  2.     background: linear-gradient(45deg, #000 10%, transparent), 
  3.               linear-gradient(#3754C7, #3754C7), 
  4.               url(nature.jpg); 
  5.   background-size: cover; 
  6.   background-blend-mode: overlay, color; 

在CSS中,應(yīng)該以正確的方式對(duì)每個(gè)背景進(jìn)行排序。堆疊順序從上到下,如上圖所示。

CSS中的混合模式,制作高級(jí)特效的必備技巧

事例源碼:

https://codepen.io/shadeed/pen/b4351fd10c5ff1e0a5b210f87c1040cd?editors=1100

1. 著色圖像

通過使用徑向梯度,有一些有趣的結(jié)果比有用。這個(gè)想法是添加一個(gè)彩色的圖像,使它與它混合。

  1. :root { 
  2.   --color: #000; 
  3.   --size: 250px; /* Gradient Size */ 
  4.  
  5. .elem-1 { 
  6.   background: radial-gradient(circle var(--size) at center, transparent, var(--color)), 
  7.               url(nature.jpg); 
CSS中的混合模式,制作高級(jí)特效的必備技巧

通過對(duì)元素應(yīng)用background-blend-mode: color,結(jié)果是圖像的去飽和版本。

事例源碼:

https://codepen.io/shadeed/pen/3779d5b0ab6e013487638492573739f8

2. 「瀏覽器支持」

 

 

CSS中的混合模式,制作高級(jí)特效的必備技巧

 

 

 

 

責(zé)任編輯:趙寧寧 來源: 大遷世界
相關(guān)推薦

2024-01-07 20:14:18

CSS開發(fā)工具

2023-07-24 15:24:00

前端CSS 技巧

2022-05-05 10:35:20

IT領(lǐng)域IT領(lǐng)導(dǎo)者

2021-11-04 10:29:01

CSS前端

2012-05-24 11:03:55

HTML5

2024-03-07 12:08:02

Podkubernetes容器

2024-03-15 08:50:08

CSS3@keyframes動(dòng)畫制作

2020-03-04 10:27:17

GitGo語言云計(jì)算

2017-03-01 15:38:01

混合云模式正確

2021-09-28 08:26:06

CSS 技巧文字鏤空波浪

2011-05-27 11:01:10

DreamweaverCSS

2013-04-10 09:28:24

CSS3CSS

2011-09-19 15:01:31

vistaAero特效

2022-04-12 07:37:08

CSS滾動(dòng)視差效果前端

2023-02-13 15:09:01

開發(fā)webCSS技巧

2010-09-07 13:10:48

CSS樣式表CSS

2022-09-01 06:54:28

CSS前端

2010-08-31 13:14:41

CSSoverflow

2023-03-06 09:20:33

CSS顏色混合

2015-05-22 09:30:49

混合云數(shù)據(jù)遷移虛擬服務(wù)器
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 久久综合久久自在自线精品自 | 国产精品揄拍一区二区久久国内亚洲精 | 国产精品地址 | 啪一啪 | 人人射人人草 | 亚洲精品国产a久久久久久 午夜影院网站 | 国产精品久久欧美久久一区 | 国产精品久久久久久久久久免费 | www.国产一区| 亚洲视频在线看 | 色就是色欧美 | 手机看片在线播放 | 国产色婷婷精品综合在线播放 | 亚洲成人播放器 | 亚洲美女av网站 | 日韩成人一区二区 | 亚洲国产网址 | 亚洲国产精品成人综合久久久 | 精品一级毛片 | 国产在线1| 国产精品中文字幕在线播放 | 欧美一级在线 | 你懂的在线视频播放 | a视频在线观看 | 日韩欧美精品一区 | 99影视| 在线看免费| 黄色毛片在线播放 | 国产精品黄视频 | 亚洲欧美在线观看 | 成人免费一区二区 | 成人在线一区二区 | 欧美成人精品 | 中文字幕在线观看第一页 | 热99精品视频 | 91视频网 | 精品日韩在线 | 日韩一级 | 日韩精品三区 | 在线观看视频一区 | 一区二区久久精品 |