Tipo di mime corretto per immagini SVG con font incorporati


168

Questo è il solito tipo mime SVG:

image/svg+xml

E funziona benissimo. Tuttavia, quando si incorpora un font SVG, chrome ti dice che il tipo mime non è corretto, ovviamente perché restituisci un font anziché un'immagine.

Esiste un tipo mime universale? Chrome è sbagliato? è application/svg+xmlaccettato in qualche modo?

Immagino che questa sia ancora un'area grigia in HTML5 ma qualcuno qui potrebbe saperlo.

Risposte:


213

C'è solo una MediaType registrato per SVG, e questo è quello che avete elencato, image/svg+xml. Ovviamente puoi anche servire SVG come XML, anche se i browser tendono a comportarsi diversamente in alcuni scenari, ad esempio ho visto casi in cui SVG utilizzato negli sfondi CSS non viene visualizzato a meno che non venga servito con il image/svg+xmlmediatype.


1
Suppongo che l'avvertimento sia lì per l'essenza della purezza, font/svg+xmltuttavia al momento non esiste alcun tipo di media registrato simile o simile (in teoria qualsiasi tipo di media che termina +xmldovrebbe funzionare purché il contenuto svg sia corretto). Se Chrome (o i webkittens) vogliono spingere per un nuovo mediatype solo per i caratteri svg, non ho ancora visto una richiesta simile nella mailing list www-svg.
Erik Dahlström,

2
Come un FYI per chiunque legga questa catena ora - non sembra che Chrome emetta più un avviso per il mimetype quando consegna un font SVG con il mimetype 'image / svg + xml'
Robert Petz

Ho un'estensione google chrome che utilizza sfondi SVG. A partire da Chrome 38, gli sfondi improvvisamente si sono rotti e ora devo rilasciare una nuova versione per risolverlo (non ho idea di come, ecco perché sono qui!)
AlexStack,

@AlexStack che non sembra correlato a questa risposta, si prega di inviare una nuova domanda, o meglio ancora - presentare un bugreport su crbug.com con un test completo.
Erik Dahlström,

@ ErikDahlström: Opera basata su Presto non esegue il rendering di served caratteri serviti con un tipo mime di immagine.
user2284570
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.