文字帶上漸變色,或者說讓文字透出圖片。這些效果 CSS 屬性也可以完成。
方法一、利用CSS3屬性mix-blend-mode:lighten;實現
使用 mix-blend-mode 能夠輕易實現,我們只需要構造出黑色文字,白色底色的文字 div ,疊加上圖片,再運用 mix-blend-mode 即可,簡單原理如下:

核心代碼如下:
<div class="container"> <div class="pic"></div> <div class="text">IMAGE</div> </div>
.pic { position: relative; width: 100%; height: 100%; background: url($img); background-repeat: no-repeat; background-size: cover; } .text { position: absolute; width:100%; height:100%; color: #000; mix-blend-mode: lighten; background-color: #fff; }
方法二、-webkit-background-clip:text;
使用了這個屬性的意思是,以區塊內的文字作為裁剪區域向外裁剪,文字的背景即為區塊的背景,文字之外的區域都將被裁剪掉。
<div class="pic2"> image </div>
.pic2{ width: 500px; height: 500px; margin: 40px auto; background: url("1.jpg") no-repeat center center; background-size: cover; font-size: 120px; font-weight: bold; text-align: center; line-height: 500px; /*很重要*/ -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
缺點:只支持webkit內核的瀏覽器,兼容性差。
