經典CSS顏色混合模式

                                                         轉自:http://www.webhek.com/css-blend-mode/css

 

注意:只有使用最新版的谷歌瀏覽器、火狐瀏覽器,才能正確的顯示本文中的演示。css3

Photoshop裏最沒有用處的一種功能——但也有人說是使其超出競爭對手的一種功能——就是混合模式(blend mode)。混合模式是指兩個像素點疊落到一塊兒,用不一樣的方法混合它們的顏色。好比,darken顏色混合模式,就是選擇兩個像素中顏色更深的一個輸出。當將混合模式運用到整張圖片上時,會產生讓人驚訝的效果。web

雖然並非Adobe的Photoshop發明了混合模式,但它的實現效果是最真實的。可如今,你不須要使用Photoshop來運用混合模式美化你的圖片,由於CSS3裏提供裏動態的實現這種效果的方法。瀏覽器

瀏覽器支持狀況

作爲CSS3的新特徵之一,各類瀏覽器對background-blend-mode屬性的支持狀況還在改進中。對於早期的瀏覽器,須要在CSS裏使用瀏覽器引擎前綴,或激活實驗性設置。根據caniuse.com報告顯示,Firefox 30,Chrome 35,Opera 22都是已經支持這個特徵。wordpress

雖然IE如今仍然沒有實現對混合模式的支持,但混合模式是一種很是好的提升頁面美觀的工具,咱們能夠考慮在頁面中使用它。工具

background-blend-mode的用法

CSS3裏提供了大量的混合模式的用法,但對於咱們來講最有用處的一種用法是使用background-blend-mode。這個屬性能讓咱們混合兩張圖片或混合一個圖片和一種背景色。性能

在下面的演示中咱們將使用以下代碼:url

<div class="blend lazy "></div>

使用的CSS:spa

.blend
{ width:782px; height:540px; background:#3db6b8 url("lighthouse.jpg") no-repeat center center; }

下面咱們就能夠添加混合模式效果了。3d

咱們須要添加另一個CSS類,好比對於「multiply」模式:

<div class="blend multiply lazy "></div>

而後咱們再寫一個CSS規則:

.blend.multiply
 { background-blend-mode: multiply; }

Multiply 正片疊底

Multiply 正片疊底, 正如名稱示意的,用混合顏色來增重基色,產生一種更深的顏色。用黑色正片疊底的結果是黑色,用白色正片疊底的結果是圖片沒有任何變化。

background-blend-mode: multiply;
 

Screen 濾色

Screen 濾色是兩個像素色的逆向正片疊底。濾色和正片疊底正好相反,使用白色進行慮色會產生白色,使用黑色慮色的結果是圖像沒有變化。

background-blend-mode: screen;
 

Overlay 疊加

Overlay 疊加是一種複雜的混合模式。顏色變深的程度依賴於基色:淺色變的更淺,深色變得更深。

background-blend-mode: overlay;
 

Darken 變暗

Darken 變暗, 讓圖片更暗。它會選擇使用兩個重疊的像素中顏色更深的那個。

background-blend-mode: darken;
 

Lighten 變亮

跟變暗相反,lighten 變亮模式會選擇另個疊加的像素中顏色較輕的那個。

background-blend-mode: lighten;
 

Color dodge 顏色減淡

Color dodge 顏色減淡減少對比度使基色變亮以反映混合色。

background-blend-mode: color-dodge;
 

Color burn 顏色加深

Color burn 顏色加深 跟顏色減淡相反,經過增長對比度使基色變暗以反映混合色。

background-blend-mode: color-burn;
 

Hard light 強光模式

Hard light 強光模式「強光」模式將產生一種強光照射的效果。若是「混合色」顏色「基色」顏色的像素更亮一些,那麼「結果色」顏色將更亮;若是「混合色」顏色比「基色」顏色的像素更暗一些,那麼「結果色」將更暗。

background-blend-mode: hard-light;
 

Soft light 柔光模式

Soft light 柔光模式跟強光模式相似,「柔光」模式會產生一種柔光照射的效果。若是「混合色」顏色比「基色顏色的像素更亮一些,那麼「結果色」將更亮;若是「混合色」顏色比「基色」顏色的像素更暗一些,那麼「結果色」顏色將更暗,使圖像的亮度反差增大。

background-blend-mode: soft-light;
 

Difference 差值模式

Difference 差值模式 「差值」模式是將從圖像中「基色」顏色的亮度值減去「混合色」顏色的亮度值,若是結果爲負,則取正值,產生反相效果。因爲黑色的亮度值爲0,白色的亮度值爲255,所以用黑色着色不會產生任何影響,用白色着色則產生被着色的原始像素顏色的反相。

background-blend-mode: difference;
 

Exclusion 排除模式

Exclusion 排除模式與「差值」模式類似,可是具備高對比度和低飽和度的特色。比用「差值」模式得到的顏色要柔和、更明亮一些。

background-blend-mode: exclusion;
 

Hue 色相模式

Hue 色相模式只用「混合色」顏色的色相值進行着色,而使飽和度和亮度值保持不變。當「基色」顏色與「混合色」顏色的色相值不一樣時,才能使用描繪顏色進行着色

background-blend-mode: hue;
 

Saturation 飽和度模式

Saturation 飽和度模式, 「飽和度」模式的做用方式與「色相」模式類似,它只用「混合色」顏色的飽和度值進行着色,而使色相值和亮度值保持不變。當「基色」顏色與「混合色」顏色的飽和度值不一樣時,才能使用描繪顏色進行着色處理

background-blend-mode: saturation;
 

Color 顏色模式

Color 顏色模式可以使用「混合色」顏色的飽和度值和色相值同時進行着色,而使「基色」顏色的亮度值保持不變。「顏色」模式模式能夠當作是「飽合度」模式和「色相」模式的綜合效果。該模式可以使灰色圖像的陰影或輪廓透過着色的顏色顯示出來,產生某種色彩化的效果。

background-blend-mode: color;
 

Luminosity 亮度模式

Luminosity 亮度模式可以使用「混合色」顏色的亮度值進行着色,而保持「基色」顏色的飽和度和色相數值不變。其實就是用「基色」中的「色相」和「飽和度」以及「混合色」的亮度建立「結果色」。此模式建立的效果是與「顏色」模式建立的效果相反

background-blend-mode: luminosity;
 

CSS3

相關文章
相關標籤/搜索