2014-10-07 30 views
7

Nói một cách đơn giản, tôi có một đồ họa SVG được nhúng trong HTML từ chối hiển thị trong Safari (mặc dù nó hoạt động tốt trong Chrome, Firefox và các trình duyệt khác).SVG không hiển thị trong thẻ img trong Safari

Tôi đang sử dụng đánh dấu sau đây để thực hiện điều này:

<img alt="grapefruit logo" src="/assets/better-gf-logo_red.svg" /> 

Dưới đây là một liên kết trực tiếp đến trang nơi SVG không hiển thị. Biểu trưng trái cây ở góc trên cùng bên trái không hiển thị trong Safari: https://grapefruit.cs.rpi.edu/.

Tôi đã xác minh dòng sau cũng có mặt trong nginx tôi mime.types:

image/svg+xml       svg svgz; 

Tuy nhiên, tôi biết rằng vấn đề này có lẽ không liên quan đến kiểu MIME, kể từ SVG không xuất hiện trong Safari trên máy phát triển của tôi (hoặc tôi đã thử nghiệm một số máy chủ web). Tôi cũng đã thử hiển thị SVG file itself trong Safari và có vẻ ổn. Phần tử hình ảnh có kích thước và mô hình hộp phù hợp, nhưng nó không hiển thị bất kỳ nội dung nào.

Trả lời

14

Chỉ ra rằng <img src="image.svg"> sẽ không hoạt động trong Safari, tôi đã thử sử dụng <object> và hoạt động. Cung cấp cho một thử này: jsBin demo

<object 
    type="image/svg+xml" 
    height="70" 
    width="150" 
    data="/assets/better-gf-logo_red.svg"> 
</object> 

https://developer.mozilla.org/en-US/docs/Web/HTML/Element/object

+1

Cảm ơn rất nhiều! Tôi không biết Safari có vấn đề gì với thẻ '' đang được sử dụng cho SVG, không có nhiều tài liệu trực tuyến. – element119

+0

@autibyte hãy xem câu trả lời của Meuwka –

+1

Tôi tự hỏi nếu nội dung PNG của svg có thể là nguyên nhân thực sự của sự cố trong Safari. Hình ảnh svg khác trong ví dụ của @meuwka http://jsbin.com/kayiwe/ có hoạt động trong Safari không? –

2

Trước hết hình ảnh của bạn không phải là SVG
bạn có thể mở nó trong một trình soạn thảo văn bản và xem - đó là PNG (không vector) chỉ lưu lại dưới dạng SVG

... width="1640" height="422" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgA... 

check here http://jsbin.com/kayiwe/

+1

+1 Đáng kinh ngạc tôi đã không nhận thấy điều đó :) –

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