欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

CSS背景色鏤空技術(shù)實際應(yīng)用及進階分享

  發(fā)布時間:2013-10-10 20:40:16   作者:佚名   我要評論
這篇文章主要介紹了CSS背景色鏤空技術(shù)實際應(yīng)用及進階相關(guān)資料,需要的朋友可以參考下
一、背景色鏤空?什么玩意?

其實在10年的時候,3年前我就介紹過背景色鏤空技術(shù),文章名為:“使用CSS實現(xiàn)Photoshop選區(qū)效果及應(yīng)用”。

實現(xiàn)的就是類似下面的效果。虛框是個gif動畫背景,水果圖片1像素鏤空,于是就有效果啦!

不規(guī)則選區(qū)實現(xiàn) 張鑫旭-鑫空間-鑫生活

今天我翻墻逛twitter的時候,見到了這種技術(shù)更為實際的應(yīng)用。

看下圖所示的效果截圖:
twitter上的一些圖標截圖

問題:這些小圖標是如何實現(xiàn)的呢?

當下,我們一般的做法是,打開photoshop,把這些圖標摳出來,然后周邊透明,以用在各種背景上。

然而,twitter的上圖效果是相反的做法,圖標形狀區(qū)域是透明鏤空的,而周邊是實色的。

sprite背景圖

這種實現(xiàn)的優(yōu)點不言而喻,可以很自在得控制小圖標的顏色,而這個控制就是CSS的background-color.

二、background-color與背景圖鏤空技術(shù)

您可以狠狠地點擊這里:背景色鏤空技術(shù)與顏色可控圖標demo

背景色改變,圖標顏色改變demo截圖

Chrome瀏覽器下,有color控件:
Chrome下color控件實現(xiàn)的效果 張鑫旭-鑫空間-鑫生活


復制代碼
代碼如下:

.icon {
display: inline-block;
width: 16px; height: 20px;
background-image: url(sprite_icons.png);
background-color: #34538b; /* 該顏色控制圖標的顏色 */
}
.icon1 { background-position: 0 0; }
.icon2 { background-position: -20px 0; }
.icon3 { background-position: -40px 0; }
.icon4 { background-position: -60px 0; }<i class="icon icon1"></i><a href="##" class="link">返回</a>
<i class="icon icon2"></i><a href="##" class="link">刷新</a>
<i class="icon icon3"></i><a href="##" class="link">收藏</a>
<i class="icon icon4"></i><a href="##" class="link">展開圖片</a>


三、該技術(shù)的局限性

局限性有兩點:

圖標所在的背景色純色,且不會經(jīng)常變化;
只能是純色或者漸變性質(zhì)的圖標可以使用該技術(shù)。
四、自己更進一步改進-color實現(xiàn)
以下為自己的嘗試,還沒有大規(guī)模測試,可能某些國家或某些設(shè)備會有問題,歡迎反饋。

通過background-color控制圖標顏色已經(jīng)非常靈活了,但是,還不是足夠靈活。舉個例子,我希望圖標的顏色直接與后面的文字一致,文字顏色(color)可以直接從父級繼承,但是圖標如果是background-color實現(xiàn),則不能繼承,那能不能使用color實現(xiàn)圖標效果呢?

答案是可以的!

思路如下,使用字符實現(xiàn)實色背景效果;然后,鏤空背景圖覆蓋在上面,于是效果實現(xiàn),over!

腦中常備很多奇怪字符,因此,第一反應(yīng)就是這廝:█,該字符連寫就是個塊狀區(qū)域。“老板,來個糖葫蘆”,██████

我們稍微讓這個字符字號大點,就可以撐滿圖標容器,于是,color實現(xiàn)的偽背景色效果就可以實現(xiàn)了!

一例頂千言,您可以狠狠地點擊這里:背景色鏤空技術(shù)之color屬性實現(xiàn)顏色可控圖標demo

color屬性與顏色可控圖標實現(xiàn)

上面為了單標簽實現(xiàn),所以使用了before與after偽元素,因此,IE8+瀏覽器支持,IE6/IE7瀏覽器醬油中……

目前百度瀏覽研究院的數(shù)據(jù)來看,IE6/IE7以外瀏覽器已超過80%+, 因此,條件允許,這兩個瀏覽器就可以忽略了。

相關(guān)CSS如下:


復制代碼
代碼如下:

.icon {
display: inline-block;
width: 16px; height: 20px;
overflow: hidden;
position: relative;
}
.icon:before {
content: '█';
margin: -5px 0 0 -5px;
font-size: 30px;
position: absolute;
}
.icon:after {
content: '';
display: block;
width: 100%; height: 100%;
background-image: url(sprite_icons.png);
position: relative;
}
.icon1:after { background-position: 0 0; }
.icon2:after { background-position: -20px 0; }
.icon3:after { background-position: -40px 0; }
.icon4:after { background-position: -60px 0; }
.out { color: #34538b; /* 父標簽上的該顏色控制圖標的顏色 */}

如果您希望兼容IE6/IE7瀏覽器,也是可以的,需要多一層標簽,如下:


復制代碼
代碼如下:

<p class="out">
<i class="icon icon1"><s></s>█</i><a href="##" class="link">返回</a>
<i class="icon icon2"><s></s>█</i><a href="##" class="link">刷新</a>
<i class="icon icon3"><s></s>█</i><a href="##" class="link">收藏</a>
<i class="icon icon4"><s></s>█</i><a href="##" class="link">展開圖片</a>
</p>


復制代碼
代碼如下:

.icon {
display: inline-block;
width: 16px; height: 20px;
line-height: 20px;
font-size: 30px;
overflow: hidden;
position: relative;
}
.icon s {
width: 100%; height: 100%;
background-image: url(sprite_icons.png);
position: absolute; left: 0; top: 0;
}
.icon1 s { background-position: 0 0; }
.icon2 s { background-position: -20px 0; }
.icon3 s { background-position: -40px 0; }
.icon4 s { background-position: -60px 0; }
.out { color: #34538b; /* 父標簽上的該顏色控制圖標的顏色 */}

您可以狠狠地點擊這里:背景色鏤空+color屬性實現(xiàn)顏色可控圖標兼容IE6/IE7 demo

下圖為IE7瀏覽器下截圖:

IE7瀏覽器下截圖 張鑫旭-鑫空間-鑫生活

轉(zhuǎn)載請注明來自張鑫旭-鑫空間-鑫生活

相關(guān)文章

  • CSS實現(xiàn)鏤空遮罩效果

    這篇文章主要介紹了CSS實現(xiàn)鏤空遮罩效果,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-08-20
  • 用純CSS實現(xiàn)鏤空效果的示例代碼

    這篇文章主要介紹了用純CSS實現(xiàn)鏤空效果的示例代碼的相關(guān)資料,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-02-25
  • CSS實現(xiàn)鏤空效果的示例代碼

    這篇文章主要介紹了CSS實現(xiàn)鏤空效果的示例代碼的相關(guān)資料,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-12-24
  • CSS3中文字鏤空、透明值、陰影效果設(shè)置示例小結(jié)

    這篇文章主要介紹了CSS中文字鏤空、透明值、陰影效果設(shè)置示例小結(jié),其中通過text-stroke-color透明值的設(shè)置可以讓文字在某些程度上更加柔和,需要的朋友可以參考下
    2016-03-07
  • 使用CSS實現(xiàn)中間鏤空的圖片遮罩效果

    這篇文章主要介紹了使用CSS實現(xiàn)中間鏤空的圖片遮罩效果的方法,文中同時附帶介紹了一個用CSS3實現(xiàn)的鏤空一個圓形的代碼示例,需要的朋友可以參考下
    2015-12-24
  • css3遮罩層鏤空效果的多種實現(xiàn)方法

    這篇文章主要介紹了css3遮罩層鏤空效果的多種實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學
    2020-05-11

最新評論