2012-06-18 10 views
5

Aşağıdaki kod var ama çalışmak için görünmüyor:Görüntüyü değiştir asp kullanarak: ımagebutton ve CSS?

<td align="center" style="padding-bottom:52.5px"> 
<asp:ImageButton CssClass="RightArrow" ID="Image2" runat="server"  ImageUrl="/_layouts/Right_GrayArrow.png"/> 
</td> 

Ve CSS sınıf vurgulu görüntüyü değiştirmek için:

.RightArrow:hover 
{ 
background-image: url('/_Layouts/Right_GreenArrow.png') !important; 
} 

bildiriniz. Teşekkür

cevap

7

bir ImageButton kontrolleri olma ImageUrl özelliğe sahip bir <input type="image" /> unsuru olarak vermektedir src nitelik gibi: Dolayısıyla

<input type="image" src="/_layouts/Right_GrayArrow.png" /> 

Eğer src görüntü olduğu gibi göremiyorum, hangi bu arka plan resmi başvurduğunuz Üstüne yerleştiriliyor. İsterdim, gerçi bu yöntemi kullanmak için kullanacaksanız

.RightArrow 
{ 
    width: /* width of image */ 
    height: /* height of image */ 
    background-image:url('/_layouts/Right_GrayArrow.png'); 
} 
.RightArrow:hover 
{ 
    background-image: url('/_Layouts/Right_GreenArrow.png'); 
} 

:


1) bir arka plan görüntüsü kullanmak ImageButton değiştirin:

Sen 2 seçenek var Bunun yerine bir <asp:Button /> kullanılması önerilir. Bu bile src öznitelik yararlanarak değilseniz bir <asp:ImageButton /> kullanılarak anlamsız görünüyor.


2) vurgulu görüntüyü değiştirmek için jQuery kullanın:

$(".RightArrow").hover(function(){ 
    $(this).attr("src", "/_Layouts/Right_GreenArrow.png"); 
}, 
function(){ 
    $(this).attr("src", "/_Layouts/Right_GrayArrow.png"); 
}); 

sadece etkin javascript ile çalışacak ve jQuery kütüphanesini içermelidir bu kayda değer.

+0

teşekkürler! İlk seçeneği denedim ve işe alamadım. Bir şeyleri kaçırmış olmalı. İkinci seçenek de oldukça iyi görünüyor! – user1266515

+0

Güncelleme: İlk seçenek çalıştı! Sınıf adımı yanlış yazmıştım. Tekrar teşekkürler! i CSS esnekliğini gibi olsa – user1266515

1

ImageUrl mülkiyet Arka plan resmi ayarı aynı değildir. CSS'yi kaldırın ve sayfanızdaki büyük ve en yüksek özellikleri ayarlayın.

7

bu şekilde tercih:

<asp:ImageButton CssClass="RightArrow" ID="Image2" runat="server" ImageUrl="/_layouts/Right_GrayArrow.png" onmouseover="this.src='/_layouts/Right_GreenArrow.png'" onmouseout="this.src='/_layouts/Right_GrayArrow.png'"/> 

güle

+0

bu bazı durumlarda uygulanabilir bir seçenektir. –

İlgili konular