2012-10-13 26 views
15

Tôi có một hình ảnh CSS nhỏ đẹp mà cần phải là một nút. Tôi đã thử khoảng 20 phương pháp khác nhau, không có phương pháp nào hoạt động. Tôi chỉ nhận được một trống không có gì hoặc một biên giới không có gì bên trong.Tôi làm cách nào để tạo hình ảnh <input type = "submit" />?

Các html: http://lrroberts0122.github.com/DWS/lab6/level-2/

Hình ảnh: http://lrroberts0122.github.com/DWS/lab6/level-2/images/button.png

CSS: http://lrroberts0122.github.com/DWS/lab6/level-2/css/main.css

tôi không thể thay đổi nó để "submit" vì những lý do nào đó, vì vậy tôi cần phải tìm ra cách để làm cho công việc này với CSS. Cảm ơn sự giúp đỡ của bạn!

+2

IMO mà trông giống như một biểu ngữ hơn một nút. Tôi sẽ không mong đợi để gửi bất cứ điều gì. – Jan

Trả lời

25
input[type=submit] { 
    background: url(http://lrroberts0122.github.com/DWS/lab6/level-2/images/button.png); 
    border: 0; 
    display: block; 
    height: _the_image_height; 
    width: _the_image_width; 
} 
+0

Wow cảm ơn bạn.Tôi đã không bao gồm hiển thị: khối, mặc dù tôi thề tôi đã có tại một số điểm và nó đã không hoạt động. Điều này đang làm việc tuyệt vời bây giờ, cảm ơn bạn. : D – Lindsay

+0

bạn được chào đón :) –

29

Sử dụng hình ảnh nút gửi: (. Tôi sẽ không sử dụng hình ảnh cho thấy snailmail khi thiết lập một hình thức trực tuyến, nhưng có lẽ có một số lý do để tạo ra các hiệp hội như vậy)

<input type=image src=button.png alt="Submit feedback"> 

+4

Làm thế nào đến không ai đã upvoted câu trả lời này chưa? '' chính xác là những gì OP muốn, +1. – duri

0

Bạn có thể ghi đè kiểu được trình duyệt đưa ra cho nút.

Ví dụ này thêm vào css của bạn hiện các trick cho tôi (trên Chrome):

.controls input { 
    background: url(' http://lrroberts0122.github.com/DWS/lab6/level-2/images/button.png') -411px -540px no-repeat; 
    width: 199px; 
    height: 109px; 
    border: none; 
} 

Nhưng thực sự nếu bạn đang không sử dụng css của trình duyệt cho các nút, bạn nên có lẽ không sử dụng <input type='submit'> và chỉ cần chèn hình ảnh (thông qua một thẻ <img src="" /> hoặc <div> với hình ảnh làm nền) và đính kèm trình nghe nhấp chuột vào đó.

Ví dụ:

Các html:

<div class="controls"> 
    <img src="/yourimage.png" /> 
</div> 

Các javascript (giả sử bạn sử dụng jQuery):

$('.controls img').click(function(){... stuff to do...}); 
1

HTML:

<lable>From css class</lable><input class="input" onclick="alert('clicked')" type="button" value="" /><br/> 
<lable>From HTML tag</lable> 
<input type="button" style="background:url(http://cdn.sstatic.net/stackexchange/img/favicon.ico);" onclick="alert('clicked')"/> 

CSS:

.btn{ 
    display: inline-block; 
background:url(http://cdn.sstatic.net/stackexchange/img/favicon.ico); 
    position: relative; 
    border-radius: 5px; 
} 
.input{ 
    background: transparent; 
    color: #fff; 
    border: 0; 
    padding-right: 20px; 
    cursor: pointer; 
    position: relative; 
    padding: 5px 20px 5px 5px; 
    z-index: 1; 
} 

JS Fiddle:http://jsfiddle.net/AJNnZ/26/

0

Một cách khác đó là loại hackish là này (sử dụng jQuery):

<div onclick="$(this).parent('form').submit();"></div> 

Sau đó, bạn phong cách div của bạn bất kỳ cách nào bạn như.

1

đơn giản và dễ dàng để làm cho một thẻ đầu vào như một hình ảnh

<input type="submit" value="" style="background-image: url('images/img.png'); border:none; background-repeat:no-repeat;background-size:100% 100%;"> 
Các vấn đề liên quan