 |
 |
 |
 |
|
|
分類目錄 |
本站日誌 (51)
碎碎唸啦 (173)
網站架設 (84)
程式設計 (161)
軟體使用 (69)
電子商務 (126)
經營奇想 (48)
基金理財 (11)
聰明消費 (87)
電影心得 (47)
開放原碼 (16)
工作記錄 (2)
毛毛小記 (9)
就是不同 (2)
|
|
歷史資料 |
|
|
|
 |
 |
 |
 |
|
 |
 |
 |
 |
October 17, 2005 |
 |
 |
|
[CSS] 預載切換背景圖型的小技巧
因為 Javascript 裡面只有 Image 物件可供預載(Preload)使用,因此一般美工常用 Macromedia 的圖型預載程式裡面並沒有滑鼠移到某個物件上更換背景圖的功能。
而使用 CSS 就可以做到類似預載的功能,但是實際上在滑鼠移過去的時候,瀏灠器還是會做一個下載的動作,並非真正的預載。這部份網路上說明的文件很多,我就不再多說了。
但是畢竟切換背景圖並非真正的預載,在本機可能看不出來,放到主機上很容易有延遲的狀況產生,為了減少這種感覺,有幾個小技巧可以使用。
先做看一下 CSS 原始檔:
#menuLinkLeft a {
display:block; /*這行不加的話,在 Firefox 瀏覽寬度設定會失效 */
width:140px;
height:24px;
line-height:24px;
color: white;
}
#menuLinkLeft a:visited {
color: white;
}
#menuLinkLeft a:hover{
color: white;
background: url(滑鼠移上來的圖型) no-repeat;
text-decoration: none;
}
一般純 CSS 的做法是在 a 標籤上也設定一個 background,當滑鼠移開的時候會顯示這個圖型,但是這樣變成要載入二個圖型,延遲會更嚴重。
這時可以搭配表格 TABLE 標籤,在 TD 上先設好一張預設的 background 底圖,讓瀏覽器只要負責處理 hover 的圖型即可。
(註: Netscape 4.0 不支援)
<table id="Table_01" border="0" cellpadding="0" cellspacing="0">
<tr>
<td background="預設背景圖">
<span id="menuLinkLeft">
<a href="#">連結</a>
</span>
</td>
</tr>
</table>
使用圖型按鈕: (左邊靠下的 Products 選單)
http://xspo.zinfu.com/
使用純文字 + CSS背景圖: (左邊靠下的 Products 的選單)
http://xspo.zinfu.com/demo
如果滑鼠移上去的圖型顏色是單色系的話,可以在 hover 的部份設定 background 色碼,可以減少延遲的感覺。顏色則儘量接近滑鼠移上去的圖型顏色為主,並搭最底圖做調整最佳的色碼。
CSS 範例:
#menuLinkLeft a:hover{
..............
background: 色碼 #A6ACAC url(滑鼠移上來的圖型路徑) no-repeat;
..............
}
希望對大家有幫助,有問題再提出來討論囉。
|
|
|
|
由 Neo 發表於 October 17, 2005 02:58 AM
|
|
|
|
|
 |
 |
 |
 |
Copyright 2005 Neo's Blog All rights reserved.
|