2012-12-22 28 views
6

Tôi đang sử dụng biểu tượng SVG trên trang web và trong hầu hết các trình duyệt, nó hoạt động tốt. Tuy nhiên, trên một số phiên bản IE và trên trình duyệt di động, hình ảnh hiển thị dưới dạng hộp hình ảnh không thành công. Có cách nào tôi có thể sử dụng JS hoặc một số thư viện (tốt nhất là jQuery) để kiểm tra khả năng tương thích SVG với số tiền ít nhất của âm tính giả, và chỉ cần chuyển sang một phiên bản .png của hình ảnh? trang webTôi có thể sử dụng JS hoặc jQuery để kiểm tra xem hình ảnh SVG đã được tải chưa?

là thế này: http://zero31b.x10.mx/samote, và những hình ảnh SVG là chút màu xanh thế giới thứ

+0

https://gist.github.com/3202087 là một cách. (Nó yêu cầu JavaScript, mặc dù.) Tôi tìm thấy nó bằng cách tìm kiếm "svg với png dự phòng". – Ryan

+2

Tại nơi làm việc, chúng tôi sử dụng thành công modernizr - http://modernizr.com/ cho việc này. –

+0

Nhân tiện, bạn có nhận thấy SVG của mình là 30 kB không? –

Trả lời

0

Tavmjong Bah đã có bài viết tổng hợp về SVG và PNG dự phòng:

http://tavmjong.free.fr/SVG/BUTTON_TEST/button_test.html

Mã đơn giản nhất anh/cô ấy cung cấp là

<img src="buttonA.svg" alt="A sample SVG button." 
     onerror="this.removeAttribute('onerror'); this.src='buttonA.png'"/> 

Nhưng nếu bạn có nhiều tính năng bạn phải thử nghiệm cho mình thì có thể xem xét phiên bản modernizr.

Để tạo png-Phiên bản của bạn SVG-Nút madrobby trên github khuyến sử dụng librsvg-chuyển đổi

+0

Liên kết xung quanh hình ảnh có thực sự cần thiết không? –

+0

no! tôi sẽ xóa nó! – bjelli

Các vấn đề liên quan