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

首頁 > 開發(fā) > CSS > 正文

CSS Sprites 技術(shù)分析

2024-07-11 08:39:47
字體:
供稿:網(wǎng)友

CSS Sprites技術(shù)不新鮮,早在2005年 CSS Zengarden 的園主 Dave Shea就在ALA發(fā)表對該技術(shù)的詳細(xì)闡述。原先只在CSS玩家之間作為一種制作方法流傳,后來出來個14 Rules for Faster-Loading Web Sites, 技術(shù)人員之間競相傳閱,其中第一條規(guī)則Make Fewer HTTP Requests就提到CSS Sprites。于是這個小妖精就火了起來,甚至出現(xiàn)了在線生成工具,勢不可擋也。近來國內(nèi)很多blog都提到CSS Sprites,最著名的例子莫過于 http://huoche.7234.cn/images/jb51/dnr2if1gsie.png舉個例子,假如我們有這么一段代碼,

max
代表最大化,
min
代表最小化,我們需要給它們配上相應(yīng)的漂亮圖片(這樣我們的網(wǎng)站才能夠吸引人,才可以賣錢,才可以到佛羅里達(dá)曬太陽:D):

<div class="max">最大化</div>
<div class="min">最小化</div>

這兩個

class
都使用同一個圖片:

.min, .max {
width:16px;
height:16px;
background-image:url(http://huoche.7234.cn/images/jb51/xckfbiddthv.png);
background-repeat: no-repeat; /*我們并不想讓它平鋪*/
text-indent:-999em; /*隱藏文本的一種方法*/
}

效果如下:

最大化
最小化

我們看到一團(tuán)灰,沒錯,因?yàn)槲覀冞€沒有指定

background-position
,默認(rèn)為
0 0
,可以看下sprite.png, 處于這個位置正是灰塊。好了,我們要找到代表最大化的加號和代表最小化的減號的位置找出來。經(jīng)過測量,最大化按鈕位于Y軸的350px處,最小化按鈕位于Y軸400px處。想一想我們?nèi)绾尾拍茏屗鼈兡軌蝻@示出來呢,明顯,要向上提升sprite.png,得到代碼如下:

.max {
background-position: 0 -350px;
}
.min {
background-position: 0 -400px;
}

耶,我們成功了:

最大化
最小化

(注意:為了舉例的方便,本例子直接在HTML內(nèi)置樣式,切勿在實(shí)踐中的非特殊情況使用這種方式)。

優(yōu)點(diǎn)

我們從前面了解到,CSS Sprites為什么突然跑火,跟能夠提升網(wǎng)站性能有關(guān)。顯而易見,這是它的巨大優(yōu)點(diǎn)之一。普通制作方式下的大量圖片,現(xiàn)在合并成一個圖片,大大減少了HTTP的連接數(shù)。HTTP連接數(shù)對網(wǎng)站的加載性能有重要影響。

缺點(diǎn)

至于可維護(hù)性,這是一般雙刃劍。可能有人喜歡,有人不喜歡,因?yàn)槊看蔚膱D片改動都得往這個圖片刪除或添加內(nèi)容,顯得稍微繁瑣。而且算圖片的位置(尤其是這種上千px的圖)也是一件頗為不爽的事情。當(dāng)然,在性能的口號下,這些都是可以克服的。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 天柱县| 高邑县| 体育| 邯郸县| 大竹县| 丽江市| 九龙县| 德兴市| 峡江县| 江孜县| 成武县| 铁岭市| 宁武县| 朝阳县| 定兴县| 朝阳区| 易门县| 安福县| 九龙城区| 承德县| 万山特区| 射阳县| 桃园县| 德保县| 呼伦贝尔市| 荔波县| 奉节县| 昌黎县| 阳原县| 娱乐| 西乌珠穆沁旗| 淳化县| 稻城县| 青浦区| 沂水县| 准格尔旗| 利辛县| 衡阳县| 堆龙德庆县| 景德镇市| 长垣县|