国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > CSS > 正文

CSS Sprite從大圖中截取小圖完整教程

2024-07-11 08:30:15
字體:
來源:轉載
供稿:網友

相信很多喜歡研究網頁界面的童鞋都遇到過一個奇妙的現象:網頁中很多圖片素材被合成在一張圖片上。

起初小菜模仿網站的時候,經常遇到這個現象,那時候也不知道這時什么技術,人家的整張圖片素材不會利用,只能用ps切圖,切成單個的再用。。。

其實,這是一個非常簡單的技術,就是因為想象的太難了,才一直找不到問題的關鍵。

要想實現CSS摳圖,只需要用到一個屬性:background-position。

按照字面理解,這個屬性就是背景定位,先看看google網站的素材圖,如下:

假如小菜現在想做一個+1按鈕,利用上邊的素材圖,普通狀態顯示A圖,鼠標移上去顯示后顯示B圖,實現這么一個動態效果。

按鈕是用來實現功能的,一般是用超鏈接響應單擊事件,但是不能把背景圖直接加在超鏈接上,那樣就不叫樣式啦,因為超鏈接的文本長度變化時,樣式也變了。

地球人一般的做法是,div里邊套一個超鏈接,超鏈接負責實現功能,div負責裝載背景圖。html結構如下:


復制代碼
代碼如下:
<div class="btn">
<a href="<a href="http://www.survivalescaperooms.com">+1</a">http://www.survivalescaperooms.com">+1</a</a>>
</div>

有了html骨架,接下來就要寫css樣式啦。

假如我們什么都不考慮,直接把整張圖片設為背景,樣式如下:


復制代碼
代碼如下:
.btn{
background:url(bg.png);
}

效果如圖:

div是塊級元素,默認是占一行的,這個先不用關心,但看到背景圖重復了,這顯然不是我們想要的,加上background-repeat:no-repeat;屬性,改進樣式如下:


復制代碼
代碼如下:
.btn{
background:url(bg.png);
background-repeat:no-repeat;
}

這樣就不重復了。

div可以理解成一個矩形框,它的左上角是頂點,背景圖片的頂點也是左上角,div加載背景圖時,會把兩個頂點重合,頂點的坐標是(0,0)。不理解的看圖,很簡單的。。。

+1的小圖片混雜在大圖中,想提取出來,需要用background-position屬性,這個屬性相當于大圖片不動,把div的頂點進行移動,移動到目標小圖的頂點位置,如下圖:

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 济阳县| 伽师县| 金乡县| 醴陵市| 万全县| 社旗县| 泾阳县| 嘉兴市| 荆州市| 秀山| 房山区| 湖口县| 胶州市| 虹口区| 高要市| 耿马| 隆子县| 道孚县| 舞钢市| 邛崃市| 永定县| 金乡县| 盐边县| 嘉鱼县| 马龙县| 长丰县| 凤山县| 留坝县| 正宁县| 临江市| 太和县| 蒙阴县| 军事| 天台县| 广安市| 汾阳市| 托里县| 武强县| 蕉岭县| 华宁县| 武隆县|