JeuWeb - Crée ton jeu par navigateur
Problème SVG - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Problème SVG (/showthread.php?tid=4894)

Pages : 1 2 3 4


Problème SVG - titnome - 09-06-2010




RE: Problème SVG - Sephi-Chan - 09-06-2010

Ça dépend des navigateurs. Mais déjà, il faut que le serveur rende la page avec Content-Type application/xhtml+xml.


Sephi-Chan


RE: Problème SVG - titnome - 09-06-2010

Le navigateur que j'utilise est Mozilla donc le SVG fonctionne. J'ai oublié de précisé que j'avais testé ma carte avec un fichier externe et ca fonctionnait.

Je change le Content-type pour voir.
Aucun changement. Voici le nouveau code d'entête :
Code PHP :
<?php 
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
>
<
html xmlns="http://www.w3.org/1999/xhtml"
xmlns:svg="http://www.w3.org/2000/svg">
<
head>
<
meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-1" />



RE: Problème SVG - Sephi-Chan - 09-06-2010

C'est le serveur qui doit rendre la page avec ce Content-Type. Ce qui est indiqué dans les balises meta ne fait foi que si la page est consultée hors-connexion.


<?php header('Content-Type: application/xhtml+xml'); ?>
<!-- Entête de la page du moins la partie interessante -->
<!-- Code PHP avant -->
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" >
<html xmlns="http://www.w3.org/1999/xhtml"
xmlnsConfusedvg="http://www.w3.org/2000/svg">
<head>
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-1" />
<!-- Contenu de la page après -->

Par contre, dès lors que tu utiliseras ça, tu devras faire très attention au contenu HTML que tu génères, ce devra être un document XML parfait sous peine de causer une erreur d'interprétation.


Sephi-Chan


RE: Problème SVG - titnome - 09-06-2010

J'ai eu un changement. Les accents n'étaient pas connus. Je les ai donc codés mais maintenant j'ai une erreur :
Code :
Erreur d'analyse XML : mal formé
Emplacement : http://localhost/jeu.php
Numéro de ligne 46, Colonne 6 :
            </?iv>
--------------------------^

A la Ligne 46, Colonne 6 il y a tout simplement une balise </div>
Je vous met le morceau de code en question :
Code :
            <div class="gauche">

                <div class="conteneur" style="margin-right : 0px;">
                </div>
            </div>
La balise qui ne fonctionne pas est a la dernière ligne de ce morceau de code. Le morceau de code est strictement comme ca dans mon fichier. Le div conteneur est pour le moment vide.[/code]


RE: Problème SVG - Sephi-Chan - 09-06-2010

Parce que ton document est mal formé, ce n'est pas du XML valide. Smile
Colle la page rendue entièrement sur http://jeuweb.pastebin.com/, qu'on voit ce qui cloche.
Tu peux aussi tester en copiant le code rendu sur http://validator.w3.org/.


Sephi-Chan


RE: Problème SVG - titnome - 09-06-2010

Voila mon morceau de code sans modification avec le contenu PHP , HTML et CSS.


RE: Problème SVG - Sephi-Chan - 09-06-2010

Au contraire, c'est la page HTML que tout ça t'a généré qu'il nous faut. Smile
Petite suggestion pour la partie PHP de ton document : http://jeuweb.pastebin.com/GTaLerkB (le code expirera le 9 juillet 2010). Ça évite d'être hyper redondant.


Sephi-Chan


RE: Problème SVG - titnome - 09-06-2010

Le nouveau code


RE: Problème SVG - Sephi-Chan - 09-06-2010

En vrac :
  • Tu n'as pas terminé l'entité HTML &copy; (tu as oublié le Wink ;
  • Tu dois définir des attributs alt (même vide) à tes balises img ;
  • Tes attributs d'événements Javascript doivent être entièrement en minuscules (pas de camelCase genre OnKeyUp) ;
  • Il faut virer la balise <center> ;

Bref, il faut rendre ton document valide avec le validateur du W3C http://validator.w3.org/.

Si tout ça ne fonctionne pas, il faudra tenter d'utiliser le namespace svg que tu as défini dans la balise html (pourquoi ne pas l'avoir utilisé puisque tu l'as défini ?) pour les éléments SVG. Il suffit de préfixer toutes les balises (ouvrantes et fermantes) liées à SVG, par exemple <svgConfusedvg version="1.1" .... ></svgConfusedvg>, etc.


Sephi-Chan