2009-09-15 35 views
9

Tôi đang sử dụng asp: Hyperlink để hiển thị hình ảnh được liên kết động dựa trên các thông số trong URL. Tôi cần để có thể thêm một lớp CSS để img rendered, và không thể tìm ra cách để làm điều đó.Áp dụng lớp CSS cho hình ảnh trong asp: Hyperlink?

Tôi biết tôi có thể thêm "CssClass =" blah "" vào asp: Hyperlink, nhưng trong HTML được hiển thị, chỉ nhận được lớp css. Như thế này:

<a href="assets/images/blah.jpg" class="blah" id="ctl00_LeftContent_alternateImage4"> 
<img style="border-width: 0px;" src="assets/images/blahThumbnail.jpg"/> 
</a> 

tôi đã tìm thấy another question cho phép tôi để thêm phong cách nội tuyến để điều khiển, nhưng tôi muốn thêm vào một lớp học để các img asp rằng: Hyperlink tạo ra.

Có thể làm điều gì đó tương tự như câu trả lời này:

myControl.Attributes.Add("style", "color:red"); 

Giống như, có lẽ ?:

myControl.img.Attributes.Add("class", "blah"); 

Trả lời

11

Dường như bạn đang sử dụng thuộc tính ImageUrl của HyperLink. Tôi sẽ khuyên bạn nên tạo sự kiểm soát hình ảnh bên trong một cách rõ ràng:

+0

tuyệt vời! cảm ơn, đây chính xác là những gì tôi cần –

2

Chỉ cần sử dụng CssClass="blah" mã như bạn đã cố gắng, nhưng sau đó trong file css của bạn :

.blah img {border-width: 0px;} 

Mục tiêu đó img thẻ bên trong elem ents với lớp học .blah.

+0

tôi cần phải cụ thể hơn-- đó là không phải là tôi cần phải thêm phong cách cho img, mà câu trả lời của bạn chắc chắn sẽ cho tôi làm, đó là tôi đang cố gắng để nhắm mục tiêu hình ảnh đó dựa trên lớp học của nó với javascript –

0

Bạn có thể thử một cái gì đó tương tự như sau:

HyperLink1.Attributes("onmouseover") = "this.firstChild.src='Images/MouseOver.jpg'" 
0

Mở rộng @jrummell câu trả lời:

Nếu hình ảnh của bạn được thêm động trong mã đằng sau , bạn có thể thực hiện tương tự như sau:

<% (lnkImage.Controls[0] as Image).CssClass = "some-class"; %> 
Các vấn đề liên quan