web-dev-qa-db-fra.com

Prise en charge SVG pour Internet Explorer 8 et inférieur

J'ai créé une animation en flash et l'ai convertie en HTML5 à l'aide de Swiffy .

Je pense que cela utilise SVG pour rendre tout cela; y a-t-il du JavaScript ou un truc pour que IE8 et les suivants le supportent? Mon animation fonctionne bien avec Internet Explorer 9.

Merci!

51
Pennf0lio

Bien qu'aucune option ne soit parfaite, il existe quelques choix:

1.) Adobe a un plugin SVG pour IE8 http://www.iegallery.com/en/addons/detail.aspx?id=444

2.) Le framework JavaScript de Raphael permet la navigation de graphiques vectoriels dans plusieurs navigateurs - http://raphaeljs.com/

3.) Ensuite, il y a les projets Open Source: http://code.google.com/p/svg2vml/ et http://code.google.com/p/svgweb /

4.) Il y a la possibilité d'afficher flash pour IE8 et ci-dessous.

5.) Il y a la possibilité de se dégrader gracieusement pour IE8 et ci-dessous et d'afficher une image statique à la place de l'animation.

Basé sur votre raison pour l'animation - je recommanderais 4 ou 5.

65
Todd Moses

Il y a deux options qui ne vous lieront pas à des frameworks spécifiques (raphael) ou à des solutions compliquées (svgweb):

  1. Chrome Frame: si vous avez une extension, procurez-vous-la
  2. Rastérisation côté serveur: renvoyez votre fichier SVG au serveur, rasterize inkscape au format png, renvoyez-le.

Si vous choisissez le numéro 2 (oui, c’est une option de merde) et que vous souhaitez conserver les parties cliquables et les info-bulles, vous devrez utiliser des divs ou des étiquettes invisibles au format HTML au-dessus du svg rendu.

Vous pouvez réutiliser les informations de positionnement à partir du svg pour positionner ces divs afin d'éviter des frais généraux pour cette partie.

La meilleure option est probablement de les encourager diplomatiquement à utiliser un vrai navigateur, mais ce n'est pas toujours possible pour ceux qui vivent sous la domination d'un département informatique non qualifié;)

1
Morg.