Tipo MIME correto para imagens SVG com fontes incorporadas

168

Este é o tipo mime SVG usual:

image/svg+xml

E funciona muito bem. No entanto, ao incorporar uma fonte SVG, o chrome informa que o tipo mime está incorreto, obviamente porque você retorna uma fonte em vez de uma imagem.

Existe algum tipo de mímica universal? o chrome está errado? é application/svg+xmlaceito de alguma forma?

Acho que essa ainda é uma área cinzenta no HTML5, mas alguém aqui deve saber.

cmplieger
fonte

Respostas:

213

Há apenas um tipo de mídia registrado para SVG, e foi o que você listou image/svg+xml. É claro que você também pode servir SVG como XML, embora os navegadores tendam a se comportar de maneira diferente em alguns cenários, se você o fizer, por exemplo, eu vi casos em que o SVG usado em fundos CSS falha na exibição, a menos que seja servido com o tipo de image/svg+xmlmídia.

Erik Dahlström
fonte
1
Suponho que o aviso esteja lá por uma questão de pureza, font/svg+xmlno entanto , não existe um tipo de mídia registrado semelhante ou similar no momento (em teoria, qualquer tipo de mídia que termine com +xmldeve funcionar enquanto o conteúdo svg estiver correto). Se o Chrome (ou os webkittens) quiser pressionar por um novo tipo de mídia apenas para fontes svg, ainda não vi essa solicitação na lista de discussão www-svg.
Erik Dahlström
2
Como um FYI para quem lê essa cadeia agora - não parece Chrome lança um aviso para o mimetype mais quando entregar uma fonte SVG com os '/ SVG + imagem XML' mimetype
Robert Petz
Eu tenho uma extensão do google chrome que usa fundos SVG. A partir do Chrome 38, os fundos, de repente quebrou e agora eu tenho que lançar uma nova versão de correção (nenhuma idéia de como, porém, é por isso que eu estou aqui!)
AlexStack
@AlexStack que parece não ter relação com esta resposta, poste uma nova pergunta ou, melhor ainda - registre um relatório de erros em crbug.com com uma caixa de teste completa.
Erik Dahlström
@ ErikDahlström: O Opera baseado em Presto não renderiza fontes servidas com um tipo de mímica de imagem.
usar o seguinte comando