2013-01-01 33 views
2

可能重複:
Hit detection on non-transparent pixel如何忽略圖像的透明像素?

#welc是透明的PNG。非透明像素像條帶一樣對角放置,因此大部分圖像(左上角和右下角部分)都是透明的。

#welc:hover{ 
    margin-top:-5px; 
} 

這工作,但我想這種效果只有當鼠標移動到「實像」,即在非透明像素。

+0

請注意,更改元素位置時,它是一個壞主意。 –

+0

@JanDvorak,你能解釋一下嗎? – Alegro

+0

如果你移動一個元素,當它移動時,這個移動可能會導致元素不能被徘徊,這會將元素移回原來的位置,這會導致它徘徊... –

回答

2

您可以使用圖像遮罩遮擋不透明區域,並且只在光標位於遮罩上時應用懸停。我不知道這是否是跨瀏覽器的安全解決方案。

+0

AFAIR,圖像映射本身已經存在,因爲時間的黎明。我也假設蒙版可以「懸停」。 –

+0

這將需要相當多的圖像處理來獲取像素值,如果它不是靜態的,並且是圖像地圖的一個地獄(像素級映射...) –

+0

@PaulSullivan希望圖像是靜態的,圖像圖可以是手動生產。從描述來看,情況似乎如此。 –