flex, swf et firefox

HTML5, CSS3, Javascript, support des mobiles... Que penser de votre site ? Vous manquez d'informations pour la construction d'un site qui puisse s'afficher correctement partout ? C'est un problème simple, un peu complexe ? Venez ici !
Invité

flex, swf et firefox

Message par Invité »

Je réalise ma homepage en flex ces temps-ci et je suis confronté à un problème.
J'ai voulu rendre valide aux normes W3c le fichier html sortie de FlexBuilder (j'utilise FlexBuilder 2).
J'ai donc modifié pour que cela soit compatible avec Xhtml 1.0 transitional (pour commencer) et j'ai constaté que ma nouvelle page avec la déclaration est lisible sur Safari (je suis sur Mac à la base) et sur IE. Mais que Firefox (2 et même 3 bêta) m'affiche qu'un bandeau de faible hauteur avec des scrolling bars comme si le 100% en height avait disparu et que j'avais 200 pixels en hauteur. Quant à Opera, c'est simple, il n'affiche rien.
En retirant la première balise (celle de la déclaration), tout devient ok sur Firefox et Opera aussi. Par contre, il est clair, sans déclaration, ma page n'est plus du tout valide.
La balise en question:
Action Script

Code : Tout sélectionner

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

Vous pouvez comparer les 3 résultats (voir code source):

1/ tout est ok pour tous les navigateurs; la page index.html sans la balise de déclaration mais qui ne passe pas la validation (celle que j'ai gardé pour le home page):
http://www.vincenwoo.com

début de l'index.html:
Action Script

Code : Tout sélectionner

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
// etc.... 


2/ avec la 1er balise de déclaration (ça passe le validator w3c). Mais avec Firefox qui m'affiche un bandeau avec scrollbars. Opera affiche un gros blanc. (à tester avec ces 2 navigateurs)à
http://www.vincenwoo.com/index_nofirefox.html

début de l'index.html:
Action Script

Code : Tout sélectionner

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
// etc.... 
3/ juste le code html édité par FlexBuilder 2 brut de coffre. Tous les navigateurs sont ok, par contre rien n'est valide.
http://www.vincenwoo.com/index_flex.html

début de l'index.html:
Action Script

Code : Tout sélectionner

<!-- saved from url=(0014)about:internet --> 
<html lang="en"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
// etc.... 
J'avoue avoir fait des tests, mais je n'ai toujours pas résolu ce problème lié à Firefox (et Opera).

J'ai continué mes recherches et j'ai constaté également que vous pouvez mettre la déclaration à condition que la valeur width ne soit pas en pourcentage mais en pixel (en gros, dès qu'il y a 100%, j'ai mon bandeau, dès que je mets une valeur en pixel -800-). Il y aucun problème de ce côté avec la avec la valeur width. Et ça, quelque soit le code.

J'ai parcouru le forum et je sais que les problèmes entre Firefox et Flash ont toujours été courant. Mais en général rien ne s'affiche.



Message envoyé avec : Mozilla/5.0 (Macintosh; U; Intel Mac OS X; fr) AppleWebKit/523.12.2 (KHTML, like Gecko) Version/3.0.4 Safari/523.12.2
Avatar de l’utilisateur
jpj
Animal mythique
Messages : 25261
Inscription : 01 août 2005, 15:38

Message par jpj »

Bonjour,

Je déplace dans "Développement web".
► Si votre problème est [Résolu], svp, marquez-le.
► Pas de support par mp, l’aide se fait sur le forum.
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

Je ne comprend pas trop pourquoi tu voudrais respecter les standards pour le html alors que tu utilises flex/flash qui ne sont pas du tout des standards dans le sens "ouverts"... mais admettons ! :lol:

Alors ton XHTML, c'est très bien, mais garde à l'esprit que tu l'envoies en indiquant text/html au navigateur, qui voit donc tous les /> comme des erreurs. CF http://hixie.ch/advocacy/xhtml.fr/

Pour le reste malheureusement je ne sais pas trop :roll:
vincenwoo
Arias
Messages : 1
Inscription : 19 févr. 2008, 14:16

Message par vincenwoo »

Merci d'avoir répondu, calimo.
Finalement, pour que cela soit compatible avec Firefox (et opera), j'ai donné une valeur en pixel (800 et pas 100%). J'ai changé la couleur de fond pour l'édition du code html dans flex et dans l'index.html qui correspond au jaune du dégradé. L'astuce fait que tout est invisible sauf quand le swf ouvre une window (on peut voir la bande jaune en bas sur un grand écran).

Tout à fait d'accord, avec ta première remarque, mais autant le faire que justement ne rien faire. :)
Le but essentiel est toujours d'avoir un site lisible par tous les navigateurs.

Quant à ton lien, c'est un peu toujours le même problème. Je suis allé sur le site du type qui avait fait la traduction. Il y a une rubrique sur ses références. Résultat: tous les sites qu'il a réalisé en 2007 ont une intégration flash avec une balise meta -content="text/html-. :/ Et son site perso est illisible sur Safari (ok pour Firefox, Opera, IE) :p (heu, j'espère que ce n'est pas toi...)

Remerci, calimo. j'ai appris des trucs. C'est l'essentiel.:)

Le site lisible sur firefox sans déclaration est maintenant: http://www.vincenwoo.com/index_nodeclaration.html
Mais cela reste toujours un mystère, ce bandeau et cette incompatibilité avec Firefox. (c'est peut-être dû à un réglage dans Flexbuilder à la base...) J'ai testé pourtant tous les divers codes valides d'un swf avec Firefox.

Si je trouve la soluce un jour, j'interviendrai à nouveau dans ce post.
C'est marrant l'annotation en dessous. je changerai de navigateur à chaque message.lol

Message envoyé avec : Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.4; fr; rv:1.9b1) Gecko/2007110903 Firefox/3.0b1
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 3 invités