Home » CSS

自訂網頁中的滑鼠游標

筆者在修改滑鼠游標中有提到如何修改自訂的滑鼠游標,一開始也以為 FireFox 並不支援,不過經網友提到說是可支援時,就也去看了文件,發現確實是沒問題的。所以就來跟大家分享交流一下心得!

網頁中滑鼠要用自訂的游標的話,就要把 cursor 的值設為 url(游標檔路徑) 才行。而 cursor 的屬性值有18種之多:autocrosshairdefaulthandmovehelpwaittextw-resizes-resizen-resizee-resizene-resizesw-resizese-resizenw-resizepointerurl。常用的大多是:defaulthandpointerurl 等。

全部的效果可以參考範例網頁:http://demonstration.abgne.tw/css/0002/css-cursor.html

其中 handpointer 都是一樣的手指狀,不過 pointer 才是標準的用法, hand 應該是只有 IE 才認得!

在範例網頁中,除了最後二格的滑鼠是 Wii 的形狀外,其它的都是內建的造型,看起來應該是蠻不顯眼的。另外若是用 FireFox 來瀏覽的話,是不支援 url 屬性值的!

css-cursor

雖然並不是全部瀏覽器都支援,但我們的重點還是在 cursorurl 屬性上!url() 中要放的是滑鼠游標的檔案路徑

這邊我準備了四個不同的滑鼠游標

wii檔案位置:http://demonstration.abgne.tw/css/0002/wii.ani
select檔案位置:http://demonstration.abgne.tw/css/0002/select.ani
point檔案位置:http://demonstration.abgne.tw/css/0002/point.cur
link檔案位置:http://demonstration.abgne.tw/css/0002/link.cur
其中的 ani 游標算是動態的,而 cur 游標算是靜態的。(如要使用請利用:滑鼠遊標包下載)

讓我們先直接來看個範例吧:

1
<div id="mouse">這是 IE 滑鼠游標的範例</div>

先在 Body 中放置一個 Div 區塊來做滑鼠游標的改變

1
2
3
4
5
6
#mouse{
    width:300px;
    height:300px;
    border:1px solid black;
    cursor:url(wii.ani);
}

指定了 Div 區塊的寬高及邊框,並把它的滑鼠游標改成自訂的,接著就能看效果了

自訂網頁中的滑鼠游標-1

Div 區塊中的滑鼠游標就變成我們自訂的了。

不過若是用 FireFox 來瀏覽的話,會發現到並沒有任何的效果,ㄟ~難道是 FireFox 不支援嗎?非也非也!

W3C 的 Spec 中的解釋,若是要用 url(游標檔路徑) 的方式的話,則要像 font-family 這些屬性一樣,要多放幾個備用的游標。假如第一個指定的游標不存在或是不支援時,還能用其它的游標,當然系統預設的游標是一定會有的。

因此,不管是在 IE 或是 FireFox 中,若要用自訂游標的話,就得再多設幾個備用的游標。

那現在我們只要稍稍修改一下就能在 FireFox 中用自訂的游標了

1
2
3
4
5
6
#mouse{
    width:300px;
    height:300px;
    border:1px solid black;
    cursor:url(point.cur), default;
}

當自訂的游標不存在或是不支援時,我們就再指定一個 default 的游標,接著看 FireFox 是否有改變囉

自訂網頁中的滑鼠游標-2

嘿~現在 FireFox 也能用自訂的游標囉。

不過,FireFox 好像不支援 ani動態游標,若是用 gif 檔來當動態游標的話,是支援 gif檔,不過不會有動畫的效果。另外,雖然 FireFox 能支援像是 gif 檔或是 png 檔來當游標,但換 IE 不支援了

範例瀏覽:
http://demonstration.abgne.tw/css/0002/0002_1.html
http://demonstration.abgne.tw/css/0002/0002_2.html
http://demonstration.abgne.tw/css/0002/0002_3.html

23 筆針對 自訂網頁中的滑鼠游標 的迴響

  1. 請問老師,因為我的比較少(短),所以我是用了設定滑鼠圖示,也成功解決了需要全螢幕使用自訂滑鼠圖示,感謝。
    目前若是滑鼠移到可以點選的選單或是選項,滑鼠會回歸初始的手指頭圖示,若是每個連結或是選單自定CLASS應該是有辦法解決,但是還是想請教一下,是否有辦法在那邊設定,只要是選單或是連結的地方,他可以變成自訂滑鼠圖示,就如老師做的這樣^^"

    • 你可以把選單外部的區塊..例如是 div 設個 class
      然後就用 css 的方式來設定..例如 div.a .menu {...}

  2. 我想問一下是我製好的cur滑鼠可以到哪去上傳然後取得像下列這樣的網址http://demonstration.abgne.tw/css/0002/0002_1.html
    後;在Dreamwaver裡加入語法後或是不需使用語法使用然後呈現在網站上???

發表迴響